Title :
A common library interface to shared-memory multiprocessors
Author :
Crowl, Lawrence A.
Author_Institution :
Dept. of Comput. Sci., Oregon State Univ., Corvallis, OR, USA
Abstract :
In writing a highly-portable parallel program, we developed a library of parallel primitives to shield our application code from the various multiprocessors. Rather than adapt the different multiprocessors to a program-specific library via extensive implementation, we chose to first find a common ´intersection´ of the virtual machine models provided by each vendor, define a common interface to that model, and then develop our application based on that model. This paper describes the resulting common virtual machine model and a library interface to that model. We have implementations for that model on seven different shared-memory multiprocessors, and two different uniprocessors. Each implementation averages less than 100 lines of code. The common virtual machine model requires more programming effort than any one vendor´s library, but the resulting program executes reasonably efficiently on all machines.<>
Keywords :
parallel programming; shared memory systems; software portability; subroutines; virtual machines; application code shielding; common library interface; highly-portable parallel program; parallel primitives; program execution efficiency; programming effort; shared-memory multiprocessors; uniprocessors; virtual machine models;
Conference_Titel :
System Sciences, 1994. Proceedings of the Twenty-Seventh Hawaii International Conference on
Conference_Location :
Wailea, HI, USA
Print_ISBN :
0-8186-5090-7
DOI :
10.1109/HICSS.1994.323223