Performance Results for an Implementation of the Process Coordination Language K2
Claus Amann · 1999
This paper is on process coordination language K2 which is based on a variant of high-level Petri nets. It strictly separates the speci- cation of processes and their communication structures from (functional) specications of the computations to be performed by the processes. The purpose of this separation is to facilitate both correct program construc- tion and formal reasoning about essential safety and liveness properties. More specically, the paper presents and analyzes performance measure- ments obtained from a K2 implementation based on the message passing system PVM. Two simple K2 benchmark programs are to determine the overhead inflicted by the K2 runtime system relative to a direct PVM implementation of the same programs. A third benchmark program, the implementation of a relaxation algorithm for the solution of PDEs, is to investigate the eciency of distributing some given workload on a multi- processor system by recursively expanding process (sub-)structures. The measurements show that coarse-grain K2 programs are only marginally slower than their PVM counterparts, and that good scalability of recur- sive programs can be achieved on multiple computing sites.