Home News About Software Contact
Main Page Image

C++ Libraries for Scientific Software Development

New Release

Version Now Available


We are pleased to announce the release of version , now available for download. This patch release delivers focused improvements to both and modules. gains a new LapackSyev eigensolver for symmetric and Hermitian eigenvalue decomposition, VirtualStrided support for referencing dense matrix diagonals, and a comprehensive header restructuring that organizes all internal include paths into dedicated subdirectories. introduces dense object fill operations, extended cuSOLVER support, a new GridXD utility class for GPU kernel launch configuration, and stabilized SVD and GEEV implementations. Handler implementations have been moved from header-only to compiled translation units with explicit specializations, significantly reducing build times. Bug fixes address complex SVD correctness and complex_t arithmetic operators across both modules. Complete documentation and updated API references are available.

Release History

About


is a suite of C++11 libraries engineered for advanced scientific and computational development. While traditional functional programming frameworks provide the high-performance capabilities necessary for production-level code, they often present a steep learning curve characterized by exhaustive documentation and overly complex API argument structures. is designed to bridge the gap between these established legacy frameworks and modern object-oriented paradigms, delivering a streamlined development experience without compromising on efficiency, robustness, or performance.

Features


The objective of this project is to develop a suite of dedicated, parallel, and portable C++ libraries featuring a streamlined and intuitive API to simplify the development process. The project targets the following computational areas:

The suite provides a complete vector and matrix algebra framework, encompassing dense and sparse formats with their corresponding linear solvers. A preliminary implementation for low-rank matrices is currently available. Additionally, an initial version of the GPU-accelerated library has been released, with the distributed computing library currently in development and scheduled for inclusion in future releases of the suite.

Software


(Compact Linear Algebra Parallel Portable Package) a high-performance linear algebra library that leverages advanced object-oriented programming (OOP) design patterns. Its intuitive API is engineered to facilitate the development of high-quality code with minimal overhead and effort.

Documentation

is a lightweight C++ interface built upon and libraries, engineered to simplify linear algebra GPU computations on accelerators. The current release includes fundamental memory management, vector and matrix handling on GPU architectures, and now features eigenvalue decomposition capabilities, a sophisticated virtual expression system for lazy evaluation, and an extensive functional algebra API supporting inner products, outer products, and symmetric/Hermitian matrix operations. As an add-on to , adheres to the same design patterns, enabling streamlined GPU development while maintaining the intuitive interface and robust numerical framework provided by the underlying library.

Documentation

(Compact Message Passing Interface) a modern C++ interface engineered to simplify distributed computing and inter-node communication significantly. Currently in the development phase, is scheduled for release as an integral component of the suite.

Documentation

Download

The source code for is hosted on GitHub, where you can also find comprehensive build and installation instructions. Detailed build guides, dependency requirements, and configuration options are provided in the repository's documentation.

GitHub Download

Contact


Have questions, feedback, or want to report an issue? Reach out to us directly via email or through our GitHub repository. We welcome bug reports, feature requests, and contributions from the community.