This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Architectural Support for Goal Management in Flat Concurrent Prolog
August 1992 (vol. 25 no. 8)
pp. 34-47

A special-purpose architectural support that reduces the goal-management execution time in flat concurrent Prolog (FCP) is described. The architectural support consists of a dedicated goal-management unit that executes high-level goal-management operations concurrently with goal-reduction operations. The efficient execution of goal-management instructions is realized using a goal cache that stores recently spawned goals. It is shown that operations such as goal-switching, spawning, and halting are efficiently performed by changing their status in the goal cache. More complex operations, such as goal suspension and activation are decoupled from goal reduction by using two suspension tables and activation queues. Using an analytic performance model, it is shown that, for the systems development workload, which consists of large FCP programs, the overhead of software-implemented goal management is 50% of the program execution time. This is reduced up to 3% using the goal-management unit and the goal cache, resulting in a speedup of almost 2. The results are generalized for other workloads that exhibit different goal-management complexities.

Citation:
Leon Alkalaj, Tomás Lang, Milos D. Ercegovac, "Architectural Support for Goal Management in Flat Concurrent Prolog," Computer, vol. 25, no. 8, pp. 34-47, Aug. 1992, doi:10.1109/2.153282
Usage of this product signifies your acceptance of the Terms of Use.