Skip to main content

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

  1. Clone the repository to your local machine:
git clone https://github.com/Viktour19/culingam
  1. 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
  1. 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
  1. 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:

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

culingam-0.0.1.tar.gz (24.7 kB view hashes)

Uploaded Source

Built Distribution

culingam-0.0.1-py3-none-any.whl (22.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page