A C software module has been developed that creates lightweight processes (LWPs) dynamically to achieve parallel computing performance in a variety of engineering simulation and analysis applications to support NASA and DoD project tasks. The required interface between the module and the application it supports is simple, minimal and almost completely transparent to the user applications, and it can achieve nearly ideal computing speed-up on multi-CPU engineering workstations of all operating system platforms. The module can be integrated into an existing application (C, C++, Fortran and others) either as part of a compiled module or as a dynamically linked library (DLL).
This software has the following major advantages over existing commercial and public domain software of similar functionality.
- It is especially applicable to and powerful on commercially, widely available, multi-CPU engineering workstations;
- It has a very simple software architecture and user interface and can be quickly integrated into an existing application; and
- Its code size is very small, and its performance overhead is minimal, resulting in nearly ideal parallel-computing performance for many computing-intensive scientific and engineering applications.
The approach adopted in this technology development does not require any additional hardware and software beyond what’s typically available on any commercial engineering workstations, that is a native operating system and C, C++ or FORTRAN compilers that an application needs.