VSL is a V library to develop Artificial Intelligence and High-Performance Scientific Computations.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Visit VSL Documentation to explore all supported features and APIs.
VSL is a comprehensive Scientific Computing Library offering a rich ecosystem of mathematical and computational modules. The library provides both pure-V implementations and optional high-performance backends through established C and Fortran libraries.
- Linear Algebra: Complete matrix and vector operations, eigenvalue decomposition, linear solvers
- Machine Learning: Clustering algorithms (K-means), classification (KNN), regression, and NLP tools
- Numerical Methods: Differentiation, integration, root finding, polynomial operations
- Data Visualization: Advanced plotting with Plotly-style API supporting 2D/3D charts
- Scientific Computing: FFT, statistical analysis, probability distributions
- Parallel Computing: MPI support and OpenCL acceleration
- Data I/O: HDF5 integration for scientific data formats
VSL provides flexible performance options:
- Pure V Implementation: Cross-platform, dependency-free operation
- Optimized Backends: Optional integration with OpenBLAS, LAPACK, and MPI
- GPU Acceleration: OpenCL support for computationally intensive operations
Each module clearly documents compilation flags and backend requirements, allowing users to choose the optimal configuration for their specific use case.
VSL supports multiple installation methods and deployment options to fit different development workflows.
Via V's built-in package manager:
v install vsl
Via vpkg:
vpkg get https://github.com/vlang/vsl
For the best development experience with all optional dependencies pre-configured:
-
Install Docker on your system
-
Clone the starter template:
git clone https://github.com/ulises-jeremias/hello-vsl cd hello-vsl
-
Follow the setup instructions in the template's README
This approach provides:
- Pre-configured environment with V, VSL, and all optional dependencies
- Cross-platform compatibility (Windows, Linux, macOS)
- Isolated development environment
- Access to optimized BLAS/LAPACK libraries
For enhanced performance, you can install optional system libraries:
- OpenBLAS/LAPACK: Linear algebra acceleration
- OpenMPI: Parallel computing support
- OpenCL: GPU acceleration
- HDF5: Scientific data format support
Refer to individual module documentation for specific compilation flags.
To test the module, just type the following command:
v test .
Made with contributors-img.