feat: add CUDA-compatible hardware platforms - #45
Merged
Conversation
baominghelly
force-pushed
the
hardware/cuda-compatible-platforms
branch
from
August 3, 2026 03:07
27f0e13 to
bfacba6
Compare
baominghelly
marked this pull request as ready for review
August 3, 2026 03:14
baominghelly
force-pushed
the
hardware/cuda-compatible-platforms
branch
from
August 3, 2026 07:59
bfacba6 to
0633c64
Compare
Chamberlain0w0
approved these changes
Aug 4, 2026
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Motivation
The hardware benchmark adapter previously assumed a CUDA-only environment. CUDA-compatible accelerator platforms need platform-specific compiler, runtime, visibility, and cache parsing behavior while preserving the existing benchmark interface and CUDA behavior.
User impact
Users can run the same public test case on all five supported platform families:
with
config.deviceset tocuda,metax,iluvatar,hygon, ormoore. Comprehensive mode runs four memory-bandwidth directions, four STREAM operations, and L1/L2 cache tests.Rebase
Current head:
0633c640a5ac499137e0551b7df68fd43a41c6c1.The branch is rebased directly onto
masteratd627465b7aa1c763ece071bda22f9b6f5e1b0cdb(PR #40). Conflicts inCMakeLists.txt,build.sh, andhardware_adapter.pywere resolved by retaining the multi-platform implementation while preserving PR #40's runtime MetaX detection through the legacy_build_cuda_project()entrypoint.Validation
Validation performed on the rebased commit:
compileall, shell syntax checks, andgit diff --check: passed--all: 10/10 metrics, Adapter exit 0, container exit 0The earlier five-platform hardware run used
27f0e1389e85a726c447b1b064d070d89d2e1800and passed on NVIDIA A100, MetaX C550, Iluvatar TG-V200, Hygon Z100L/DCU, and Moore MTT S5000. The rebased head preserves those benchmark implementations; MetaX was rerun on the exact current head because PR #40 overlapped the MetaX build path.Moore required a test-environment workaround after its host driver was updated to 3.3.6: the container runtime injected
libmusa.so.4.3.6but left the image'slibmusa.sochain pointing to a zero-bytelibmusa.so.4.3.1placeholder. A read-only bind mount to the host driver library allowed the unchanged PR code to complete all tests.