To use Coriander, please build from source:
You will need:
- python 2.7
- c++ compiler, and cmake
Note: tested on Mac M4 Air, on 2025 april: the branch hp/mac-os-x-2025-b kind of works. That is, you can build coriander. And many of the endtoend tests work ok like:
make run-singlebuffer
make run-cuda_sample
make run-testcumemcpy
make run-testfloat4
# ... etc
# all the endtoend ones I tried worked ok
This is using llvm 4.0. (llvm 8.0 didnt work for me, various issues with dump macro and similar.). Had to hack around for a while to get maths things compiling ok, so I'm not quite sure quite how much works 😅 But can at least run some stuff :)
(cloud) ~/git/coriander/build (hp/mac-os-x-2025-b|…1) $ make run-testfloat4
[ 0%] Building C object CMakeFiles/clew.dir/src/EasyCL/thirdparty/clew/src/clew.c.o
[ 2%] Linking C shared library libclew.dylib
[ 2%] Built target clew
[ 4%] Linking CXX shared library libeasycl.dylib
[ 14%] Built target easycl
[ 16%] Linking CXX shared library libcocl.dylib
[ 88%] Built target cocl
[ 90%] Linking CXX executable testfloat4
ld: warning: object file (/Users/hugh/git/coriander/build/test/endtoend/testfloat4.d/testfloat4.cu.o) was built for newer 'macOS' version (10.20) than being linked (10.15)
[ 90%] Built target testfloat4
[ 92%] Linking CXX executable patch_hostside
[100%] Built target patch_hostside
make run-testfloat4
loading OpenCL library...
loaded opencl
OpenCL platform: Apple
OpenCL device: Apple M4
123.456
19
9
12
[100%] Built target run-testfloat4
git clone --recursive https://github.com/hughperkins/coriander
cd coriander
python install_distro.py
git clone --recursive https://github.com/hughperkins/coriander
cd coriander
python install_distro.py
Windows build is in progress, and doesnt actually run yet. See installation_windows_inprogress.md.
- Coriander is installed into
~/corianderdirectory - Before using Coriander, you will need to set some environment variables, which you can do by running
source ~/coriander/activate
- (you'll need to do this each time you open a fresh terminal windows, or ssh session)
To run some smoke-tests: from the cloned repository, do:
cd build
make -j 8 tests
make run-tests
You can select the GPU using the environment variable CL_GPUOFFSET. For example, on a Macbook Pro 4th generation, to run on the Radeon:
CL_GPUOFFSET=1 make run-tests
(This is important, since the HD530 isnt quite working, on SGEMM currently. But the Radeon runs just fine :-) )
There are Docker files.
Did you clone with --recursive? You might be missing the sub-modules. You can get these by doing:
git submodule update --init --recursive
