![]() |
![]() |
|
|
|
Parallel Software Products provide the freely available communications library CAPLib which is used in conjunction with ParaWise. CAPLib is a high level generic communication library developed by Parallel Software Products Inc. The CAPLib calls map onto the low level communication calls of either machine specific communications such as Cray SHMEM or onto communication libraries such as MPI or PVM. This allows the generated parallel code to be easily (and quickly) ported from one machine or communication library to another simply by linking in the appropriate CAPLib library. CAPLib may also be easily adapted for use with any other communication library or low level communications, that is available now or in the future. Compiling, configuring and running parallel jobs on parallel systems can be a complex and fraught task. Compilation for parallel execution often requires the passing of additional specific arguments to the compiler and in addition parallel computers may require a complex configuration by the user in order to submit a job. Parallel execution procedures also vary from one system to another and even within different parallel environments on the same system. For example, PVM and MPI use very different methods for job initialization. It is therefore a generally time consuming process learning how to execute and run parallel jobs on different parallel systems. The complexity of the parallel environment can also lead to user mistakes in compilation and job submission, resulting in the user wasting time and effort re-compiling or re-submitting jobs. This can deter users from using parallel systems all together. Users running parallel jobs or developing parallel code, cycling through the edit/compile/run/compare-with-serial development cycle, maybe on several different machines, require a consistent and generic interface to all aspects of using the parallel system. CAPLib provides this functionality and is freely available from our Downloads page.
|