CULiNGAM accelerates LiNGAM analysis on GPUs.
Project description
CULiNGAM - CUDA Accelerated LiNGAM Analysis
Introduction
CULiNGAM is a high-performance library that accelerates Linear Non-Gaussian Acyclic Model (LiNGAM) analysis on GPUs. It leverages the computing power of NVIDIA GPUs to provide fast and efficient computations for LiNGAM applications, making it ideal for large-scale data analysis in fields such as bioinformatics, economics, and machine learning.
Installation
To install CULiNGAM, you need a system with NVIDIA CUDA installed and a compatible GPU. This library is tested with CUDA 12.2 and designed for GPUs with the architecture sm_86, although it may work with other versions and architectures with appropriate adjustments.
Prerequisites
- NVIDIA GPU with CUDA Compute Capability 8.6 or higher
- CUDA Toolkit 12.2 or compatible version
- Python 3.6 or newer
- Numpy
- A C++17 compatible compiler
Installing from PyPI
CULiNGAM is available on PyPI and can be easily installed with pip:
pip install culingam
Installing CULiNGAM manually
- Clone the repository to your local machine:
git clone https://github.com/Viktour19/culingam
- Ensure that CUDA_HOME environment variable is set to your CUDA Toolkit installation path. If not, you can set it as follows (example for default CUDA installation path):
export CUDA_HOME=/usr/local/cuda-12.2
- Optionally, set the GPU_ARCH environment variable to match your GPU architecture if it differs from the default sm_86:
export GPU_ARCH=sm_xx # Replace xx with your GPU's compute capability
- Install the library using pip:
pip install .
Usage
After installation, you can use CULiNGAM in your Python projects to accelerate LiNGAM analysis. Here's a simple example to get started:
https://github.com/Viktour19/culingam/blob/main/examples/basic.py
Support
For bugs, issues, and feature requests, please submit a report to the repository's issue tracker. Contributions are also welcome.
Author
Victor Akinwande
License and Acknowledgment
This project is licensed under the MIT License - see the LICENSE file for details. A good amount of the code is adapted from sequential implementations of the LiNGAM algorithms present in CULiNGAM: https://github.com/cdt15/lingam.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file culingam-0.0.8.tar.gz.
File metadata
- Download URL: culingam-0.0.8.tar.gz
- Upload date:
- Size: 27.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.9.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
331db3a28cb667bab468d7585233c2646668989a64ccc73da1a410227dfb72d2
|
|
| MD5 |
4b2e9c35c244e307307137a3b2badfbf
|
|
| BLAKE2b-256 |
8b80fe3b2b9df4309fe4fe537989abddd5d18fa615d9a0ce982603aba9b824dd
|