SimuliCore v0.3.0 (2026-03-26)
CLA3P Module
New Features
- Enhanced Pardiso Integration:
- CSR matrices now supported in Full and Upper storage formats
- Improved sparse linear system solver capabilities
- Template-Based Validation: Outer checks modernized with meta classes for compile-time optimization
Improvements
- Code Quality:
- Type aliases used consistently throughout
- Removed obsolete comments
- Enhanced virtual expression system maintenance
- Additional validation in outer product operations
- Updated namespace usage and syntax
- Documentation:
- Fixed bind parameter documentation
- Updated syntax documentation
- Improved example programs clarity
Bug Fixes
- Enhanced dimension checking using meta classes in
mult_dim_check() - Improved property validation code
cuLite Module
New Features
-
Eigenvalue Decomposition (GEEV):
- Full eigenvalue/eigenvector computation for general matrices
- Support for eigenvalues-only and full eigenpair computation
- LapackGeev proxy functions for CPU-based operations
- Dedicated cuSolver proxy file for eigenvalue operations
-
Virtual Expression System:
- Lazy evaluation for GPU matrices and vectors
- Virtual row vector, conjugate, transpose operations
- Virtual arithmetic operations (+, -, *,scaling)
- Outer product virtual expressions
- Constructor support for virtual expressions
- Transpose and conjugate-transpose members for sparse matrices
-
Functional Algebra Operations (via
culite::opsnamespace):- Inner product (dot, dotc)
- Vector addition and scaling (axpy)
- Matrix-vector/matrix-matrix multiplication (symmetric/Hermitian support)
- Outer product operations (ger, gerc, syr, her)
- Rank-1 updates for symmetric/Hermitian matrices
- Functional update operations for dense and sparse matrices
- Diagonal matrix-vector multiplication for CSX matrices
-
Sparse Matrix Operations:
- Custom CSX addition kernels
- Host-device copy operations for CSR matrices
- Inner and outer algebra operators for sparse matrices
-
cuBLAS Handler Enhancements:
copy(),dotc(),axpy()membersger(),gerc(),syr(),her()for rank-1 updates
Improvements
- Documentation:
- Comprehensive Doxygen documentation for modules
- Enhanced update operations documentation
- Fixed various documentation references
- Code Organization:
- Extracted legacy cuSPARSE proxies to separate file
- Improved visibility control for virtual expressions
- Enhanced dns1D code structure
- Utilities:
- Added
memSetZero()utility for GPU memory initialization - Complex number arithmetic operators (+, -)
- Added
Bug Fixes
- Fixed compilation error in
operator>>()for stream operations - Fixed CuSolver GEEV implementation issues
- Added const casts to fix cuSPARSE proxy compilation issues
- Resolved virtual expression conflicts
- Fixed argument handling in update operations
API Changes
- Modified
add()function argument lists for consistency - Enhanced operator support for update operations (+=, -=, *=)
- Added multiplication operators for matrix-vector and matrix-matrix operations