Skip to content
Merged
Changes from 22 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
c24dc3a
Changed the CI file to hw
alitariq4589 Jun 29, 2025
c465ebe
Changed the CI file to hw
alitariq4589 Jun 29, 2025
b599746
Added to sudoers for apt
alitariq4589 Jun 29, 2025
9342a37
Removed the clone command and used checkout
alitariq4589 Jun 29, 2025
bb19818
Added libcurl
alitariq4589 Jun 29, 2025
b402426
Added gcc-14
alitariq4589 Jun 29, 2025
e608c00
Checking gcc --version
alitariq4589 Jun 29, 2025
5857204
added gcc-14 symlink
alitariq4589 Jun 29, 2025
48fc7c5
added CC and C++ variables
alitariq4589 Jun 29, 2025
d8c9241
Added the gguf weight
alitariq4589 Jun 29, 2025
fd500f7
Changed the weights path
alitariq4589 Jun 29, 2025
95f4d8e
Added system specification
alitariq4589 Jun 29, 2025
fc453a0
Removed white spaces
alitariq4589 Jun 29, 2025
96d1aa6
Merge branch 'master' into alitariq4589/rvv_ci
akifejaz Aug 13, 2025
c1d61aa
ci: Replace Jenkins riscv native build Cloud-V pipeline with GitHub A…
akifejaz Aug 13, 2025
d70b2cd
Merge pull request #2 from alitariq4589/ae/rvv-native-build
akifejaz Aug 13, 2025
4d21e10
removed trailing whitespaces
akifejaz Aug 13, 2025
1cc9920
Added the trigger at PR creation
alitariq4589 Aug 18, 2025
c9bb340
Corrected OS name
alitariq4589 Aug 18, 2025
767c0ad
Merge branch 'master' into alitariq4589/rvv_ci
alitariq4589 Aug 18, 2025
304cee2
Added ccache as setup package
alitariq4589 Aug 18, 2025
e58e012
Added ccache for self-hosted runner
alitariq4589 Aug 18, 2025
0b48b25
Added directory for ccache size storage
alitariq4589 Aug 19, 2025
63944da
Changed the build command and added ccache debug log
alitariq4589 Aug 21, 2025
6d2b6fa
Added the base dir for the ccache
alitariq4589 Aug 21, 2025
c27aacf
Re-trigger CI
alitariq4589 Aug 21, 2025
71372a6
Cleanup and refactored ccache steps
alitariq4589 Aug 21, 2025
7344565
Cleanup and refactored ccache steps
alitariq4589 Aug 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 9 additions & 1 deletion .github/workflows/build-riscv-native.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
name: Build on RISCV Linux Machine by Cloud-V
on:
pull_request:
workflow_dispatch:
workflow_call:

jobs:
bianbu-riscv64-native: # Bianbu 2.2
debian-13-riscv64-native: # Bianbu 2.2
runs-on: self-hosted

steps:
Expand All @@ -20,8 +21,15 @@ jobs:
build-essential \
gcc-14-riscv64-linux-gnu \
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi, Since we are building directly on a RISC-V Linux machine, are we still required to use a cross-compilation toolchain?
It seems that native compilation should be sufficient in this case. Could you help clarify the motivation for using a cross toolchain here? Thnaks you.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the cross-compilation was only introduced because we didnt have the hardware for checking the RVV1.0 support on RISC-V. But I did not add this CI, so author may better tell us about the motivation.

Copy link
Collaborator

@CISC CISC Aug 29, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think @ixgbe is referring to the gcc-14-riscv64-linux-gnu package (which comes from your #14439 PR), which usually installs a cross-compiler, but build_essential should already give you a native riscv64 compiler.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Installing gcc-14-riscv64-linux-gnu doesn't install a cross compiler. In fact, this is the native toolchain when the command is executed inside the riscv compute.

Also, the build essential installs 13.2.0 GCC by default, which has a vector intrinsics issue with RISC-V.

Check this issue and comment: #12693 (comment)

g++-14-riscv64-linux-gnu \
ccache \
cmake

- name: Setup ccache
run: |
mkdir -p $HOME/.ccache
ccache -M 5G
echo "CCACHE_DIR=$HOME/.ccache" >> $GITHUB_ENV

- name: Build
run: |
cmake -B build -DLLAMA_CURL=OFF \
Expand Down