@@ -79,16 +79,27 @@ jobs:
7979 files : |
8080 ./*.tar.gz
8181 precompile_nif_linux_x86_64 :
82- runs-on : ubuntu-22 .04
82+ runs-on : ubuntu-20 .04
8383 env :
8484 MIX_ENV : prod
8585 NX_IREE_PREFER_PRECOMPILED : false
8686 NX_IREE_SOURCE_DIR : ./build-cache/iree
8787 IREE_GIT_REV : candidate-20240604.914
88+ ImageOS : ubuntu20
89+ LANG : en_US.UTF-8
90+ LANGUAGE : en_US:en
91+ LC_ALL : en_US.UTF-8
92+ DEBIAN_FRONTEND : noninteractive
8893 strategy :
8994 fail-fast : false
9095 matrix :
9196 nif_version : [2.16, 2.17]
97+ container : " nvidia/cuda:12.5.0-devel-ubuntu20.04"
98+ cuda_version : " 12.5.0"
99+ cuda_id : " 12"
100+ cudnn_id : " 8"
101+ cudnn_tarball : " https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/linux-x86_64/cudnn-linux-x86_64-9.2.0.82_cuda12-archive.tar.xz"
102+ container : ${{ matrix.container }}
92103 steps :
93104 - name : checkout
94105 uses : actions/checkout@v4
@@ -106,11 +117,32 @@ jobs:
106117
107118 - name : Setup dependencies and env
108119 run : |
120+ apt-get update
121+ apt-get install -y build-essential automake autoconf pkg-config bc curl git libssl-dev gzip python3 ca-certificates \
122+ locales curl wget cmake
123+ echo "${LANG} UTF-8" >> /etc/locale.gen
124+ locale-gen
125+ update-locale LANG=${LANG}
109126 mix local.hex --force
110127 mix local.rebar --force
111128 echo "NX_IREE_SOURCE_DIR=$(elixir -e 'IO.puts(Path.absname(~s(${{env.NX_IREE_SOURCE_DIR}})))')" > $GITHUB_ENV
112129 echo "PKG_NAME=libnx_iree-linux-x86_64-nif-${{matrix.nif_version}}" >> $GITHUB_ENV
113130
131+ - name : Download and install cudnn
132+ run : |
133+ curl -fSL "${{ matrix.cudnn_tarball }}" -o cudnn.tar.xz
134+ mkdir -p cudnn
135+ tar -xvf cudnn.tar.xz -C cudnn --strip-components=1
136+ rm -f cudnn.tar.xz
137+ cp -a cudnn/include/* /usr/local/cuda/include/
138+ if [ -d "$(pwd)/cudnn/lib" ]; then
139+ cp -a cudnn/lib/* /usr/local/cuda/lib64/
140+ fi
141+ if [ -d "$(pwd)/cudnn/lib64" ]; then
142+ cp -a cudnn/lib64/* /usr/local/cuda/lib64/
143+ fi
144+ rm -rf cudnn
145+
114146 - name : Cache mix dependencies
115147 id : cache-mix-deps
116148 uses : actions/cache@v4
0 commit comments