You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mathematical libraries are the foundation of most scientific computing applications. They provide optimized, scalable implementations of key algorithms such as solvers, transforms, and discretizations that allow applications to leverage the performance of modern hardware while maintaining numerical accuracy and reproducibility.
When selecting a math library from the E4S ecosystem, users should consider their problem domain, the computational architecture they target, and the development and runtime environments in which they operate. The following attributes can help newcomers and experienced developers alike identify which math library (or combination of libraries) best fits their needs.
Example prompt:
"I am developing a simulation that requires solving large sparse linear systems on NVIDIA GPUs using mixed-precision arithmetic. The code is written in C++ and must support MPI-based distributed memory parallelism. Suggest E4S math libraries that provide GPU-accelerated solvers and support mixed precision."
Broadly Meaningful Attributes for Math Libraries
Attribute
Description
Problem type
The mathematical problem addressed, such as linear systems, eigenvalue problems, nonlinear equations, optimization, or PDEs.
Current library use
Listing libraries you already use can influence advice to use compatible libraries.
Data structure support
Types of data layouts and structures supported (dense, sparse, block, hierarchical, etc.).
Precision support
Floating-point and mixed-precision capabilities (e.g., FP64, FP32, BF16, FP16).