rtilk89 / occa.py

OCCA Python API (In Development)

Home Page:https://libocca.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

occa

 

Gitter

 

What is OCCA?

In a nutshell, OCCA (like oca-rina) is an open-source library which aims to

  • Make it easy to program different types of devices (e.g. CPU, GPU, FPGA)
  • Provide a unified API for interacting with backend device APIs (e.g. OpenMP, CUDA, OpenCL)
  • Use just-in-time compilation to build backend kernels
  • Provide a kernel language, a minor extension to C, to abstract programming for each backend

 

Links

 

Installing

pip install occa

Development

Try out local installation

git submodule update --init
pip install -e .
python setup.py build_ext

Between updates, run

# To avoid doing a `make clean` each time, use the `--no-clean` flag
python setup.py build_ext --no-clean --inplace

Deployment

Test deployment before uploading package to pypi

python setup.py install sdist
pip install dist/occa-<version>.tar.gz

After testing, upload to pypi by running

twine upload dist/*

About

OCCA Python API (In Development)

https://libocca.org

License:MIT License


Languages

Language:Python 64.6%Language:C++ 35.4%