Skip to content

emiliantolo/cuvegas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cuVegas

cuVegas: Accelerate Multidimensional Monte Carlo Integration through a Parallelized CUDA-based Implementation of the VEGAS Enhanced Algorithm

https://arxiv.org/abs/2408.09229

Project structure

  • src/ - contains CUDA C source files
    • config.cuh: contains integrand definition and parameters
    • main.cu: main file, executes integration
    • commons/: contains integrands and other helpers
  • vegas_cuda/ - contains the python binding

Run

Tested on Ubuntu 22.04, Python 3.10, CUDA 11.8. It requires compute capability >= sm_60.

Get code

git clone https://github.com/emiliantolo/cuvegas.git
cd cuvegas

CUDA C

Compile

make

Run

./bin/main.bin

Python extension

Create virtual environment

python3 -m venv venv
source venv/bin/activate

Install

cd vegas_cuda
chmod +x install.sh
./install.sh

Run test

python3 test.py

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published