-
Notifications
You must be signed in to change notification settings - Fork 561
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Build wheels for rknn linux aarch64 (#1928)
- Loading branch information
1 parent
82cb8a5
commit eebe199
Showing
4 changed files
with
131 additions
and
4 deletions.
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,125 @@ | ||
name: build-wheels-aarch64-rknn | ||
|
||
on: | ||
push: | ||
branches: | ||
- wheel | ||
workflow_dispatch: | ||
|
||
concurrency: | ||
group: build-wheels-aarch64-rknn-${{ github.ref }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
build_wheels_aarch64_rknn: | ||
runs-on: ${{ matrix.os }} | ||
name: ${{ matrix.os }} ${{ matrix.python-version }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-22.04-arm] | ||
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
|
||
- name: Setup Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
|
||
- name: Install Python dependencies | ||
shell: bash | ||
run: | | ||
python3 -m pip install --upgrade pip numpy pypinyin sentencepiece setuptools wheel | ||
- name: ccache | ||
uses: hendrikmuhs/[email protected] | ||
with: | ||
key: ${{ matrix.os }}-rknn-linux-aarch64-wheel | ||
|
||
- name: Download rknn-toolkit2 | ||
shell: bash | ||
run: | | ||
git clone --depth 1 https://github.com/airockchip/rknn-toolkit2 | ||
- name: Build sherpa-onnx | ||
shell: bash | ||
run: | | ||
export CMAKE_CXX_COMPILER_LAUNCHER=ccache | ||
export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" | ||
cmake --version | ||
echo "config: ${{ matrix.config }}" | ||
uname -a | ||
which gcc | ||
gcc --version | ||
g++ --version | ||
echo "pwd" | ||
ls -lh | ||
git clone --depth 1 --branch v1.2.12 https://github.com/alsa-project/alsa-lib | ||
pushd alsa-lib | ||
./gitcompile | ||
popd | ||
export SHERPA_ONNX_RKNN_TOOLKIT2_PATH=$PWD/rknn-toolkit2 | ||
export SHERPA_ONNX_RKNN_TOOLKIT2_LIB_DIR=$SHERPA_ONNX_RKNN_TOOLKIT2_PATH/rknpu2/runtime/Linux/librknn_api/aarch64 | ||
export CPLUS_INCLUDE_PATH=$SHERPA_ONNX_RKNN_TOOLKIT2_PATH/rknpu2/runtime/Linux/librknn_api/include:$CPLUS_INCLUDE_PATH | ||
export CPLUS_INCLUDE_PATH=$PWD/alsa-lib/include:$CPLUS_INCLUDE_PATH | ||
export SHERPA_ONNX_ALSA_LIB_DIR=$PWD/alsa-lib/src/.libs | ||
export SHERPA_ONNX_CMAKE_ARGS="-DSHERPA_ONNX_ENABLE_RKNN=ON -DSHERPA_ONNX_ENABLE_ALSA=1" | ||
python3 setup.py bdist_wheel | ||
- name: Display results | ||
shell: bash | ||
run: | | ||
ls -lh dist | ||
- name: Publish to huggingface | ||
env: | ||
HF_TOKEN: ${{ secrets.HF_TOKEN }} | ||
uses: nick-fields/retry@v3 | ||
with: | ||
max_attempts: 20 | ||
timeout_seconds: 200 | ||
shell: bash | ||
command: | | ||
git config --global user.email "[email protected]" | ||
git config --global user.name "Fangjun Kuang" | ||
rm -rf huggingface | ||
export GIT_LFS_SKIP_SMUDGE=1 | ||
export GIT_CLONE_PROTECTION_ACTIVE=false | ||
SHERPA_ONNX_VERSION=$(grep "SHERPA_ONNX_VERSION" ./CMakeLists.txt | cut -d " " -f 2 | cut -d '"' -f 2) | ||
echo "SHERPA_ONNX_VERSION $SHERPA_ONNX_VERSION" | ||
d=rknn/$SHERPA_ONNX_VERSION/ | ||
git clone https://csukuangfj:[email protected]/csukuangfj/sherpa-onnx-wheels huggingface | ||
cd huggingface | ||
git fetch | ||
git pull | ||
git merge -m "merge remote" --ff origin main | ||
mkdir -p $d | ||
cp -v ../dist/*.whl $d/ | ||
git status | ||
git add . | ||
git commit -m "add more wheels" | ||
git push https://csukuangfj:[email protected]/csukuangfj/sherpa-onnx-wheels main | ||
- uses: actions/upload-artifact@v4 | ||
with: | ||
name: wheel-${{ matrix.python-version }} | ||
path: ./dist/*.whl |
This file contains 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
This file contains 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
This file contains 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