IMSL® C Numerical Library key features
Flexible and powerful data mining/forecasting functionality
Extensive statistical functionality
Comprehensive mathematical functionality
SMP and GPU high performance technology
The IMSL C Library, the world's standard mathematical and statistical C Library, is designed to take advantage of symmetric multiprocessor (SMP) systems.
IMSL C Library enables customers to take advantage of multicore and many-core hardware for improved performance. Numerous algorithms leverage OpenMP directives on supported environments to distribute calculations across available resources.
The IMSL C Library also leverages hardware vendor supplied SMP functionality.
The IMSL C Library offloads CPU work to NVIDIA GPU hardware where the CUDA BLAS library is utilized. Users with supported hardware will be able to link the IMSL C Library with CUDA BLAS to gain significant performance improvements for many linear algebra functions. The calling sequences for IMSL functions are untouched, so there is no learning curve and users can be productive immediately.
The IMSL C Library is thread-safe
Author thread-safe implementations with IMSL C. This feature leverages existing hardware investments and allows developers to produce applications capable of faster throughput. With this capability, the IMSL C Library can be confidently integrated into web and database servers in which multiple threads are used to handle multiple independent computations. IMSL C thread-safe features are based on the OpenMP industry standard.
Cost-effectiveness and value
IMSL C Library significantly shortens program development time and promotes standardization. Variable argument lists have been implemented to simplify calling sequences. Using IMSL C Library saves up to 95 percent of source code development and thousands of dollars in the design, development, documentation, testing, and maintenance of your application.
Intuitive programming: accurate, robust, and reliable
IMSL C Library uses descriptive, explanatory function names for intuitive programming allowing developers to be more productive. Reserved function names begin with prefixes unique to each product. Where appropriate, consistent variable names are used to:
Diagnostic error handling
Diagnostic error messages are clear and informative - designed to convey the error condition and to suggest corrective action when appropriate. These error-handling features: