Report on ICOT

Mark E. Stickel
June 9, 1992

next previous contents
Full exploration of the capabilities and limitations of a concurrent logic program-
ming approach demanded that everything be written in KL1 as a research method-
ology. After writing out as much information and developing as many programming 
techniques as we can this way, I think that acceptance of KL1 in the marketplace will 
be enhanced if KL1 procedures can be combined with procedures in other languages. 
This could save the cost of rewriting in KL1 procedures already available in other lan-
guages. Also, sometimes performance can be significantly improved by rewriting small 
portions of systems in a lower-level language. The performance loss of the heavily used 
unification algorithm written in KL1 in nonground MGTP suggests a case in which 
performance could be improved substantially. 

ICOT also created experimental hardware to support parallel symbolic processing. 
However, the wave of language-specific processors seems to have crested and past. In 
the LISP world as well as the Prolog and logic programming world, there now seems to 
be little interest in special processors. While language-specific processors can certainly 
deliver superior performance compared to general-purpose processors, less money and 
resources are available for their development than for general-purpose processors. De-
velopment costs of specialized processors must be spread over a much smaller market, 
often rendering them uncompetitively expensive. The revenues generated by a mass-
marketed general-purpose processor can provide funds to improve its performance even 
on tasks for which it somewhat ill-suited, enough to ultimately become competitive with 
specialized processors. 

The lack of commercial appeal of ICOT's prototype Parallel Inference Machines 
(PIMs) is a direct result of the decision to use specialized processors. In this respect, 
the hardware group was asked to play a supporting role in the project by provid-
ing hardware designed around ICOT's software research effort instead of designing 
machines with wider appeal by using more standard processors. ICOT succeeded in 
building machines with hundreds of powerful processors and achieved the goal of build-
ing a machine delivering 100 megalips of performance. No more suitable machine for 
ICOT's work is available: the specialized processors do provide a performance gain for 
KL1 over standard processors, and other large MIMD processors aren't really quite 
available yet. PIMS and the earlier Multi-PSI machines provided the necessary testbed 
for ICOT's research, providing high performance, reliability, and availability. 

I think the widespread propagation of the technology that ICOT has developed 
depends on porting it to commercially popular architectures. KL1 should be ported 
to standard processors. Standard, commercially available large multiprocessors don't 
exist yet, but ICOT's system and application software should be ported to run on 
them when they do. Besides providing the software ICOT developed, ICOT should 
find some means of instructing others in the programming methodologies they used to 
write huge systems using KL1. 


					- 114 -