Contributing#

mkl_random is an free and open source project. We welcome and appreciate your contributions.

To contribute, fork the repo https://github.com/IntelPython/mkl_random.git, clone it:

How to clone the repo#
     git clone https://github.com/<fork-org>/mkl_random.git

A working compiler is needed build mkl_random. Both Gnu g++ and Intel LLVM icpx are supported.

Make sure to install Python packages required to build mkl_random:

  • python

  • numpy

  • cython

  • setuptools

You would also need Intel(R) MKL library and its headers. Set MKLROOT environment variable so that ${MKLROOT}/include/mkl.h and ${MKLROOT}/lib/libmkl_rt.so can be found.

Building mkl_random#
   $ export MKLROOT=</path/to/mkl>
   python setup.py develop

To run test suite, install pytest, and run

Running mkl_random test suite#
   python -m pytest mkl_random/tests

To build documentation, install dependencies and running

Building mkl_random documentation#
   $ sphinx-build -M html docs/source docs/build

Rendered documentation can be found in “docs/build/html”.