Tailoring Functional Units and Memory in a High Performance
A.K. Singhal, Yale N. Patt · 1989
We describe PLUM, a Prolog machine with multiple specialized functional units and memory ports that operate in parallel using data driven control. Unification parallelism is exploited by multiple Unification Units. Bookkeeping operations, such as choicepoint and environment manipulation, are executed by special functional units in parallel with unification. The performance of the system is limited mainly by the time spent on unification operations. By exploiting paralielism among bookkeeping and unification operations, we estimate that PLUM can achieve a speedup of at least a factor of 4 over the Berkeley PLM assuming the same cycle time.