From: Leon Romanovsky <leon@kernel.org>
To: Stephen Bates <sbates@raithlin.com>
Cc: linux-rdma@vger.kernel.org, sshaul@nvidia.com,
stephen.bates@amd.com, abhijit.gangurde@amd.com,
nikhil.agarwal@amd.com, Claude <noreply@anthropic.com>
Subject: Re: [PATCH v3] perftest: add a ROCm build to CI
Date: Sun, 15 Nov 2026 14:51:33 +0200 [thread overview]
Message-ID: <20261115125133.GA42525@unreal> (raw)
In-Reply-To: <20261106224821.126399-1-sbates@raithlin.com>
On Fri, Nov 06, 2026 at 04:48:21PM -0600, Stephen Bates wrote:
> CI builds only the CUDA configuration. The two existing workflows pass no
> --enable-rocm, so src/rocm_memory.c and everything behind HAVE_ROCM and
> HAVE_ROCM_DMABUF is never compiled on a pull request, and a change that
> breaks the ROCm backend goes green.
>
> Add an Ubuntu 24.04 job building --enable-rocm --enable-rocm-dmabuf,
> alongside the two CUDA jobs and triggered the same way. It runs in AMD's
> slim ROCm image rather than installing ROCm on the runner. The -full and
> -complete tags, and an apt install of the amdrocm-core metapackages, all
> pull the whole ML stack: Composable Kernel alone is over 2 GB, before
> rocSHMEM, MIOpen and the BLAS and FFT libraries. A compile check touches
> none of it. rocm/dev-ubuntu-24.04:7.2.4 is about 1.1 GB against 8.3 GB
> for the smallest 10.1 image, and still ships hipcc and the HIP and HSA
> headers needed to compile the ROCm backend.
>
> 7.2.4 rather than 10.1 because AMD publishes slim tags only through 7.2.x;
> every 10.x tag is -full. What this job needs is a toolchain that compiles
> the sources, which that image provides. Moving to a newer ROCm is a
> one-line change to the container tag if a slim 10.x image appears, or if
> something here starts depending on a newer HIP API.
>
> This is a single host-only build; there are no HIP kernel sources in the
> project yet, so there is nothing to compile for a specific device target.
> When device code and --with-rocm-arch support are introduced this job can
> gain an architecture matrix at that point.
>
> Like the CUDA jobs this builds and installs only. There is no RDMA device
> in a runner, and the project has no test suite.
>
> Verified by running this workflow in a fork of the repository. The job
> passed: configure accepts every option, and make and make install succeed
> warning-free.
>
> Link: https://github.com/linux-rdma/perftest/pull/418
>
> Co-Authored-By: Claude <noreply@anthropic.com>
> Signed-off-by: Stephen Bates <sbates@raithlin.com>
Stephen,
Thanks for bringing this to the mailing list. It brought to my attention that
the perftest repository had been neglected.
Please open a PR against the perftest repository, and I'll start cleaning
things up there.
Thanks
> ---
>
> Changes since v2:
> Drop the architecture matrix; collapse to a single host-only build job.
> Update the commit message to match what the workflow actually does.
> An architecture matrix will be added when HIP kernel sources and
> --with-rocm-arch support are introduced.
> .github/workflows/ubuntu24_04_rocm7_2.yaml | 72 ++++++++++++++++++++++
> 1 file changed, 72 insertions(+)
> create mode 100644 .github/workflows/ubuntu24_04_rocm7_2.yaml
>
> diff --git a/.github/workflows/ubuntu24_04_rocm7_2.yaml b/.github/workflows/ubuntu24_04_rocm7_2.yaml
> new file mode 100644
> index 0000000..e8f3ea5
> --- /dev/null
> +++ b/.github/workflows/ubuntu24_04_rocm7_2.yaml
> @@ -0,0 +1,72 @@
> +name: Build and Test perftest on Ubuntu 24.04 with ROCm
> +
> +on:
> + push:
> + branches:
> + - master
> + pull_request:
> + branches:
> + - master
> + workflow_dispatch:
> +
> +jobs:
> + build:
> + runs-on: ubuntu-24.04
> +
> + # AMD's slim ROCm image. The -full and -complete tags carry the whole ML
> + # stack -- Composable Kernel alone is over 2 GB -- which a compile check
> + # never touches. This one is about 1.1 GB and still ships hipcc and the
> + # HIP and HSA headers needed to compile the ROCm backend.
> + container: rocm/dev-ubuntu-24.04:7.2.4
> +
> + name: ROCm
> +
> + steps:
> + - name: Checkout repository
> + uses: actions/checkout@v4
> +
> + # The job runs as root inside the container, so no sudo here.
> + - name: Install build dependencies
> + run: |
> + export DEBIAN_FRONTEND=noninteractive
> + apt-get update
> + apt-get install -y \
> + build-essential \
> + autoconf \
> + automake \
> + libtool \
> + pkg-config \
> + libibverbs-dev \
> + librdmacm-dev \
> + libibumad-dev \
> + libpci-dev
> +
> + - name: Locate ROCm
> + run: |
> + # The image ships /opt/rocm as a symlink to a versioned prefix.
> + # configure needs the include path, so resolve it rather than
> + # assuming either spelling.
> + ROCM_PATH=$(ls -d /opt/rocm* 2>/dev/null | sort -V | tail -1)
> + if [ -z "$ROCM_PATH" ]; then
> + echo "No ROCm installation found under /opt" >&2
> + ls -la /opt || true
> + exit 1
> + fi
> + echo "Using ROCm at $ROCM_PATH"
> + "$ROCM_PATH/bin/hipcc" --version | head -2 || hipcc --version | head -2
> + echo "ROCM_PATH=$ROCM_PATH" >> $GITHUB_ENV
> + echo "$ROCM_PATH/bin" >> $GITHUB_PATH
> +
> + - name: Run autogen.sh
> + run: ./autogen.sh
> +
> + - name: Configure the build
> + run: |
> + ./configure --enable-rocm --enable-rocm-dmabuf \
> + --with-rocm="$ROCM_PATH"
> +
> + - name: Build perftest
> + run: make
> +
> + - name: Install perftest
> + run: make install
> --
> 2.53.0
>
>
>
prev parent reply other threads:[~2026-11-15 12:51 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-06 22:48 [PATCH v3] perftest: add a ROCm build to CI Stephen Bates
2026-11-06 22:50 ` sashiko-bot
2026-11-15 12:51 ` Leon Romanovsky [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261115125133.GA42525@unreal \
--to=leon@kernel.org \
--cc=abhijit.gangurde@amd.com \
--cc=linux-rdma@vger.kernel.org \
--cc=nikhil.agarwal@amd.com \
--cc=noreply@anthropic.com \
--cc=sbates@raithlin.com \
--cc=sshaul@nvidia.com \
--cc=stephen.bates@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox