CUDA+
CURRENTLY A W.I.P — "cuDNN", "cuBLAS", and "OpenBlas" aren't fully built in, and certain calls may be missing. If you need one, just use the normal C++ equivalent since anything that isn't C+ syntax passes straight through to C++.
WARNING - It just substitutes words for most things but does have some custom functions and will have more later.
CUDA added into C++ with near-native compatibility, along with helpful functions like Square, Cube, Clamp, Max, Min, etc. Has cuDNN, cuBLAS, OpenBLAS, and Thrust support, along with built-in row-major tensors that can easily move between CPU and GPU.
Uses a cleaner preferred syntax (preferred by me but if you want to change or add to it simply go to Compiler.py and edit the "Substitutions") like simple printing: Print("Text" && X + Y && \n\), Kern instead of __global__, and Func used as <return type> Func <name>(<arguments>) { }.
How To Use
- Step 1: Get the compiler from here
- Step 2: Get all required libraries (all official)
- Step 3: Get WSL if on Windows (built in) or just use Linux
- Step 4: Transpile with:
python <Compiler.py Location> <Program>.cp
- Step 5: Run the command it gives back (skip unused library flags if not needed)
- Step 6: Run the output with
./<Program>
- Step 7: Use the extension of the same name by me to have colors (sadly no errors yet :c)
Step 4 converts C+ to CUDA C++. Step 5 is slow because NVIDIA takes a moment to compile CUDA. Step 6 runs the machine code.