11 Commits

Author SHA1 Message Date
Bobby R. Bruce
7117b1399b util-docker: Fix gpu dpcker images (#1627)
Two faults:

1. You can't give description the docker-bake file for single platform
builds. They must be in the Dockerfile..
2. The gpu docker image def in docker-bake.hcl was not overriding the
"common" setttings as previously thought. This was causing builds to
something build the wrong platform and vairous other weird bugs. This
has been fixed in this patch.
2024-10-04 02:37:16 -07:00
Bobby R. Bruce
688268d22d util-docker: Minor housekeeping to Dockerfiles (#1592)
1. Moved description label to docker-bake.hcl. Image descriptions must
be specified here. See:
https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry#adding-a-description-to-multi-arch-images
2. Moved specifying the 'Dockerfile' to 'common'.
3. Changed it so the gpu-fs and gcn-fpu images only built to
linux/amd64. arm64 doesn't work.
2024-09-23 02:36:09 -07:00
Bobby R. Bruce
8fc2c4c9b4 util-docker: Remove 'BUILDPLATFORM' set
This actually breaks multi-platform builds when using docker buildx via
the docker-bake.hcl file. Removing this fixes and permits the
multi-platform builds to be built.
2024-09-21 04:47:47 -07:00
Bobby R. Bruce
4126035f88 util-docker: Move LABEL to after image import (#1548)
A Dockerfile must start with the importation of a docker base image. It
is only after this point that `LABEL` be provided. Having `LABEL` at the
top of the Dockerfiles resulted in the Docker images failing to build.
2024-09-13 20:21:35 -07:00
Erin (Jianghua) Le
a5a3810ac9 util-docker: Add labels to Dockerfiles (#1528)
This PR adds labels to Dockerfiles. The labels are the source
(https://github.com/gem5/gem5), a description, and the license.

Change-Id: I47ce432257641b394efef4958f1474eefe2a11c1

Co-authored-by: Harshil Patel <harshilp2107@gmail.com>
2024-09-01 09:52:13 -07:00
Matthew Poremba
e4ebe29f43 util: Bump gpu-fs docker to ROCm 6.1 (#1097)
This version matches the disk image on gem5-resources.

Change-Id: I69a45ef290f0fdf2167ead4d67d4d789d30e0e91
2024-05-09 10:11:54 -07:00
Matthew Poremba
9b463dbdfd util-docker: Bump gpu-fs build docker to ROCm 6.0.2 (#1025)
This bumps the docker image used to build GPU applications for input to
GPUFS simulations from ROCm 5.4.2 to ROCm 6.0.2 and Ubuntu from 20.04 to
22.04. This matches the versions in gem5-resources#29 .

Several notes were added to the Dockerfile to describe where the RUN
commands come from. A README.md is also added to clarify that this is
not a disk image for GPUFS and is only used to build applications.

Change-Id: I9ada99e2ed1854cb7adb76f2a1fa662bab398f86
2024-04-15 13:36:06 -07:00
Matthew Poremba
3896673ddc util: Bump GPUFS build docker to 5.4.2 (#571)
This dockerfile is used to *build* applications (e.g., from
gem5-resources) which can be run using full system mode in a GPU build.
The next releases disk image will use ROCm 5.4.2, therefore bump the
version from 4.2 to that version.

Again this is used to *build* input applications only and is not needed
to run or compile gem5 with GPUFS. For example:

$ docker build -t rocm54-build .
/some/gem5-resources/src/gpu/lulesh$ docker run --rm -u $UID:$GID -v \
    ${PWD}:${PWD} -w ${PWD} rocm54-build make

Change-Id: If169c8d433afb3044f9b88e883ff3bb2f4bc70d2
2023-11-18 18:13:06 -08:00
Ivana Mitrovic
df471092d9 dockerfiles: multi-platform setup (#336)
Updated Dockerfiles to work with multi-platform setups
2023-10-16 11:47:49 -07:00
Bobby R. Bruce
92894edf78 util-docker: Ensure all apt update/upgrade/install in one RUN
Prior to this patch those building from these Dockerfiles could
encounter caching issues where the `apt -y update` RUN was loaded from a
cached layer prior to running the `install` command. Typically this was
trying to obtain a package from a wrong IP address. The fix for this is
to run this all in one Docker RUN to avoid loading a broken cache.

Change-Id: If309c5c1d4a0240fed670abe980772d90f7d2172
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59350
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
2022-05-06 20:53:32 +00:00
Matthew Poremba
fa808ae7e0 util: Add dockerfile for building GPUFS application
In order to compile binaries to run in GPUFS, users would either have to
install ROCm 4.2 locally, use something like docker, or build within
gem5 using KVM and copy the binary out. The simplest way of those is to
use docker. This minimal dockerfile contains only ROCm 4.2 and can build
binaries that will be placed on the host which can be run in gem5.

For example, current gem5-resources can be built for gem5 as follows:

cd util/dockerfiles/gpu-fs
docker build -t rocm42-build .
cd /path/to/gem5-resources/src/gpu/hip-samples
docker run --rm -u $UID:$GID -v ${PWD}:${PWD} \
    -w ${PWD} rocm42-build make

Those binaries can then be run in gem5 using the
configs/example/gpufs/vega10_kvm.py script:

build/VEGA_X86/gem5.opt configs/example/gpufs/vega10_kvm.py --app \
    /path/to/gem5-resources/src/gpu/hip-samples/bin/MatrixTranspose

Change-Id: Ie76146be0ccf6fcc1941322cacc15965fe70073a
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/59051
Reviewed-by: Jason Lowe-Power <power.jg@gmail.com>
Maintainer: Jason Lowe-Power <power.jg@gmail.com>
Reviewed-by: Matt Sinclair <mattdsinclair@gmail.com>
Maintainer: Matt Sinclair <mattdsinclair@gmail.com>
Tested-by: kokoro <noreply+kokoro@google.com>
2022-04-23 01:21:14 +00:00