next up previous

6.2 The Scientific Software Library CMSSL

CMSSL is the Connection Machine Scientific Software Library and it consists of numerical routines optimized for data parallel execution. Using the CMSSL is also a means of getting better performance out of the CM-5. The routines in CMSSL fall under the following categories: basic linear algebra subroutines, communication primitives, fast Fourier transforms, random number generators, and statistical analysis.

Currently, CMSSL can be accessed only by CM Fortran programs. Examples can be found in /usr/examples/cmssl. In order to use the CMSSL, you should include the header file /usr/include/cm/cmssl-cmf.h in your program and link it with the cmsslcm5 library. If you also want to use the vector units, then link with cmsslcm5vu.

If myprog.fcm is a CM Fortran program that calls CMSSL routines, then it can be compiled and linked for execution with the vector units as follows:

cmf myprog.fcm -lcmsslcm5vu -o myprog

Even if the program does not explicitly call CMSSL routines, the CM Fortran compiler attempts to make use of the CMSSL and the vector units whenever possible for faster execution.