Disable OpenCL on Apple Silicon #143
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build using AMD drivers | |
on: | |
push: | |
branches: [ master, dev*, ow* ] | |
pull_request: | |
branches: [ master, dev, ow* ] | |
jobs: | |
build: | |
runs-on: ${{ matrix.runs-on }} | |
strategy: | |
fail-fast: false | |
matrix: | |
runs-on: [ ubuntu-22.04, ubuntu-24.04 ] | |
steps: | |
- name: Set git to use LF | |
run: | | |
git config --global core.autocrlf false | |
git config --global core.eol lf | |
- uses: actions/checkout@v4 | |
- name: Install AMD OpenCL libraries needed for Sibernetic | |
run: | | |
lscpu | |
echo "Installing OpenCL Drivers" | |
# Legacy install of Intel's OpenCL Drivers: | |
# Based on: https://github.com/openworm/OpenWorm/blob/master/Dockerfile | |
# mkdir intel-opencl-tmp | |
# cd intel-opencl-tmp | |
# mkdir intel-opencl | |
# wget https://github.com/openworm/OpenWorm/raw/dev_inte/SRB5.0_linux64.zip | |
# unzip SRB5.0_linux64.zip | |
# tar -C intel-opencl -Jxf intel-opencl-r5.0-63503.x86_64.tar.xz | |
# tar -C intel-opencl -Jxf intel-opencl-devel-r5.0-63503.x86_64.tar.xz | |
# tar -C intel-opencl -Jxf intel-opencl-cpu-r5.0-63503.x86_64.tar.xz | |
# sudo cp -R intel-opencl/* / | |
# sudo ldconfig | |
# cd .. | |
# sudo rm -r intel-opencl-tmp | |
# sudo cp -R /opt/intel/opencl/include/CL /usr/include/ | |
# sudo apt install -y ocl-icd-opencl-dev vim | |
# Install AMD's OpenCL Drivers (AMD-APP-SDK 3.0): | |
wget https://master.dl.sourceforge.net/project/nicehashsgminerv5viptools/APP%20SDK%20A%20Complete%20Development%20Platform/AMD%20APP%20SDK%203.0%20for%2064-bit%20Linux/AMD-APP-SDKInstaller-v3.0.130.136-GA-linux64.tar.bz2 | |
tar -xf AMD-APP-SDKInstaller-v3.0.130.136-GA-linux64.tar.bz2 | |
printf 'Y\n\n' | sudo ./AMD-APP-SDK-v3.0.130.136-GA-linux64.sh | |
sudo ln -s /opt/AMDAPPSDK-3.0/lib/x86_64/sdk/libOpenCL.so.1 /usr/lib/libOpenCL.so.1 | |
sudo ln -s /opt/AMDAPPSDK-3.0/lib/x86_64/sdk/libamdocl64.so /usr/lib/libamdocl64.so | |
sudo apt install -y ocl-icd-opencl-dev | |
echo "OpenCL Driver Installation Complete" | |
echo "CLINFO:" | |
clinfo | |
- name: Build Sibernetic | |
run: | | |
sudo apt install -y python3-dev freeglut3-dev libglu1-mesa-dev | |
#sudo apt install -y --allow-downgrades libc-bin=2.27-3ubuntu1.5 # Fails with 2.27-3ubuntu1.6 for some reason... | |
python -V | |
ls -alt /usr/bin/python* | |
ls -alt | |
make clean | |
make | |
- name: Print Sibernetic help | |
run: | | |
./Release/Sibernetic -h | |
- name: Run quick Sibernetic test | |
run: | | |
ldd ./Release/Sibernetic | |
./Release/Sibernetic -no_g timelimit=0.001 | |
- name: Run tests | |
run: | | |
pip install c302 | |
pip install neuron | |
pip install pytest | |
pip install torch ruff pyneuroml | |
pip list | |
which nrniv | |
export NEURON_HOME=/home/runner/.local | |
./run_all_tests.sh | |
- name: Generated file info | |
run: | | |
ls -alt simulations/* | |
more simulations/C1_*/report.json | |
- name: Final version info | |
run: | | |
python -V | |
pip list |