Skip to content

Commit 982a1f1

Browse files
authored
Support cuda12 and cudnn8 for Linux aarch64. (#2021)
1 parent 1f52ac2 commit 982a1f1

File tree

4 files changed

+27
-3
lines changed

4 files changed

+27
-3
lines changed

.github/workflows/aarch64-linux-gnu-shared.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ jobs:
4343
- os: ubuntu-22.04-arm
4444
gpu: ON
4545
onnxruntime_version: "1.16.0"
46+
- os: ubuntu-22.04-arm
47+
gpu: ON
48+
onnxruntime_version: "1.18.0"
4649
- os: ubuntu-22.04-arm
4750
gpu: ON
4851
onnxruntime_version: "1.18.1"
@@ -239,7 +242,7 @@ jobs:
239242
file: sherpa-onnx-*linux-aarch64*.tar.bz2
240243
# repo_name: k2-fsa/sherpa-onnx
241244
# repo_token: ${{ secrets.UPLOAD_GH_SHERPA_ONNX_TOKEN }}
242-
# tag: v1.10.42
245+
# tag: v1.11.1
243246

244247
- name: Test offline Moonshine
245248
if: matrix.build_type != 'Debug'

CMakeLists.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,7 @@ option(SHERPA_ONNX_ENABLE_SANITIZER "Whether to enable ubsan and asan" OFF)
4848
option(SHERPA_ONNX_BUILD_C_API_EXAMPLES "Whether to enable C API examples" ON)
4949
option(SHERPA_ONNX_ENABLE_RKNN "Whether to build for RKNN NPU " OFF)
5050

51-
set(SHERPA_ONNX_LINUX_ARM64_GPU_ONNXRUNTIME_VERSION "1.11.0" CACHE STRING "Used only for Linux ARM64 GPU. If you use Jetson nano b01, then please set it to 1.11.0. If you use Jetson Orin NX, then set it to 1.16.0.If you use NVIDIA Jetson Orin Nano Engineering Reference Developer Kit
52-
Super - Jetpack 6.2 [L4T 36.4.3], then set it to 1.18.1")
51+
set(SHERPA_ONNX_LINUX_ARM64_GPU_ONNXRUNTIME_VERSION "1.11.0" CACHE STRING "Used only for Linux ARM64 GPU. Set to 1.11.0 if you use CUDA 10.2 and cudnn8. Set it to 1.16.0 if you use CUDA 11.4 and cudnn8. Set it to 1.18.0 if you use CUDA 12.2 and cudnn8. Set it to 1.18.1 if you use CUDA 12.6 and cudnn9")
5352

5453

5554
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")

build-aarch64-linux-gnu.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,12 @@
2727
# export SHERPA_ONNX_ENABLE_GPU=ON
2828
# export SHERPA_ONNX_LINUX_ARM64_GPU_ONNXRUNTIME_VERSION=1.18.1
2929
# ./build-aarch64-linux-gnu.sh
30+
#
31+
# (e) For NVIDIA Jetson Orin NX (16GB ram) with CUDA 12.2, cudnn8
32+
#
33+
# export SHERPA_ONNX_ENABLE_GPU=ON
34+
# export SHERPA_ONNX_LINUX_ARM64_GPU_ONNXRUNTIME_VERSION=1.18.0
35+
# ./build-aarch64-linux-gnu.sh
3036

3137

3238
if command -v aarch64-none-linux-gnu-gcc &> /dev/null; then

cmake/onnxruntime-linux-aarch64-gpu.cmake

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ if(v STREQUAL "1.11.0")
4343
set(onnxruntime_HASH "SHA256=36eded935551e23aead09d4173bdf0bd1e7b01fdec15d77f97d6e34029aa60d7")
4444
elseif(v STREQUAL "1.16.0")
4545
set(onnxruntime_HASH "SHA256=4c09d5acf2c2682b4eab1dc2f1ad98fc1fde5f5f1960063e337983ba59379a4b")
46+
elseif(v STREQUAL "1.18.0")
47+
set(onnxruntime_URL "https://github.com/csukuangfj/onnxruntime-libs/releases/download/v1.18.0/onnxruntime-linux-aarch64-gpu-cuda12.2-cudnn8.9.4-trt8.6.2-1.18.0.tar.bz2")
48+
set(onnxruntime_URL2 "https://hf-mirror.com/csukuangfj/onnxruntime-libs/resolve/main/onnxruntime-linux-aarch64-gpu-cuda12.2-cudnn8.9.4-trt8.6.2-1.18.0.tar.bz2")
49+
set(onnxruntime_HASH "SHA256=da437a69be982fc28ca7d60d0c5ccce2f48d027fa888cc76458cdc05410f4e2d")
4650
elseif(v STREQUAL "1.18.1")
4751
set(onnxruntime_URL "https://github.com/csukuangfj/onnxruntime-libs/releases/download/v1.18.1/onnxruntime-linux-aarch64-gpu-cuda12-1.18.1.tar.bz2")
4852
set(onnxruntime_URL2 "https://hf-mirror.com/csukuangfj/onnxruntime-libs/resolve/main/onnxruntime-linux-aarch64-gpu-cuda12-1.18.1.tar.bz2")
@@ -60,6 +64,18 @@ set(possible_file_locations
6064
${CMAKE_BINARY_DIR}/onnxruntime-linux-aarch64-gpu-${v}.tar.bz2
6165
/tmp/onnxruntime-linux-aarch64-gpu-${v}.tar.bz2
6266
/star-fj/fangjun/download/github/onnxruntime-linux-aarch64-gpu-${v}.tar.bz2
67+
#
68+
$ENV{HOME}/Downloads/onnxruntime-linux-aarch64-gpu-cuda12.2-cudnn8.9.4-trt8.6.2-${v}.tar.bz2
69+
${CMAKE_SOURCE_DIR}/onnxruntime-linux-aarch64-gpu-cuda12.2-cudnn8.9.4-trt8.6.2-${v}.tar.bz2
70+
${CMAKE_BINARY_DIR}/onnxruntime-linux-aarch64-gpu-cuda12.2-cudnn8.9.4-trt8.6.2-${v}.tar.bz2
71+
/tmp/onnxruntime-linux-aarch64-gpu-cuda12.2-cudnn8.9.4-trt8.6.2-${v}.tar.bz2
72+
/star-fj/fangjun/download/github/onnxruntime-linux-aarch64-gpu-cuda12.2-cudnn8.9.4-trt8.6.2-${v}.tar.bz2
73+
#
74+
$ENV{HOME}/Downloads/onnxruntime-linux-aarch64-gpu-cuda12-${v}.tar.bz2
75+
${CMAKE_SOURCE_DIR}/onnxruntime-linux-aarch64-gpu-cuda12-${v}.tar.bz2
76+
${CMAKE_BINARY_DIR}/onnxruntime-linux-aarch64-gpu-cuda12-${v}.tar.bz2
77+
/tmp/onnxruntime-linux-aarch64-gpu-cuda12-${v}.tar.bz2
78+
/star-fj/fangjun/download/github/onnxruntime-linux-aarch64-gpu-cuda12-${v}.tar.bz2
6379
)
6480

6581
foreach(f IN LISTS possible_file_locations)

0 commit comments

Comments
 (0)