ParaS (sounds like paa-ruhs) is an implementation of the SYCL 2020 specification, developed to facilitate architectural and vendor neutral programming. It aims to achieve the principle of Code Once and Execute on All. The current version enables seamless execution across CPUs of x86 (Intel and AMD) and ARM as well as CUDA enabled NVIDIA GPUs.
- Linux OS
- Singularity
- OpenSSL
Step-1: Git clone
git clone [email protected]:CDAC-SSDG/ParaS-Compiler.git
Step-2: Run the installer script
bash install_paras.sh
To enter in the singularity container environment
- For CPU
singularity run --bind /etc:/etc ParaS_v0.5_x86.sif
- For Nvidia GPU
singularity run --nv --bind /etc:/etc ParaS_v0.5_x86.sif
where, --nv is to load CUDA drivers
For compilation
- For CPU
parascc <program.cpp> [Compiler Optimization Flags] -o <executable_file>
- For Nvidia GPU
parascc <program.cpp> -parasdevice cuda:sm_<x> [Compiler Optimization Flags] -o <executable_file>
where, x is the compute capability of Nvidia GPU
Issues can be raised in the issues section of the git repositery. In case of issues with the download, contact [email protected].
Contact us at [email protected]