The C programming language
Advanced programming in the UNIX environment
Advanced programming in the UNIX environment
Solaris multithreaded programming guide
Solaris multithreaded programming guide
Threads primer: a guide to multithreaded programming
Threads primer: a guide to multithreaded programming
Programming with threads
Composing and executing parallel data-flow graphs with shell pipes
Proceedings of the 4th Workshop on Workflows in Support of Large-Scale Science
Hi-index | 0.00 |
The parallel pipe PAR_PIPE is a communication mechanism. Data which are written to the PAR_PIPE by a single process can be read by multiple processes concurrently in first-in-first-out manner, where all reading processes read the entire data stream. We use a dynamic partitioned buffer limited in size only by available hardware resources to ensure that the writing process cannot be blocked because of slow reading processes. In a further step we examine how far caching with an optimized saving policy on top of the file based buffer can improve the performance of the PAR_PIPE. Design and implementation of two versions of the PAR_PIPE (one without caching, one with caching) are described. We outline the general advantages of the PAR_PIPE over conventional UNIX shell script solutions and evaluate the results of performance measurements done for both PAR_PIPE versions.