├── .gitmodules ├── rvs ├── empty.config ├── nomodule.config ├── .gitignore ├── novernum.config ├── wrongvernum.config ├── .rvsmodules.config ├── testif.config ├── test │ ├── test_1.cpp │ ├── test_cli.cpp │ └── ext_timer.h ├── conf │ ├── gst_stress_12_hrs.conf │ ├── gst_stress_3_hrs.conf │ ├── gst_stress_6_hrs.conf │ ├── nv21 │ │ ├── gst_stress_3_hrs.conf │ │ └── pesm_1.conf │ ├── nv31 │ │ ├── gst_stress_3_hrs.conf │ │ └── pesm_1.conf │ ├── nv32 │ │ ├── gst_stress_3_hrs.conf │ │ └── pesm_1.conf │ ├── MI350X │ │ ├── pebb_single.conf │ │ └── pbqt_single.conf │ ├── MI355X │ │ ├── pebb_single.conf │ │ └── pbqt_single.conf │ └── pesm_1.conf ├── include │ ├── rvsmodule_if.h │ ├── rvsmodule_if0.h │ └── rvsinternal.h └── src │ └── rvsif_base.cpp ├── pbqt.so ├── include │ ├── .gitignore │ └── rvs_module.h ├── src │ └── .gitignore ├── .gitignore └── tests.cmake ├── pebb.so ├── include │ ├── .gitignore │ └── rvs_module.h ├── src │ └── .gitignore ├── .gitignore └── tests.cmake ├── pesm.so ├── include │ ├── .gitignore │ └── rvs_module.h ├── src │ └── .gitignore ├── .gitignore ├── test │ ├── test_sanity.cpp │ ├── unitactionbase.h │ └── unitactionbase.cpp └── tests.cmake ├── rcqt.so ├── include │ ├── .gitignore │ ├── rvs_module.h │ ├── packageHandlerRpm.h │ ├── packageHandlerZyp.h │ ├── packageHandlerDeb.h │ ├── handlerCreator.h │ ├── rpmPackageInfo.h │ ├── zypPackageInfo.h │ └── debPackageInfo.h ├── src │ ├── .gitignore │ └── metaPackageInfo.cpp └── .gitignore ├── testif.so ├── include │ ├── .gitignore │ └── rvs_module.h ├── src │ └── .gitignore ├── .gitignore └── tests.cmake ├── docs ├── conceptual │ └── index.rst ├── sphinx │ ├── requirements.in │ └── _toc.yml.in ├── license.md ├── how to │ └── use-rvs.rst ├── schemas │ ├── gst.schema │ ├── iet.schema │ ├── tst.schema │ ├── pebb.schema │ ├── pbqt.schema │ ├── mem.schema │ └── babel.schema ├── conf.py ├── install │ └── regression.md └── index.rst ├── rvsso.conf ├── edp.so ├── src │ └── .gitignore ├── tests.cmake └── include │ └── rvs_module.h ├── gpup.so ├── src │ └── .gitignore ├── .gitignore ├── include │ └── rvs_module.h ├── test │ └── test_nonameaction.cpp └── tests.cmake ├── gst.so ├── src │ └── .gitignore ├── .gitignore ├── tests.cmake └── include │ └── rvs_module.h ├── iet.so ├── src │ └── .gitignore ├── .gitignore ├── tests.cmake └── include │ └── rvs_module.h ├── peqt.so ├── src │ └── .gitignore ├── .gitignore ├── tests.cmake └── include │ └── rvs_module.h ├── perf.so ├── src │ └── .gitignore ├── tests.cmake └── include │ └── rvs_module.h ├── bin └── .gitignore ├── regression ├── run ├── build ├── run_no_config.sh ├── run_config.sh ├── run_config_testif.sh ├── run_single_test └── check_json_file.py ├── mem.so ├── doc │ └── saahpc_09.pdf ├── RELEASE ├── tests.cmake └── include │ ├── rvs_module.h │ └── rvs_memkernel.h ├── babel.so ├── doc │ └── saahpc_09.pdf ├── RELEASE ├── include │ ├── Stream.h │ ├── rvs_module.h │ ├── HIPStream.h │ └── rvs_memkernel.h ├── tests.cmake └── license.txt ├── gm.so ├── .gitignore └── include │ └── rvs_module.h ├── smqt.so ├── .gitignore ├── include │ └── rvs_module.h ├── test │ ├── unitsmqt.h │ ├── test_1.cpp │ └── unitsmqt.cpp └── tests.cmake ├── .github ├── CODEOWNERS └── dependabot.yml ├── DEBIAN ├── changelog.in └── copyright.in ├── CentOS.md ├── .readthedocs.yaml ├── .gitignore ├── .azuredevops └── rocm-ci.yml ├── rvs_batch_scripts ├── rvs_cron.sh ├── rvs_centos.sh └── rvs_single.sh ├── rvs-config.cmake.in ├── PREREQUISITES.md ├── LICENSE ├── REGRESSION.md ├── rvs_os_helper.sh ├── testscripts ├── rvs-mem.sh ├── gst.new.sh ├── pesm.new.sh ├── gpup.new.sh ├── iet.new.sh ├── pbqt.new.sh ├── pebb.new.sh ├── peqt.new.sh ├── rcqt.new.sh ├── smqt.new.sh └── rvs-stress-long.sh ├── tst.so └── include │ └── rvs_module.h ├── include ├── rvstrace.h ├── rsmi_util.h ├── rvslognodeint.h ├── rvslognodestring.h ├── rvsthreadbase.h └── rvslognode.h ├── src └── rvslognodebase.cpp ├── CMakeLists.txt.yaml ├── CMakeRSMIDownload.cmake ├── CMakeRBLASDownload.cmake ├── CMakeGtestDownload.cmake ├── CMakeMXDataGeneratorDownload.cmake └── CTestConfig.cmake /.gitmodules: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /rvs/empty.config: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pbqt.so/include/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pebb.so/include/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /pesm.so/include/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /rcqt.so/include/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /testif.so/include/.gitignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/conceptual/index.rst: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /rvsso.conf: -------------------------------------------------------------------------------- 1 | /opt/rocm/rvs/lib 2 | -------------------------------------------------------------------------------- /edp.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /gpup.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /gst.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /iet.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /pbqt.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /pebb.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /peqt.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /perf.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /pesm.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /rcqt.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /testif.so/src/.gitignore: -------------------------------------------------------------------------------- 1 | /libmain.cpp 2 | -------------------------------------------------------------------------------- /rvs/nomodule.config: -------------------------------------------------------------------------------- 1 | version: 1 2 | gpup: rvsmissing.so -------------------------------------------------------------------------------- /docs/sphinx/requirements.in: -------------------------------------------------------------------------------- 1 | rocm-docs-core==1.18.2 2 | -------------------------------------------------------------------------------- /bin/.gitignore: -------------------------------------------------------------------------------- 1 | *.so.* 2 | *.so.*.*.* 3 | .*.* 4 | rvs 5 | conf -------------------------------------------------------------------------------- /regression/run: -------------------------------------------------------------------------------- 1 | cd bin 2 | ./rvs -d 3 -c $1 2>&1 | tee $2 3 | -------------------------------------------------------------------------------- /regression/build: -------------------------------------------------------------------------------- 1 | cmake ./ -B../build 2 | cd ../build 3 | make 4 | -------------------------------------------------------------------------------- /docs/license.md: -------------------------------------------------------------------------------- 1 | # License 2 | 3 | ```{include} ../LICENSE 4 | ``` 5 | -------------------------------------------------------------------------------- /mem.so/doc/saahpc_09.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ROCm/ROCmValidationSuite/HEAD/mem.so/doc/saahpc_09.pdf -------------------------------------------------------------------------------- /babel.so/doc/saahpc_09.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ROCm/ROCmValidationSuite/HEAD/babel.so/doc/saahpc_09.pdf -------------------------------------------------------------------------------- /gm.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.* 9 | 10 | -------------------------------------------------------------------------------- /gst.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.* 9 | 10 | -------------------------------------------------------------------------------- /iet.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.* 9 | 10 | -------------------------------------------------------------------------------- /peqt.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.* 9 | 10 | -------------------------------------------------------------------------------- /pebb.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.*.*.* 9 | 10 | -------------------------------------------------------------------------------- /pesm.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.*.*.* 9 | 10 | -------------------------------------------------------------------------------- /rcqt.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /librcqt.so.* 9 | 10 | -------------------------------------------------------------------------------- /smqt.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.*.*.* 9 | 10 | -------------------------------------------------------------------------------- /testif.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.*.*.* 9 | 10 | -------------------------------------------------------------------------------- /pbqt.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /lib*.so.* 9 | /rand*.* 10 | 11 | -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @jkottiku @frepaul @manoj-freyr 2 | # Documentation files 3 | docs/* @ROCm/rocm-documentation 4 | *.md @ROCm/rocm-documentation 5 | *.rst @ROCm/rocm-documentation -------------------------------------------------------------------------------- /regression/run_no_config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mv .rvsmodules.config .rvsmodules.config.old 4 | ./rvsfail 5 | set retval=$ 6 | mv .rvsmodules.config.old .rvsmodules.config 7 | exit $retval 8 | 9 | -------------------------------------------------------------------------------- /DEBIAN/changelog.in: -------------------------------------------------------------------------------- 1 | @DEB_PACKAGE_NAME@ (@DEB_PACKAGE_VERSION@) stable; urgency=low 2 | 3 | * ROCm Runtime software stack Base Package. 4 | -- @DEB_MAINTAINER_NAME@ <@DEB_MAINTAINER_EMAIL@> @DEB_TIMESTAMP@ 5 | -------------------------------------------------------------------------------- /rvs/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /.project 5 | .cproject 6 | .csettings/ 7 | /cmake_install.cmake 8 | /CMakeCache.txt 9 | /Makefile 10 | /conf/rand* 11 | rvs 12 | -------------------------------------------------------------------------------- /rvs/novernum.config: -------------------------------------------------------------------------------- 1 | gpup: libgpup.so 2 | peqt: libpeqt.so 3 | pesm: libpesm.so 4 | rcqt: librcqt.so 5 | smqt: libsmqt.so 6 | gm: libgm.so 7 | gst: libgst.so 8 | pbqt: libpbqt.so 9 | pebb: libpebb.so 10 | iet: libiet.so 11 | -------------------------------------------------------------------------------- /gpup.so/.gitignore: -------------------------------------------------------------------------------- 1 | /.settings/ 2 | /CMakeFiles/ 3 | /Debug/ 4 | /build/ 5 | /cmake_install.cmake 6 | /Makefile 7 | /.project 8 | /libgpup.so.1 9 | /libgpup.so.1.0.0 10 | 11 | libgpup.so.0.0.1 12 | libgpup.so.1 13 | libgpup.so.1.0.0 14 | -------------------------------------------------------------------------------- /docs/how to/use-rvs.rst: -------------------------------------------------------------------------------- 1 | .. meta:: 2 | :description: Using ROCm Validation Suite 3 | :keywords: modules, installation, rocm validation suite, validation, AMD, ROCm 4 | 5 | ********************************* 6 | Using ROCm Validation Suite 7 | ********************************* 8 | -------------------------------------------------------------------------------- /regression/run_config.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mv .rvsmodules.config .rvsmodules.config.old 4 | rm -f .rvsmodules.config 5 | cp $1 .rvsmodules.config 6 | ./rvsfail 7 | set retval=$ 8 | rm -f .rvsmodules.config 9 | mv .rvsmodules.config.old .rvsmodules.config 10 | exit $retval 11 | 12 | -------------------------------------------------------------------------------- /regression/run_config_testif.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mv .rvsmodules.config .rvsmodules.config.old 4 | rm -f .rvsmodules.config 5 | cp $1 .rvsmodules.config 6 | $2 -c $3 7 | set retval=$ 8 | rm -f .rvsmodules.config 9 | mv .rvsmodules.config.old .rvsmodules.config 10 | exit $retval 11 | 12 | -------------------------------------------------------------------------------- /rvs/wrongvernum.config: -------------------------------------------------------------------------------- 1 | version: 1 2 | gpup: libgpup.so 3 | peqt: libpeqt.so 4 | pesm: libpesm.so 5 | rcqt: librcqt.so 6 | smqt: libsmqt.so 7 | gm: libgm.so 8 | gst: libgst.so 9 | pbqt: libpbqt.so 10 | pebb: libpebb.so 11 | iet: libiet.so 12 | mem: libmem.so 13 | babel: libbabel.so 14 | edp: libedp.so 15 | -------------------------------------------------------------------------------- /rvs/.rvsmodules.config: -------------------------------------------------------------------------------- 1 | version: 1 2 | gpup: libgpup.so 3 | peqt: libpeqt.so 4 | pesm: libpesm.so 5 | rcqt: librcqt.so 6 | smqt: libsmqt.so 7 | gm: libgm.so 8 | gst: libgst.so 9 | pbqt: libpbqt.so 10 | pebb: libpebb.so 11 | iet: libiet.so 12 | mem: libmem.so 13 | babel: libbabel.so 14 | perf: libperf.so 15 | tst: libtst.so 16 | -------------------------------------------------------------------------------- /rvs/testif.config: -------------------------------------------------------------------------------- 1 | version: 1 2 | testif_no_if_methods: libtestif_no_if_methods.so 3 | testif_no_if0: libtestif_no_if0.so 4 | testif_no_if0_methods: libtestif_no_if0_methods.so 5 | testif_no_if1: libtestif_no_if1.so 6 | testif_no_if1_methods: libtestif_no_if1_methods.so 7 | testif_fail_init: libtestif_fail_init.so 8 | testif_fail_create_action: libtestif_fail_create_action.so 9 | -------------------------------------------------------------------------------- /CentOS.md: -------------------------------------------------------------------------------- 1 | # CentOS docker image 2 | 3 | 1. start the docker image with the following command 4 | 5 | sudo docker run --privileged=true -it --network=host --device=/dev/kfd --device=/dev/dri --group-add video -v /home/user1:/home/root 9eb1aca8b124 6 | 7 | 2. enable devtoolset-7 environment 8 | 9 | scl enable devtoolset-7 bash 10 | 11 | 3. clone the RVS repository and compile 12 | 13 | 14 | -------------------------------------------------------------------------------- /.readthedocs.yaml: -------------------------------------------------------------------------------- 1 | # Read the Docs configuration file 2 | # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details 3 | 4 | version: 2 5 | 6 | sphinx: 7 | configuration: docs/conf.py 8 | 9 | formats: [htmlzip, pdf, epub] 10 | 11 | python: 12 | install: 13 | - requirements: docs/sphinx/requirements.txt 14 | 15 | build: 16 | os: ubuntu-22.04 17 | tools: 18 | python: "3.10" 19 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.metadata/ 2 | /CMakeFiles/ 3 | /launcher/ 4 | /RemoteSystemsTempFiles/ 5 | /build/ 6 | /Makefile 7 | /cmake_install.cmake 8 | /CMakeCache.txt 9 | documentation 10 | CMakeCache.txt 11 | Makefile 12 | cmake_install.cmake 13 | CMakeFiles 14 | yaml-cpp.pc 15 | /rocm_smi_lib 16 | 17 | # documentation artifacts 18 | build/ 19 | _build/ 20 | _images/ 21 | _static/ 22 | _templates/ 23 | _toc.yml 24 | docBin/ 25 | _doxygen/ 26 | -------------------------------------------------------------------------------- /docs/sphinx/_toc.yml.in: -------------------------------------------------------------------------------- 1 | defaults: 2 | numbered: False 3 | root: index 4 | subtrees: 5 | - caption: Install 6 | entries: 7 | - file: install/installation.rst 8 | title: ROCm Validation Suite installation 9 | 10 | 11 | - caption: How to 12 | entries: 13 | - file: how to/configure-rvs.rst 14 | title: Configure ROCm Validation Suite 15 | 16 | - caption: Conceptual 17 | entries: 18 | - file: conceptual/rvs-modules.rst 19 | title: ROCm Validation Suite modules 20 | 21 | 22 | - caption: About 23 | entries: 24 | - file: license.md 25 | -------------------------------------------------------------------------------- /babel.so/RELEASE: -------------------------------------------------------------------------------- 1 | 1.2.3 (2/7/2012) 2 | * Fixed a bug broke --max_num_blocks option 3 | * Slightly reduced the total memory allocated to allow future small memory allocation to work 4 | 5 | Thanks to mtisza and Rick (rick@microway.com) for patches. 6 | 7 | 8 | 1.2.2 (8/1/2011) 9 | * Change the "blocks" to "MB" in the printed message to avoid confusion 10 | * In trying to malloc maximum size global memory, the size is decreased by 16 MB per step 11 | instead of 1 MB to avoid a (possible) bug in cudaMalloc() 12 | * Print out version number 13 | 14 | 1.2.1 (7/22/2011) 15 | * fixed a message print problem for memory size > 4 GB (M2070/M2090/C2070) 16 | 17 | 18 | -------------------------------------------------------------------------------- /mem.so/RELEASE: -------------------------------------------------------------------------------- 1 | 1.2.3 (2/7/2012) 2 | * Fixed a bug broke --max_num_blocks option 3 | * Slightly reduced the total memory allocated to allow future small memory allocation to work 4 | 5 | Thanks to mtisza and Rick (rick@microway.com) for patches. 6 | 7 | 8 | 1.2.2 (8/1/2011) 9 | * Change the "blocks" to "MB" in the printed message to avoid confusion 10 | * In trying to malloc maximum size global memory, the size is decreased by 16 MB per step 11 | instead of 1 MB to avoid a (possible) bug in cudaMalloc() 12 | * Print out version number 13 | 14 | 1.2.1 (7/22/2011) 15 | * fixed a message print problem for memory size > 4 GB (M2070/M2090/C2070) 16 | 17 | 18 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- 1 | # To get started with Dependabot version updates, you'll need to specify which 2 | # package ecosystems to update and where the package manifests are located. 3 | # Please see the documentation for all configuration options: 4 | # https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates 5 | 6 | version: 2 7 | updates: 8 | - package-ecosystem: "pip" # See documentation for possible values 9 | directory: "/docs/sphinx" # Location of package manifests 10 | open-pull-requests-limit: 10 11 | schedule: 12 | interval: "daily" 13 | labels: 14 | - "m-DOC" 15 | - "dependencies" 16 | reviewers: 17 | - "samjwu" 18 | -------------------------------------------------------------------------------- /.azuredevops/rocm-ci.yml: -------------------------------------------------------------------------------- 1 | resources: 2 | repositories: 3 | - repository: pipelines_repo 4 | type: github 5 | endpoint: ROCm 6 | name: ROCm/ROCm 7 | 8 | variables: 9 | - group: common 10 | - template: /.azuredevops/variables-global.yml@pipelines_repo 11 | 12 | trigger: 13 | batch: true 14 | branches: 15 | include: 16 | - master 17 | paths: 18 | exclude: 19 | - .github 20 | - docs 21 | - '.*.y*ml' 22 | - '*.md' 23 | - LICENSE 24 | 25 | pr: 26 | autoCancel: true 27 | branches: 28 | include: 29 | - master 30 | paths: 31 | exclude: 32 | - .github 33 | - docs 34 | - '.*.y*ml' 35 | - '*.md' 36 | - LICENSE 37 | drafts: false 38 | 39 | jobs: 40 | - template: ${{ variables.CI_COMPONENT_PATH }}/ROCmValidationSuite.yml@pipelines_repo 41 | -------------------------------------------------------------------------------- /rvs_batch_scripts/rvs_cron.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | export RVS_BATCH_SCRIPTS=/work/rvs_batch_scripts 5 | 6 | export RVS_BATCH_UTC=`date -u` 7 | export RVS_UID=`id -u`:`id -g` 8 | echo ${RVS_BATCH_UTC}" 1. batch started UID "${RVS_UID} > $RVS_BATCH_SCRIPTS/cron.log 9 | 10 | # run Ubuntu batch builds 11 | export RVS_BATCH_UTC=`date -u` 12 | echo ${RVS_BATCH_UTC}" 2. run ubuntu " >> $RVS_BATCH_SCRIPTS/cron.log 13 | cd ${RVS_BATCH_SCRIPTS} 14 | ${RVS_BATCH_SCRIPTS}/rvs_ubuntu.sh 15 | 16 | 17 | # runc CentOS Docker image and test script 18 | export RVS_BATCH_UTC=`date -u` 19 | echo ${RVS_BATCH_UTC}" 3. run centos " >> $RVS_BATCH_SCRIPTS/cron.log 20 | 21 | cd ${RVS_BATCH_SCRIPTS} 22 | ${RVS_BATCH_SCRIPTS}/rvs_centos.sh 23 | 24 | export RVS_BATCH_UTC=`date -u` 25 | echo ${RVS_BATCH_UTC}" 4. batch finished " >> $RVS_BATCH_SCRIPTS/cron.log 26 | -------------------------------------------------------------------------------- /rvs_batch_scripts/rvs_centos.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | export RVS_BATCH_SCRIPTS=/work/rvs_batch_scripts 5 | export RVS_BATCH_UTC=`date -u` 6 | export RVS_UID=`id -u`:`id -g` 7 | echo ${RVS_BATCH_UTC}" - CentOS batch started UID "${RVS_UID} > $RVS_BATCH_SCRIPTS/centos.log 8 | 9 | strcmd="docker run --privileged=true --rm --network=host --device=/dev/kfd --device=/dev/dri --group-add video -v /home/user1:/home/root -v /work/rvs_batch_scripts:/work/batch_scripts 88e8c5704c2e /work/batch_scripts/rvs_centos_docker.sh 2>>$RVS_BATCH_SCRIPTS/centos.log" 10 | 11 | echo $strcmd >> $RVS_BATCH_SCRIPTS/centos.log 12 | 13 | eval $strcmd 14 | 15 | errcode=$? 16 | 17 | if [ $errcode != 0 ]; then 18 | echo "Error: " $errcode >> $RVS_BATCH_SCRIPTS/centos.log 19 | fi 20 | 21 | export RVS_BATCH_UTC=`date -u` 22 | echo ${RVS_BATCH_UTC}" - CentOS batch finsihed " >> $RVS_BATCH_SCRIPTS/centos.log 23 | -------------------------------------------------------------------------------- /regression/run_single_test: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # arguments: 4 | # bin path $1 5 | # conf file $2 6 | # log level $3 7 | # output file $4 8 | # has json output $5 9 | # console file $6 10 | 11 | # possible rvs variants 12 | # -l file -j (json log is writen to file) 13 | # -l file (console log is writen to file) 14 | # (no file is written to) 15 | 16 | cd $1 17 | 18 | # clear logs (file) 19 | if [ -f $4 ] 20 | then 21 | rm $4 22 | fi 23 | 24 | # clear logs (console) 25 | if [ -f $6 ] 26 | then 27 | rm $6 28 | fi 29 | 30 | if [ "$4" = "no_log" ] 31 | then 32 | # no log file 33 | ./rvs -d $3 -c $2 > $6 34 | else 35 | if [ "$5" = "true" ] 36 | then 37 | # json log file 38 | ./rvs -d $3 -c $2 -l $4 -j > $6 39 | else 40 | # console log file 41 | ./rvs -d $3 -c $2 -l $4 > $6 42 | fi 43 | fi 44 | -------------------------------------------------------------------------------- /rvs-config.cmake.in: -------------------------------------------------------------------------------- 1 | # Config file for rocm-validation-suite (RVS) package 2 | # The following variables are defined here 3 | # ROCM_VALIDATION_SUITE_LIBRARY - RVS library 4 | # rocm_validation_suite_LIBRARY - RVS library 5 | # ROCM_VALIDATION_SUITE_INCLUDE_DIR - RVS include directory 6 | # rocm_validation_suite_INCLUDE_DIR - RVS include directory 7 | # ROCM_VALIDATION_SUITE_LIB_DIR - RVS library directory 8 | # rocm_validation_suite_LIB_DIR - RVS library directory 9 | 10 | # Compute paths 11 | @PACKAGE_INIT@ 12 | 13 | set_and_check(rocm_validation_suite_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@") 14 | set_and_check(ROCM_VALIDATION_SUITE_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@") 15 | set_and_check(rocm_validation_suite_LIB_DIR "@PACKAGE_LIB_INSTALL_DIR@") 16 | set_and_check(ROCM_VALIDATION_SUITE_LIB_DIR "@PACKAGE_LIB_INSTALL_DIR@") 17 | 18 | set(ROCM_VALIDATION_SUITE_LIBRARY rvslib) 19 | set(rocm_validation_suite_LIBRARY rvslib) 20 | 21 | check_required_components(rocm_validation_suite) 22 | -------------------------------------------------------------------------------- /PREREQUISITES.md: -------------------------------------------------------------------------------- 1 | 2 | # Prerequisites 3 | 4 | In order to build RVS from source, you need to have several packages on your 5 | system: 6 | 7 | - GCC 5.4.0 8 | - ROCm 1.8 9 | - CMake 3.5.0 10 | - libpci-dev 11 | - Doxygen 1.8.11 12 | 13 | ## GCC 14 | GCC 5.4.0 or later should already be installed on your system. 15 | If not, refere to GCC installation instructions. 16 | 17 | ## ROCm 1.8 18 | Please install following ROCm installation instructions. 19 | 20 | ## CMake 21 | 22 | If CMake is not installed on your system you may install it like this: 23 | 24 | sudo apt-get install software-properties-common 25 | sudo add-apt-repository ppa:george-edison55/cmake-3.x 26 | sudo apt-get update 27 | 28 | sudo apt-get install cmake 29 | 30 | ## libpci-dev 31 | 32 | First install `libpci3.s0`: 33 | 34 | sudo apt-get update 35 | sudo apt-get install libpci3 36 | 37 | Then install header files: 38 | 39 | sudo apt-get install libpci-dev 40 | 41 | ## Doxygen 42 | 43 | For Ubuntu: 44 | 45 | sudo apt-get update 46 | sudo apt-get install doxygen 47 | 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /docs/schemas/gst.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schema#", 3 | "type": "object", 4 | "properties": { 5 | "version" : { 6 | "type": "string", 7 | "const": "1.0" 8 | }, 9 | "gst": { 10 | "type": "object", 11 | "additionalProperties": { 12 | "type": "array", 13 | "items": { 14 | "type": "object", 15 | "properties": { 16 | "target": { 17 | "type": "string" 18 | }, 19 | "dtype": { 20 | "type": "string" 21 | }, 22 | "gpu_id": { 23 | "type": "string" 24 | }, 25 | "gflops": { 26 | "type": "string" 27 | }, 28 | "gpu_index": { 29 | "type": "string" 30 | }, 31 | "pass": { 32 | "type": "string" 33 | } 34 | } 35 | }, 36 | "minItems": 1 37 | } 38 | } 39 | }, 40 | "required": [ 41 | "gst" 42 | ] 43 | } 44 | -------------------------------------------------------------------------------- /docs/schemas/iet.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schema#", 3 | "type": "object", 4 | "properties": { 5 | "version" : { 6 | "type": "string", 7 | "const": "1.0" 8 | }, 9 | "iet": { 10 | "type": "object", 11 | "additionalProperties": { 12 | "type": "array", 13 | "items": { 14 | "type": "object", 15 | "properties": { 16 | "target_power": { 17 | "type": "string" 18 | }, 19 | "dtype": { 20 | "type": "string" 21 | }, 22 | "gpu_id": { 23 | "type": "string" 24 | }, 25 | "gpu_index": { 26 | "type": "string" 27 | }, 28 | "average power": { 29 | "type": "string" 30 | }, 31 | "pass": { 32 | "type": "string" 33 | } 34 | } 35 | }, 36 | "minItems": 1 37 | } 38 | } 39 | }, 40 | "required": [ 41 | "iet" 42 | ] 43 | } 44 | -------------------------------------------------------------------------------- /docs/schemas/tst.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schema#", 3 | "type": "object", 4 | "properties": { 5 | "version" : { 6 | "type": "string", 7 | "const": "1.0" 8 | }, 9 | "tst": { 10 | "type": "object", 11 | "additionalProperties": { 12 | "type": "array", 13 | "items": { 14 | "type": "object", 15 | "properties": { 16 | "target_temp": { 17 | "type": "string" 18 | }, 19 | "dtype": { 20 | "type": "string" 21 | }, 22 | "gpu_id": { 23 | "type": "string" 24 | }, 25 | "gpu_index": { 26 | "type": "string" 27 | }, 28 | "average edge temperature": { 29 | "type": "string" 30 | }, 31 | "pass": { 32 | "type": "string" 33 | } 34 | } 35 | }, 36 | "minItems": 1 37 | } 38 | } 39 | }, 40 | "required": [ 41 | "tst" 42 | ] 43 | } 44 | -------------------------------------------------------------------------------- /docs/schemas/pebb.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schema#", 3 | "type": "object", 4 | "properties": { 5 | "version" : { 6 | "type": "string", 7 | "const": "1.0" 8 | }, 9 | "pebb": { 10 | "type": "object", 11 | "additionalProperties": { 12 | "type": "array", 13 | "items": { 14 | "type": "object", 15 | "properties": { 16 | "srccpu": { 17 | "type": "string" 18 | }, 19 | "dstgpu": { 20 | "type": "string" 21 | }, 22 | "intf": { 23 | "type": "string" 24 | }, 25 | "pass": { 26 | "type": "string" 27 | }, 28 | "throughput": { 29 | "type": "string" 30 | } 31 | }, 32 | "required": [ 33 | "dstgpu", 34 | "pass", 35 | "srccpu" 36 | ] 37 | } 38 | } 39 | } 40 | }, 41 | "required": [ 42 | "pebb" 43 | ] 44 | } 45 | -------------------------------------------------------------------------------- /docs/schemas/pbqt.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schema#", 3 | "type": "object", 4 | "properties": { 5 | "version" : { 6 | "type": "string", 7 | "const": "1.0" 8 | }, 9 | "pbqt": { 10 | "type": "object", 11 | "additionalProperties": { 12 | "type": "array", 13 | "items": { 14 | "type": "object", 15 | "properties": { 16 | "srcgpu": { 17 | "type": "string" 18 | }, 19 | "dstgpu": { 20 | "type": "string" 21 | }, 22 | "intf": { 23 | "type": "string" 24 | }, 25 | "throughput": { 26 | "type": "string" 27 | }, 28 | "pass": { 29 | "type": "string" 30 | } 31 | }, 32 | "required": [ 33 | "dstgpu", 34 | "intf", 35 | "pass", 36 | "srcgpu", 37 | "throughput" 38 | ] 39 | } 40 | } 41 | } 42 | }, 43 | "required": [ 44 | "pbqt" 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- 1 | # Configuration file for the Sphinx documentation builder. 2 | # 3 | # This file only contains a selection of the most common options. For a full 4 | # list see the documentation: 5 | # https://www.sphinx-doc.org/en/master/usage/configuration.html 6 | 7 | import re 8 | 9 | with open('../CMakeLists.txt', encoding='utf-8') as f: 10 | match = re.search(r'project\s*\(.*VERSION\s+([0-9.]+)\)', f.read(), re.DOTALL) 11 | if not match: 12 | raise ValueError("VERSION not found!") 13 | version_number = match[1] 14 | 15 | left_nav_title = f"RVS {version_number} Documentation" 16 | 17 | exclude_patterns = [ 18 | 'ug1main.md' 19 | ] 20 | 21 | # for PDF output on Read the Docs 22 | project = "RVS Documentation" 23 | author = "Advanced Micro Devices, Inc." 24 | copyright = "Copyright (c) 2023-2025 Advanced Micro Devices, Inc. All rights reserved." 25 | version = version_number 26 | release = version_number 27 | 28 | html_title = left_nav_title 29 | extensions = ["rocm_docs"] 30 | html_theme = "rocm_docs_theme" 31 | html_theme_options = {"flavor": "rocm"} 32 | external_projects_current_project = "rocmvalidationsuite" 33 | external_toc_path = "./sphinx/_toc.yml" 34 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018-2025 Advanced Micro Devices, Inc. All rights reserved. 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /rvs_batch_scripts/rvs_single.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | export RVS_CTEST_BUILD_TYPE=Experimental 4 | export RVS_BATCH_SCRIPTS=/work/rvs_batch_scripts 5 | export RVS_BATCH_BUILD=/work/tst_batch_build 6 | 7 | export RVS_HOST="Ubuntu 16.04" 8 | export RVS_WB=${RVS_BATCH_BUILD}/ubuntu 9 | mkdir -p ${RVS_WB} 10 | cd ${RVS_WB} 11 | 12 | echo "RVS_CTEST_BUILD_TYPE=${RVS_CTEST_BUILD_TYPE}">$RVS_BATCH_SCRIPTS/single.log 13 | 14 | # build and test branch develop 15 | rm -rf build 16 | rm -rf ROCmValidationSuite 17 | 18 | export RVS_BATCH_UTC=`date -u` 19 | export RVS_UID=`id -u`:`id -g` 20 | 21 | mkdir -p ${RVS_WB}/build 22 | 23 | echo ${RVS_BATCH_UTC}" 1. before ctest UID: "${RVS_UID} >> $RVS_BATCH_SCRIPTS/single.log 24 | 25 | ctest -DRVS_TAG=" EXP " \ 26 | -DRVS_BRANCH:STRING=develop \ 27 | -DCTEST_BUILD_CONFIGURATION=Debug -DRVS_CTEST_BUILD_TYPE:STRING=${RVS_CTEST_BUILD_TYPE} \ 28 | -DRVS_COVERAGE:BOOL=TRUE -DRVS_BUILD_TESTS:BOOL=TRUE -DWITH_TESTING:BOOL=TRUE \ 29 | -DRVS_ROCBLAS=0 -DRVS_ROCMSMI=1 \ 30 | -DRVS_HOST:STRING="${RVS_HOST}" -S ${RVS_BATCH_SCRIPTS}/rvs_ctest_nightly.cmake 31 | 32 | export RVS_BATCH_UTC=`date -u` 33 | echo ${RVS_BATCH_UTC}" 2. after ctest " >> $RVS_BATCH_SCRIPTS/single.log 34 | 35 | -------------------------------------------------------------------------------- /REGRESSION.md: -------------------------------------------------------------------------------- 1 | # Regression 2 | 3 | Regression is currently implemented for GST, PET, PEBB, PEQT, IET and RAND module only. 4 | It comes in the form of a Python script `run_regression.py`. 5 | 6 | The script will first create valid configuration files on 7 | `$RVS_BUILD/regression` folder. It is done by invoking `prq_create_conf.py` 8 | script to generate valid configuration files. 9 | 10 | Then, it will iterate through generated files and invoke RVS to specifying also 11 | log output and `-d 3` logging level. 12 | 13 | Finally, it will iterate over generated log output files and search for `ERROR` 14 | string. Results are written into `$RVS_BUILD/regression/regression_res` 15 | file. 16 | 17 | Results are written into $RVS_BUILD/regression/ 18 | 19 | ## Environment variables 20 | 21 | Before running the run_regression.py you first need to set the following 22 | environment variables for location of RVS source tree and build folders 23 | (adjust for your particular clone): 24 | 25 | export WB=/work/yourworkfolder 26 | export RVS=$WB/ROCmValidationSuite 27 | export RVS_BUILD=$RVS/../build 28 | 29 | ## Running the script 30 | 31 | Just do: 32 | 33 | cd $RVS/regression 34 | ./run_regression.py 35 | 36 | -------------------------------------------------------------------------------- /docs/install/regression.md: -------------------------------------------------------------------------------- 1 | # Regression 2 | 3 | Regression is currently implemented for GST, PET, PEBB, PEQT, IET and RAND module only. 4 | It comes in the form of a Python script `run_regression.py`. 5 | 6 | The script will first create valid configuration files on 7 | `$RVS_BUILD/regression` folder. It is done by invoking `prq_create_conf.py` 8 | script to generate valid configuration files. 9 | 10 | Then, it will iterate through generated files and invoke RVS to specifying also 11 | log output and `-d 3` logging level. 12 | 13 | Finally, it will iterate over generated log output files and search for `ERROR` 14 | string. Results are written into `$RVS_BUILD/regression/regression_res` 15 | file. 16 | 17 | Results are written into $RVS_BUILD/regression/ 18 | 19 | ## Environment variables 20 | 21 | Before running the run_regression.py you first need to set the following 22 | environment variables for location of RVS source tree and build folders 23 | (adjust for your particular clone): 24 | 25 | export WB=/work/yourworkfolder 26 | export RVS=$WB/ROCmValidationSuite 27 | export RVS_BUILD=$RVS/../build 28 | 29 | ## Running the script 30 | 31 | Just do: 32 | 33 | cd $RVS/regression 34 | ./run_regression.py 35 | -------------------------------------------------------------------------------- /babel.so/include/Stream.h: -------------------------------------------------------------------------------- 1 | 2 | // Copyright (c) 2015-16 Tom Deakin, Simon McIntosh-Smith, 3 | // University of Bristol HPC 4 | // 5 | // For full license terms please see the LICENSE file distributed with this 6 | // source code 7 | 8 | #pragma once 9 | 10 | #include 11 | #include 12 | 13 | // Array values 14 | #define startA (0.1) 15 | #define startB (0.2) 16 | #define startC (0.0) 17 | #define startScalar (0.4) 18 | 19 | template 20 | class Stream 21 | { 22 | public: 23 | 24 | virtual ~Stream(){} 25 | 26 | // Kernels 27 | // These must be blocking calls 28 | virtual float read() = 0; 29 | virtual float write() = 0; 30 | virtual float copy() = 0; 31 | virtual float mul() = 0; 32 | virtual float add() = 0; 33 | virtual float triad() = 0; 34 | virtual T dot() = 0; 35 | 36 | // Copy memory between host and device 37 | virtual void init_arrays(T initA, T initB, T initC) = 0; 38 | virtual void read_arrays(std::vector& a, std::vector& b, std::vector& c) = 0; 39 | 40 | }; 41 | 42 | 43 | // Implementation specific device functions 44 | void listDevices(void); 45 | std::string getDeviceName(const int); 46 | std::string getDeviceDriver(const int); 47 | -------------------------------------------------------------------------------- /docs/schemas/mem.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schema#", 3 | "type": "object", 4 | "properties": { 5 | "version" : { 6 | "type": "string", 7 | "const": "1.0" 8 | }, 9 | "mem": { 10 | "type": "object", 11 | "properties": { 12 | "action_1": { 13 | "type": "array", 14 | "items": { 15 | "type": "object", 16 | "properties": { 17 | "gpu_id": { 18 | "type": "string" 19 | },"gpu_index": { 20 | "type": "string" 21 | }, 22 | "Test": { 23 | "type": "string" 24 | }, 25 | "Time Taken": { 26 | "type": "string" 27 | }, 28 | "errors": { 29 | "type": "string" 30 | }, 31 | "pass": { 32 | "type": "string" 33 | } 34 | }, 35 | "required": [ 36 | "Test", 37 | "Time Taken", 38 | "errors", 39 | "gpu_id", 40 | "gpu_index", 41 | "pass" 42 | ] 43 | } 44 | } 45 | }, 46 | "required": [ 47 | "action_1" 48 | ] 49 | } 50 | }, 51 | "required": [ 52 | "mem" 53 | ] 54 | } 55 | -------------------------------------------------------------------------------- /DEBIAN/copyright.in: -------------------------------------------------------------------------------- 1 | Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ 2 | Upstream-Name: @DEB_PACKAGE_NAME@ 3 | Upstream-Contact: @DEB_MAINTAINER_NAME@ <@DEB_MAINTAINER_EMAIL@> 4 | Source: https://github.com/ROCm/@DEB_PACKAGE_NAME@ 5 | Files: * 6 | License: @DEB_LICENSE@ 7 | Copyright: @DEB_COPYRIGHT_YEAR@ Advanced Micro Devices, Inc. All rights Reserved. 8 | 9 | Permission is hereby granted, free of charge, to any person obtaining a copy 10 | of this software and associated documentation files (the "Software"), to deal 11 | in the Software without restriction, including without limitation the rights 12 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 13 | copies of the Software, and to permit persons to whom the Software is 14 | furnished to do so, subject to the following conditions: 15 | 16 | The above copyright notice and this permission notice shall be included in all 17 | copies or substantial portions of the Software. 18 | 19 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 20 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 21 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 22 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 23 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 24 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 25 | SOFTWARE. 26 | -------------------------------------------------------------------------------- /babel.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /edp.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /gst.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /iet.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /mem.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /pebb.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /peqt.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /perf.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | include(tests_conf_logging) 28 | -------------------------------------------------------------------------------- /rvs_os_helper.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/bash 27 | cat /etc/os-release|grep ^ID=|sed 's/ID=//;s/"//g' 28 | -------------------------------------------------------------------------------- /testscripts/rvs-mem.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'mem';../../../bin/rvs -c ../conf/mem.conf -d 3; date 29 | -------------------------------------------------------------------------------- /regression/check_json_file.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | 3 | import os 4 | import mmap 5 | import sys 6 | import json 7 | 8 | #print "Number of arguments: ", len(sys.argv) 9 | #print "The arguments are: " , str(sys.argv) 10 | 11 | # -------------------- 12 | # passed arguments: 13 | # -------------------- 14 | # json log path 15 | # -------------------- 16 | 17 | json_log_path = sys.argv[1] 18 | 19 | # result test pass/fail 20 | test_result = True 21 | 22 | # check json output file 23 | if os.path.isfile(json_log_path): 24 | f = open(json_log_path) 25 | # validate json format 26 | print "check json format" 27 | try: 28 | data = json.load(f) 29 | json_has_res_err = False 30 | for d in data: 31 | json_line = d['loglevelname'] 32 | print json_line 33 | if json_line == 'RESULT': 34 | print "JSON Found RESULT" 35 | json_has_res_err = True 36 | break 37 | if json_line == 'ERROR ': 38 | print "JSON Found ERROR" 39 | json_has_res_err = True 40 | break 41 | if json_has_res_err == False: 42 | print "JSON No found RESULT/ERROR" 43 | test_result = False 44 | except ValueError as e: 45 | print('Invalid json: %s' % e) 46 | test_result = False 47 | f.close() 48 | else: 49 | print "No file found" 50 | test_result = False 51 | 52 | # return result 53 | if test_result == True: 54 | print json_log_path + " - PASS" 55 | sys.exit(0) 56 | else: 57 | print json_log_path + " - FAIL" 58 | sys.exit(1) 59 | -------------------------------------------------------------------------------- /testscripts/gst.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'gst';../../../bin/rvs -c ../conf/gst_single.conf -d 3; date 29 | -------------------------------------------------------------------------------- /testscripts/pesm.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'pesm_1';../../../bin/rvs -c ../conf/pesm_1.conf -d 3; date 29 | -------------------------------------------------------------------------------- /docs/schemas/babel.schema: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json-schema.org/schema#", 3 | "type": "object", 4 | "properties": { 5 | "version" : { 6 | "type": "string", 7 | "const": "1.0" 8 | }, 9 | "babel": { 10 | "type": "object", 11 | "additionalProperties": { 12 | "type": "array", 13 | "items": { 14 | "type": "object", 15 | "properties": { 16 | "gpu_id": { 17 | "type": "string" 18 | }, 19 | "gpu_index": { 20 | "type": "string" 21 | }, 22 | "Array size": { 23 | "type": "string" 24 | }, 25 | "Total size": { 26 | "type": "string" 27 | }, 28 | "Iterations": { 29 | "type": "string" 30 | }, 31 | "Function": { 32 | "type": "string" 33 | }, 34 | "MBytes/sec": { 35 | "type": "string" 36 | }, 37 | "Min(s)": { 38 | "type": "string" 39 | }, 40 | "Max(s)": { 41 | "type": "string" 42 | }, 43 | "Average(s)": { 44 | "type": "string" 45 | }, 46 | "pass": { 47 | "type": "string" 48 | } 49 | } 50 | }, 51 | "minItems": 1 52 | } 53 | } 54 | }, 55 | "required": [ 56 | "babel" 57 | ] 58 | } 59 | -------------------------------------------------------------------------------- /testif.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | 27 | # add unit tests 28 | include(tests_unit) 29 | 30 | # Add configuration tests 31 | include(tests_conf_testif) 32 | 33 | -------------------------------------------------------------------------------- /testscripts/gpup.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'gpup';../../../bin/rvs -c ../conf/gpup_single.conf -d 3; date 29 | -------------------------------------------------------------------------------- /testscripts/iet.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'iet';../../../bin/rvs -c ../conf/iet_single.conf -d 3 && date 29 | -------------------------------------------------------------------------------- /testscripts/pbqt.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'pbqt';../../../bin/rvs -c ../conf/pbqt_single.conf -d 3; date 29 | -------------------------------------------------------------------------------- /testscripts/pebb.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'pebb';../../../bin/rvs -c ../conf/pebb_single.conf -d 3 ; date 29 | -------------------------------------------------------------------------------- /testscripts/peqt.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'peqt';../../../bin/rvs -c ../conf/peqt_single.conf -d 3;date 29 | -------------------------------------------------------------------------------- /testscripts/rcqt.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'rcqt';../../../bin/rvs -c ../conf/rcqt_single.conf -d 3; date 29 | 30 | -------------------------------------------------------------------------------- /rvs/test/test_1.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | 27 | 28 | #include "gtest/gtest.h" 29 | 30 | 31 | TEST(rvs, sanity) { 32 | EXPECT_EQ(strlen("Test"), 4u); 33 | EXPECT_EQ(strlen(""), 0u); 34 | } 35 | -------------------------------------------------------------------------------- /pesm.so/test/test_sanity.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | 27 | 28 | #include "gtest/gtest.h" 29 | 30 | 31 | TEST(pesm, sanity) { 32 | EXPECT_EQ(strlen("Test"), 4u); 33 | EXPECT_EQ(strlen(""), 0u); 34 | } 35 | -------------------------------------------------------------------------------- /gm.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************* * 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef GM_SO_INCLUDE_RVS_MODULE_H_ 26 | #define GM_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // GM_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /iet.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef IET_SO_INCLUDE_RVS_MODULE_H_ 26 | #define IET_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // IET_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /pbqt.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef PBQT_SO_INCLUDE_RVS_MODULE_H_ 26 | #define PBQT_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // PBQT_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /pebb.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef PEBB_SO_INCLUDE_RVS_MODULE_H_ 26 | #define PEBB_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // PEBB_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /peqt.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef PEQT_SO_INCLUDE_RVS_MODULE_H_ 26 | #define PEQT_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // PEQT_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /pesm.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef PESM_SO_INCLUDE_RVS_MODULE_H_ 26 | #define PESM_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // PESM_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /rcqt.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef RCQT_SO_INCLUDE_RVS_MODULE_H_ 26 | #define RCQT_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // RCQT_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /tst.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2023 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef TST_SO_INCLUDE_RVS_MODULE_H_ 26 | #define TST_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // TST_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /babel.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef RVS_SO_INCLUDE_RVS_MODULE_H_ 26 | #define RVS_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | 31 | #endif // GST_SO_INCLUDE_RVS_MODULE_H_ 32 | -------------------------------------------------------------------------------- /edp.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef GST_SO_INCLUDE_RVS_MODULE_H_ 26 | #define GST_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | 31 | #endif // GST_SO_INCLUDE_RVS_MODULE_H_ 32 | -------------------------------------------------------------------------------- /gst.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef GST_SO_INCLUDE_RVS_MODULE_H_ 26 | #define GST_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | 31 | #endif // GST_SO_INCLUDE_RVS_MODULE_H_ 32 | -------------------------------------------------------------------------------- /mem.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef GST_SO_INCLUDE_RVS_MODULE_H_ 26 | #define GST_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | 31 | #endif // GST_SO_INCLUDE_RVS_MODULE_H_ 32 | -------------------------------------------------------------------------------- /smqt.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef SMQT_SO_INCLUDE_RVS_MODULE_H_ 26 | #define SMQT_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif /* SMQT_SO_INCLUDE_RVS_MODULE_H_ */ 31 | -------------------------------------------------------------------------------- /gpup.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * 3 | * 4 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 5 | * 6 | * MIT LICENSE: 7 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 8 | * this software and associated documentation files (the "Software"), to deal in 9 | * the Software without restriction, including without limitation the rights to 10 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 11 | * of the Software, and to permit persons to whom the Software is furnished to do 12 | * so, subject to the following conditions: 13 | * 14 | * The above copyright notice and this permission notice shall be included in all 15 | * copies or substantial portions of the Software. 16 | * 17 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 20 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 21 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 22 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 23 | * SOFTWARE. 24 | * 25 | *******************************************************************************/ 26 | #ifndef GPUP_SO_INCLUDE_RVS_MODULE_H_ 27 | #define GPUP_SO_INCLUDE_RVS_MODULE_H_ 28 | 29 | #include "include/rvsliblog.h" 30 | 31 | #endif // GPUP_SO_INCLUDE_RVS_MODULE_H_ 32 | -------------------------------------------------------------------------------- /perf.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef PERF_SO_INCLUDE_RVS_MODULE_H_ 26 | #define PERF_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | 31 | #endif // PERF_SO_INCLUDE_RVS_MODULE_H_ 32 | -------------------------------------------------------------------------------- /testif.so/include/rvs_module.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef TESTIF_SO_INCLUDE_RVS_MODULE_H_ 26 | #define TESTIF_SO_INCLUDE_RVS_MODULE_H_ 27 | 28 | #include "include/rvsliblog.h" 29 | 30 | #endif // TESTIF_SO_INCLUDE_RVS_MODULE_H_ 31 | -------------------------------------------------------------------------------- /testscripts/smqt.new.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | date 28 | echo 'smqt_1';sudo ../../../bin/rvs -c ../conf/smqt_1.conf -d 3; date 29 | echo 'smqt_2';sudo ../../../bin/rvs -c ../conf/smqt_2.conf -d 3; date 30 | echo 'smqt_3';sudo ../../../bin/rvs -c ../conf/smqt_3.conf -d 3; date 31 | 32 | -------------------------------------------------------------------------------- /gpup.so/test/test_nonameaction.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | 27 | 28 | #include "gtest/gtest.h" 29 | 30 | #include "include/action.h" 31 | 32 | 33 | TEST(gpup, no_name_action) { 34 | gpup_action* p = new gpup_action; 35 | ASSERT_NE(p, nullptr); 36 | int sts = 0; 37 | sts = p->run(); 38 | delete p; 39 | EXPECT_NE(sts, 0); 40 | } 41 | -------------------------------------------------------------------------------- /include/rvstrace.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef INCLUDE_RVSTRACE_H_ 26 | #define INCLUDE_RVSTRACE_H_ 27 | 28 | #include 29 | #include 30 | 31 | /* 32 | // uncomment to enable tracing 33 | #define DTRACE_ std::cout << __FILE__ << " " << __func__<<":"\ 34 | << std::to_string(__LINE__) << std::endl; 35 | */ 36 | 37 | #ifndef DTRACE_ 38 | #define DTRACE_ 39 | #endif 40 | 41 | #endif // INCLUDE_RVSTRACE_H_ 42 | -------------------------------------------------------------------------------- /babel.so/include/HIPStream.h: -------------------------------------------------------------------------------- 1 | 2 | // Copyright (c) 2015-16 Tom Deakin, Simon McIntosh-Smith, 3 | // University of Bristol HPC 4 | // 5 | // For full license terms please see the LICENSE file distributed with this 6 | // source code 7 | 8 | #pragma once 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | #include "Stream.h" 16 | #include "hip/hip_runtime.h" 17 | #ifndef __HIP_PLATFORM_NVCC__ 18 | #include "hip/hip_ext.h" 19 | #endif 20 | 21 | #define IMPLEMENTATION_STRING "HIP" 22 | 23 | template 24 | class HIPStream : public Stream 25 | { 26 | 27 | protected: 28 | 29 | unsigned int dwords_per_lane; 30 | unsigned int chunks_per_block; 31 | unsigned int elements_per_lane; 32 | unsigned int tb_size; 33 | 34 | // Size of arrays 35 | const unsigned int array_size; 36 | unsigned int block_cnt; 37 | const bool evt_timing; 38 | hipEvent_t start_ev; 39 | hipEvent_t stop_ev; 40 | hipEvent_t coherent_ev; 41 | 42 | // Host array for partial sums for dot kernel 43 | T *sums; 44 | 45 | // Device side pointers to arrays 46 | T *d_a; 47 | T *d_b; 48 | T *d_c; 49 | 50 | public: 51 | HIPStream(const unsigned int, const bool, const int, 52 | const unsigned int, const unsigned int, const unsigned int); 53 | ~HIPStream(); 54 | 55 | virtual float read() override; 56 | virtual float write() override; 57 | virtual float copy() override; 58 | virtual float add() override; 59 | virtual float mul() override; 60 | virtual float triad() override; 61 | virtual T dot() override; 62 | 63 | virtual void init_arrays(T initA, T initB, T initC) override; 64 | virtual void read_arrays(std::vector& a, std::vector& b, std::vector& c) override; 65 | }; 66 | 67 | -------------------------------------------------------------------------------- /src/rvslognodebase.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #include 26 | 27 | #include "include/rvslognodebase.h" 28 | 29 | /** 30 | * @brief Constructor 31 | * 32 | * @param pName Node name 33 | * @param pParent Pointer to parent node 34 | * 35 | */ 36 | rvs::LogNodeBase::LogNodeBase(const char* pName, const LogNodeBase* pParent) 37 | : Name(pName), 38 | Parent(pParent), 39 | Type(eLN::Unknown) { 40 | } 41 | 42 | //! Destructor 43 | rvs::LogNodeBase::~LogNodeBase() { 44 | } 45 | -------------------------------------------------------------------------------- /rvs/conf/gst_stress_12_hrs.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | - name: gpustress-12hrs 28 | device: all 29 | module: gst 30 | parallel: true 31 | count: 1 32 | duration: 43200000 33 | ramp_interval: 300000 34 | log_interval: 12000 35 | target_stress: 8000 36 | max_violations: 1 37 | copy_matrix: false 38 | tolerance: 0.01 39 | matrix_size_a: 8640 40 | matrix_size_b: 8640 41 | matrix_size_c: 8640 42 | ops_type: sgemm 43 | 44 | -------------------------------------------------------------------------------- /rvs/conf/gst_stress_3_hrs.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | - name: gpustress-3hrs 28 | device: all 29 | module: gst 30 | parallel: true 31 | count: 1 32 | duration: 10800000 33 | ramp_interval: 300000 34 | log_interval: 6000 35 | target_stress: 8000 36 | max_violations: 1 37 | copy_matrix: false 38 | tolerance: 0.01 39 | matrix_size_a: 8640 40 | matrix_size_b: 8640 41 | matrix_size_c: 8640 42 | ops_type: sgemm 43 | 44 | -------------------------------------------------------------------------------- /rvs/conf/gst_stress_6_hrs.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | - name: gpustress-6hrs 28 | device: all 29 | module: gst 30 | parallel: true 31 | count: 1 32 | duration: 21600000 33 | ramp_interval: 300000 34 | log_interval: 6000 35 | target_stress: 8000 36 | max_violations: 1 37 | copy_matrix: false 38 | tolerance: 0.01 39 | matrix_size_a: 8640 40 | matrix_size_b: 8640 41 | matrix_size_c: 8640 42 | ops_type: sgemm 43 | 44 | -------------------------------------------------------------------------------- /rvs/conf/nv21/gst_stress_3_hrs.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2023 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | - name: gpustress-3hrs 28 | device: all 29 | module: gst 30 | parallel: true 31 | count: 1 32 | duration: 10800000 33 | ramp_interval: 300000 34 | log_interval: 6000 35 | target_stress: 5000 36 | max_violations: 1 37 | copy_matrix: false 38 | tolerance: 0.01 39 | matrix_size_a: 8640 40 | matrix_size_b: 8640 41 | matrix_size_c: 8640 42 | ops_type: sgemm 43 | 44 | -------------------------------------------------------------------------------- /rvs/conf/nv31/gst_stress_3_hrs.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2023 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | - name: gpustress-3hrs 28 | device: all 29 | module: gst 30 | parallel: true 31 | count: 1 32 | duration: 10800000 33 | ramp_interval: 300000 34 | log_interval: 6000 35 | target_stress: 5000 36 | max_violations: 1 37 | copy_matrix: false 38 | tolerance: 0.01 39 | matrix_size_a: 8640 40 | matrix_size_b: 8640 41 | matrix_size_c: 8640 42 | ops_type: sgemm 43 | 44 | -------------------------------------------------------------------------------- /rvs/conf/nv32/gst_stress_3_hrs.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2023 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | - name: gpustress-3hrs 28 | device: all 29 | module: gst 30 | parallel: true 31 | count: 1 32 | duration: 10800000 33 | ramp_interval: 300000 34 | log_interval: 6000 35 | target_stress: 5000 36 | max_violations: 1 37 | copy_matrix: false 38 | tolerance: 0.01 39 | matrix_size_a: 8640 40 | matrix_size_b: 8640 41 | matrix_size_c: 8640 42 | ops_type: sgemm 43 | 44 | -------------------------------------------------------------------------------- /pbqt.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | # generate random test files 27 | 28 | ## generate conf files 29 | #MESSAGE("RVS PATH: ${CMAKE_CURRENT_SOURCE_DIR}") 30 | set(MAKE_CMD "${CMAKE_CURRENT_SOURCE_DIR}/../regression/make_pbqt_conf.py") 31 | #MESSAGE("COMMAND: ${MAKE_CMD}") 32 | execute_process(COMMAND ${MAKE_CMD}) 33 | 34 | # include resulting .cmake file with random tests declarations 35 | include(${CMAKE_CURRENT_SOURCE_DIR}/rand_tests.cmake) 36 | 37 | include(tests_conf_logging) 38 | -------------------------------------------------------------------------------- /CMakeLists.txt.yaml: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | cmake_minimum_required(VERSION 2.8.2) 27 | 28 | project(yaml-download NONE) 29 | 30 | include(ExternalProject) 31 | ExternalProject_Add(yaml 32 | GIT_REPOSITORY https://github.com/jbeder/yaml-cpp.git 33 | GIT_TAG master 34 | SOURCE_DIR "${CMAKE_BINARY_DIR}/yaml-src" 35 | BINARY_DIR "${CMAKE_BINARY_DIR}/yaml-build" 36 | CONFIGURE_COMMAND "" 37 | BUILD_COMMAND "" 38 | INSTALL_COMMAND "" 39 | TEST_COMMAND "" 40 | ) 41 | -------------------------------------------------------------------------------- /CMakeRSMIDownload.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | cmake_minimum_required(VERSION 2.8.2) 27 | 28 | project(rvs_smi-download NONE) 29 | 30 | include(ExternalProject) 31 | ExternalProject_Add(rvs_smi 32 | GIT_REPOSITORY https://github.com/ROCm/rocm_smi_lib.git 33 | GIT_TAG master 34 | SOURCE_DIR "${CMAKE_BINARY_DIR}/rvs_smi-src" 35 | BINARY_DIR "${CMAKE_BINARY_DIR}/rvs_smi-build" 36 | CONFIGURE_COMMAND "" 37 | BUILD_COMMAND "" 38 | INSTALL_COMMAND "" 39 | TEST_COMMAND "" 40 | ) 41 | -------------------------------------------------------------------------------- /CMakeRBLASDownload.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | cmake_minimum_required(VERSION 2.8.2) 27 | 28 | project(rvs_rblas-download NONE) 29 | 30 | include(ExternalProject) 31 | ExternalProject_Add(rvs_rblas 32 | GIT_REPOSITORY https://github.com/ROCm/rocBLAS.git 33 | GIT_TAG v14.3.0 34 | SOURCE_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-src" 35 | BINARY_DIR "${CMAKE_BINARY_DIR}/rvs_rblas-build" 36 | CONFIGURE_COMMAND "" 37 | BUILD_COMMAND "" 38 | INSTALL_COMMAND "" 39 | TEST_COMMAND "" 40 | ) 41 | -------------------------------------------------------------------------------- /CMakeGtestDownload.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2025 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | cmake_minimum_required(VERSION 2.8.2) 27 | 28 | project(googletest-download NONE) 29 | 30 | include(ExternalProject) 31 | ExternalProject_Add(googletest 32 | GIT_REPOSITORY https://github.com/google/googletest.git 33 | GIT_TAG v1.16.0 34 | SOURCE_DIR "${CMAKE_BINARY_DIR}/googletest-src" 35 | BINARY_DIR "${CMAKE_BINARY_DIR}/googletest-build" 36 | CONFIGURE_COMMAND "" 37 | BUILD_COMMAND "" 38 | INSTALL_COMMAND "" 39 | TEST_COMMAND "" 40 | ) 41 | -------------------------------------------------------------------------------- /rcqt.so/include/packageHandlerRpm.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | 27 | #ifndef PACKAGE_HANDLER_RPM_H 28 | #define PACKAGE_HANDLER_RPM_H 29 | #include "packageHandler.h" 30 | 31 | class PackageHandlerRpm: virtual public PackageHandler{ 32 | public: 33 | PackageHandlerRpm(std::string pkgname); 34 | PackageHandlerRpm(); 35 | bool pkgrOutputParser(const std::string& s_data, 36 | package_info& info) override; 37 | std::string getInstalledVersion(const std::string& package) override; 38 | ~PackageHandlerRpm(){} 39 | }; 40 | #endif 41 | -------------------------------------------------------------------------------- /rcqt.so/include/packageHandlerZyp.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #ifndef PACKAGE_HANDLER_ZYP_H 27 | #define PACKAGE_HANDLER_ZYP_H 28 | 29 | #include "packageHandler.h" 30 | 31 | class PackageHandlerZyp: virtual public PackageHandler{ 32 | public: 33 | PackageHandlerZyp(std::string pkgname); 34 | PackageHandlerZyp(); 35 | bool pkgrOutputParser(const std::string& s_data, 36 | package_info& info) override; 37 | std::string getInstalledVersion(const std::string& package) override; 38 | ~PackageHandlerZyp(){} 39 | }; 40 | #endif 41 | -------------------------------------------------------------------------------- /rcqt.so/include/packageHandlerDeb.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #ifndef PACKAGE_HANDLER_DEB_H 27 | #define PACKAGE_HANDLER_DEB_H 28 | #include "include/packageHandler.h" 29 | 30 | class PackageHandlerDeb: virtual public PackageHandler{ 31 | public: 32 | PackageHandlerDeb(std::string pkgname); 33 | PackageHandlerDeb(); 34 | bool pkgrOutputParser(const std::string& s_data, 35 | package_info& info) override; 36 | std::string getInstalledVersion(const std::string& package) override; 37 | ~PackageHandlerDeb(){} 38 | }; 39 | #endif 40 | -------------------------------------------------------------------------------- /rcqt.so/include/handlerCreator.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #ifndef HANDLER_CREATOR_H 27 | #define HANDLER_CREATOR_H 28 | 29 | #include 30 | #include "include/packageHandlerDeb.h" 31 | #include "include/packageHandlerRpm.h" 32 | #include "include/packageHandlerZyp.h" 33 | #include "include/rcutils.h" 34 | 35 | class handlerCreator{ 36 | public: 37 | handlerCreator() = default; 38 | virtual ~handlerCreator() = default; 39 | PackageHandler* getPackageHandler(const std::string& pkg); 40 | PackageHandler* getPackageHandler(); 41 | }; 42 | #endif 43 | -------------------------------------------------------------------------------- /rvs/conf/nv21/pesm_1.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | # PESM test #1 27 | # 28 | # Preconditions: 29 | # Set device id to an existing AMD deviceid values 30 | # 31 | # Run test with: 32 | # cd bin 33 | # sudo ./rvs -c conf/pesm2.conf 34 | # 35 | # Expected result: 36 | # Test passes without displaying data for any GPUs 37 | actions: 38 | - name: act1 39 | device: all 40 | deviceid: 26720 41 | module: pesm 42 | monitor: true 43 | - name: act2 44 | device: all 45 | debugwait: 3000 46 | module: pesm 47 | monitor: false 48 | -------------------------------------------------------------------------------- /rvs/conf/nv31/pesm_1.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | # PESM test #1 27 | # 28 | # Preconditions: 29 | # Set device id to an existing AMD deviceid values 30 | # 31 | # Run test with: 32 | # cd bin 33 | # sudo ./rvs -c conf/pesm2.conf 34 | # 35 | # Expected result: 36 | # Test passes without displaying data for any GPUs 37 | actions: 38 | - name: act1 39 | device: all 40 | deviceid: 26720 41 | module: pesm 42 | monitor: true 43 | - name: act2 44 | device: all 45 | debugwait: 3000 46 | module: pesm 47 | monitor: false 48 | -------------------------------------------------------------------------------- /rvs/conf/nv32/pesm_1.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | # PESM test #1 27 | # 28 | # Preconditions: 29 | # Set device id to an existing AMD deviceid values 30 | # 31 | # Run test with: 32 | # cd bin 33 | # sudo ./rvs -c conf/pesm2.conf 34 | # 35 | # Expected result: 36 | # Test passes without displaying data for any GPUs 37 | actions: 38 | - name: act1 39 | device: all 40 | deviceid: 26720 41 | module: pesm 42 | monitor: true 43 | - name: act2 44 | device: all 45 | debugwait: 3000 46 | module: pesm 47 | monitor: false 48 | -------------------------------------------------------------------------------- /smqt.so/test/unitsmqt.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef SMQT_SO_TEST_UNITSMQT_H_ 26 | #define SMQT_SO_TEST_UNITSMQT_H_ 27 | #include 28 | #include "include/action.h" 29 | 30 | 31 | class bar_data :public smqt_action { 32 | public: 33 | bar_data(); 34 | virtual ~bar_data(); 35 | virtual void on_set_device_gpu_id(); 36 | virtual void on_bar_data_read(); 37 | std::tuple get_bar_sizes(); 38 | std::tuple get_bar_addr(); 39 | int get_dev_id(); 40 | }; 41 | 42 | #endif // SMQT_SO_TEST_UNITSMQT_H_ 43 | -------------------------------------------------------------------------------- /include/rsmi_util.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef INCLUDE_RSMI_UTIL_H_ 26 | #define INCLUDE_RSMI_UTIL_H_ 27 | 28 | #include 29 | #include 30 | #include 31 | #include 32 | 33 | #include "amd_smi/amdsmi.h" 34 | 35 | namespace rvs { 36 | extern std::map smipci_to_hdl_map; 37 | amdsmi_status_t smi_pci_hdl_mapping(); 38 | amdsmi_status_t smi_dev_ind_get(uint64_t bdfid, amdsmi_processor_handle* pdv_hdl); 39 | std::map get_smi_pci_map(); 40 | } 41 | 42 | #endif // INCLUDE_RSMI_UTIL_H_ 43 | -------------------------------------------------------------------------------- /pesm.so/test/unitactionbase.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef PESM_SO_TEST_UNITACTIONBASE_H_ 26 | #define PESM_SO_TEST_UNITACTIONBASE_H_ 27 | 28 | #include 29 | #include 30 | 31 | #include "include/rvsactionbase.h" 32 | 33 | class unitactionbase : public rvs::actionbase { 34 | public: 35 | unitactionbase(); 36 | virtual ~unitactionbase(); 37 | 38 | virtual int run(void); 39 | 40 | void test_get_device_all(std::vector* pDev, bool* bAll); 41 | void test_erase_property(const std::string& prop); 42 | }; 43 | 44 | #endif // PESM_SO_TEST_UNITACTIONBASE_H_ 45 | -------------------------------------------------------------------------------- /CMakeMXDataGeneratorDownload.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | cmake_minimum_required(VERSION 2.8.2) 27 | 28 | project(mxDataGenerator-download NONE) 29 | 30 | include(ExternalProject) 31 | ExternalProject_Add(mxDataGenerator 32 | GIT_REPOSITORY https://github.com/ROCm/mxDataGenerator.git 33 | GIT_TAG 12c016dc694139317feb2e23c59028fde70beaf4 34 | SOURCE_DIR "${CMAKE_BINARY_DIR}/mxDataGenerator-src" 35 | BINARY_DIR "${CMAKE_BINARY_DIR}/mxDataGenerator-build" 36 | CONFIGURE_COMMAND "" 37 | BUILD_COMMAND "" 38 | INSTALL_COMMAND "" 39 | TEST_COMMAND "" 40 | ) 41 | -------------------------------------------------------------------------------- /rcqt.so/include/rpmPackageInfo.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #ifndef RPM_PACKAGE_INFO_H 27 | #define RPM_PACKAGE_INFO_H 28 | 29 | #include "metaPackageInfo.h" 30 | 31 | class RpmPackageInfo : public PackageInfo { 32 | 33 | public: 34 | RpmPackageInfo(const std::string& pkgname, 35 | const std::vector cmd):PackageInfo(pkgname, 36 | std::string("rpm"), 37 | cmd){} 38 | 39 | RpmPackageInfo(const std::vector cmd):PackageInfo( 40 | std::string("rpm"), 41 | cmd){} 42 | 43 | bool readMetaPackageInfo(std::string ss) override; 44 | }; 45 | #endif 46 | -------------------------------------------------------------------------------- /rvs/test/test_cli.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #include 27 | 28 | #include "gtest/gtest.h" 29 | 30 | #include "include/rvscli.h" 31 | 32 | //std::string testpass[] = {"./rvs", "-c", "conf"}; 33 | //std::string testfail[] = {"./rvs", "-c"}; 34 | 35 | TEST(rvs, cli) { 36 | #if 0 37 | int sts; 38 | rvs::cli cli; 39 | 40 | sts = cli.parse(sizeof(testpass)/sizeof(char*), 41 | const_cast(testpass)); 42 | EXPECT_EQ(sts, 0); 43 | 44 | sts = cli.parse(sizeof(testfail)/sizeof(char*), 45 | const_cast(testfail)); 46 | EXPECT_EQ(sts, -1); 47 | #endif 48 | } 49 | -------------------------------------------------------------------------------- /rcqt.so/include/zypPackageInfo.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | 27 | #ifndef ZYP_PACKAGE_INFO_H 28 | #define ZYP_PACKAGE_INFO_H 29 | 30 | #include "metaPackageInfo.h" 31 | 32 | class ZypPackageInfo : public PackageInfo { 33 | 34 | public: 35 | 36 | ZypPackageInfo(const std::string& pkgname, 37 | const std::vector cmd):PackageInfo(pkgname, 38 | std::string("zypper"), 39 | cmd){} 40 | 41 | ZypPackageInfo(const std::vector cmd):PackageInfo( 42 | std::string("zypper"), 43 | cmd){} 44 | 45 | bool readMetaPackageInfo(std::string ss) override; 46 | }; 47 | #endif 48 | -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- 1 | .. meta:: 2 | :description: ROCm Validation Suite documentation 3 | :keywords: ROCm Validation Suite, RVS, ROCm, documentation 4 | 5 | ******************************************************************** 6 | ROCm Validation Suite documentation 7 | ******************************************************************** 8 | 9 | The ROCm Validation Suite (RVS) is a system validation and diagnostics tool for monitoring, stress testing, detecting, and troubleshooting issues that affect the functionality and performance of AMD GPUs operating in a high-performance/AI/ML computing environment. RVS is enabled using the ROCm software stack on a compatible software and hardware platform. 10 | 11 | RVS is a collection of tests, benchmarks, and qualification tools, each targeting a specific subsystem of the ROCm platform. All of the tools are implemented in software and share a common command-line interface. Each test set is implemented in a “module”, which is a library encapsulating the functionality specific to the tool. The CLI can specify the directory containing modules when searching for libraries to load. Each module may have a set of options that it defines and a configuration file that supports its execution. 12 | 13 | For more information, refer to `GitHub. `_ 14 | 15 | .. grid:: 2 16 | :gutter: 3 17 | 18 | .. grid-item-card:: Install 19 | 20 | * :doc:`ROCm Validation Suite installation <./install/installation>` 21 | 22 | 23 | .. grid-item-card:: How to 24 | 25 | * :doc:`Configure ROCm Validation Suite ` 26 | 27 | .. grid-item-card:: Conceptual 28 | 29 | * :doc:`ROCm Validation Suite modules <./conceptual/rvs-modules>` 30 | 31 | 32 | To contribute to the documentation, refer to 33 | `Contributing to ROCm `_. 34 | 35 | You can find licensing information on the 36 | `Licensing `_ page. 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /CTestConfig.cmake: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | ## This file should be placed in the root directory of your project. 27 | ## Then modify the CMakeLists.txt file in the root directory of your 28 | ## project to incorporate the testing dashboard. 29 | ## # The following are required to uses Dart and the Cdash dashboard 30 | ## ENABLE_TESTING() 31 | ## INCLUDE(CTest) 32 | set(CTEST_PROJECT_NAME "RVS") 33 | set(CTEST_NIGHTLY_START_TIME $ENV{RVS_BATCH_UTC}) 34 | 35 | set(CTEST_DROP_METHOD "http") 36 | set(CTEST_DROP_SITE "my.cdash.org") 37 | set(CTEST_DROP_LOCATION "/submit.php?project=RVS") 38 | set(CTEST_DROP_SITE_CDASH TRUE) 39 | set(CTEST_USE_LAUNCHERS 1) 40 | -------------------------------------------------------------------------------- /rvs/conf/MI350X/pebb_single.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | # Device-to-Host/CPU-to-GPU bidirectional bandwidth test via pcie link. 28 | - name: pcie_d2h_bandwidth 29 | device: all 30 | module: pebb 31 | duration: 30000 32 | device_to_host: true 33 | host_to_device: false 34 | parallel: false 35 | block_size: 1073741824 36 | link_type: 2 37 | 38 | # Host-to-Device/CPU-to-GPU bidirectional bandwidth test via pcie link. 39 | - name: pcie_h2d_bandwidth 40 | device: all 41 | module: pebb 42 | duration: 30000 43 | device_to_host: false 44 | host_to_device: true 45 | parallel: false 46 | block_size: 1073741824 47 | link_type: 2 48 | 49 | -------------------------------------------------------------------------------- /rvs/conf/MI355X/pebb_single.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | # Device-to-Host/CPU-to-GPU bidirectional bandwidth test via pcie link. 28 | - name: pcie_d2h_bandwidth 29 | device: all 30 | module: pebb 31 | duration: 30000 32 | device_to_host: true 33 | host_to_device: false 34 | parallel: false 35 | block_size: 1073741824 36 | link_type: 2 37 | 38 | # Host-to-Device/CPU-to-GPU bidirectional bandwidth test via pcie link. 39 | - name: pcie_h2d_bandwidth 40 | device: all 41 | module: pebb 42 | duration: 30000 43 | device_to_host: false 44 | host_to_device: true 45 | parallel: false 46 | block_size: 1073741824 47 | link_type: 2 48 | 49 | -------------------------------------------------------------------------------- /rvs/conf/pesm_1.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | # PESM test #1 27 | # 28 | # Preconditions: 29 | # Set device id to an existing AMD deviceid values 30 | # 31 | # Run test with: 32 | # cd bin 33 | # sudo ./rvs -c conf/pesm_1.conf 34 | # 35 | # Expected result: 36 | # Test passes without displaying data for any GPUs 37 | # 38 | # monitor_action - Monitors changes in PCIe link speed and power state changes 39 | actions: 40 | - name: monitor_action 41 | device: all 42 | module: pesm 43 | monitor: true 44 | 45 | # wait_action - Just debug wait for the duration set and exit 46 | - name: wait_action 47 | device: all 48 | debugwait: 3000 49 | module: pesm 50 | monitor: false 51 | -------------------------------------------------------------------------------- /rcqt.so/src/metaPackageInfo.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include 31 | #include 32 | #include 33 | #include 34 | 35 | #include "include/metaPackageInfo.h" 36 | #include "include/rcutils.h" 37 | 38 | bool PackageInfo::fillPkgInfo(){ 39 | 40 | std::stringstream ss; 41 | bool status; 42 | 43 | status = getPackageInfo(m_pkgname, m_pkgmgrname, m_dependcmd1name, m_dependcmd2name, ss); 44 | if (true != status) { 45 | std::cout << "getPackageInfo failed !!!" << std::endl; 46 | return false; 47 | } 48 | 49 | readMetaPackageInfo(ss.str()); 50 | 51 | return true; 52 | 53 | } 54 | 55 | -------------------------------------------------------------------------------- /rcqt.so/include/debPackageInfo.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | 27 | #ifndef DEB_PACKAGE_INFO_H 28 | #define DEB_PACKAGE_INFO_H 29 | #include "metaPackageInfo.h" 30 | 31 | class DebPackageInfo : public PackageInfo{ 32 | public: 33 | DebPackageInfo(const std::string& pkgname, 34 | const std::vector cmd):PackageInfo(pkgname, 35 | std::string("dpkg"), 36 | cmd){} 37 | 38 | DebPackageInfo(const std::vector cmd):PackageInfo( 39 | std::string("dpkg"), 40 | cmd){} 41 | 42 | bool readMetaPackageInfo(std::string ss) override; 43 | std::pair getNameVers(std::string word); 44 | void readDepLine(const std::string& depLine); 45 | }; 46 | #endif 47 | -------------------------------------------------------------------------------- /rvs/include/rvsmodule_if.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef RVS_INCLUDE_RVSMODULE_IF_H_ 26 | #define RVS_INCLUDE_RVSMODULE_IF_H_ 27 | 28 | extern "C" { 29 | extern int rvs_module_init(void*); 30 | extern int rvs_module_terminate(void); 31 | extern void* rvs_module_action_create(void); 32 | extern int rvs_module_action_destroy(void*); 33 | extern int rvs_module_has_interface(int); 34 | 35 | // define function pointer types to ease late binding usage 36 | typedef int (*t_rvs_module_init)(void*); 37 | typedef int (*t_rvs_module_terminate)(void); 38 | typedef void* (*t_rvs_module_action_create)(void); 39 | typedef int (*t_rvs_module_action_destroy)(void*); 40 | typedef int (*t_rvs_module_has_interface)(int); 41 | 42 | } 43 | 44 | #endif // RVS_INCLUDE_RVSMODULE_IF_H_ 45 | -------------------------------------------------------------------------------- /include/rvslognodeint.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef INCLUDE_RVSLOGNODEINT_H_ 26 | #define INCLUDE_RVSLOGNODEINT_H_ 27 | 28 | #include 29 | 30 | #include "include/rvslognodebase.h" 31 | 32 | namespace rvs { 33 | 34 | 35 | /** 36 | * @class LogNodeInt 37 | * @ingroup Launcher 38 | * 39 | * @brief Loger node holding integer value 40 | * 41 | */ 42 | class LogNodeInt : public LogNodeBase { 43 | public: 44 | explicit LogNodeInt(const char* Name, const int Val, 45 | const LogNodeBase* pParent = nullptr); 46 | 47 | virtual ~LogNodeInt(); 48 | 49 | virtual std::string ToJson(const std::string& Lead = ""); 50 | 51 | protected: 52 | //! Node value 53 | int Value; 54 | }; 55 | 56 | } // namespace rvs 57 | 58 | #endif // INCLUDE_RVSLOGNODEINT_H_ 59 | -------------------------------------------------------------------------------- /gpup.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2024 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | set(ROCBLAS_LIB "rocblas") 27 | set(HIPRAND_LIB "hiprand") 28 | set(HIPBLASLT_LIB "hipblaslt") 29 | set(CORE_RUNTIME_NAME "hsa-runtime") 30 | set(CORE_RUNTIME_TARGET "${CORE_RUNTIME_NAME}64") 31 | 32 | find_package(OpenMP) 33 | 34 | set(UT_LINK_LIBS libpthread.so libm.so libdl.so ${ROCM_SMI_LIB} OpenMP::OpenMP_CXX 35 | ${ROCBLAS_LIB} ${ROC_THUNK_NAME} ${CORE_RUNTIME_TARGET} ${ROCM_CORE} ${YAML_CPP_LIBRARIES} ${HIPRAND_LIB} ${HIPBLASLT_LIB}) 36 | 37 | # Add directories to look for library files to link 38 | link_directories(${RVS_LIB_DIR} ${ROCM_SMI_LIB_DIR} ${ROCBLAS_LIB_DIR} ${HIPBLASLT_LIB_DIR} ${YAML_CPP_LIBRARY_DIR}) 39 | 40 | set (UT_SOURCES src/action.cpp 41 | ) 42 | 43 | # add unit tests 44 | include(tests_unit) 45 | 46 | include(tests_conf_logging) 47 | -------------------------------------------------------------------------------- /babel.so/license.txt: -------------------------------------------------------------------------------- 1 | *============================================================================== 2 | *------------------------------------------------------------------------------ 3 | * Copyright 2015-16: Tom Deakin, Simon McIntosh-Smith, University of Bristol HPC 4 | * Based on John D. McCalpin’s original STREAM benchmark for CPUs 5 | *------------------------------------------------------------------------------ 6 | * License: 7 | * 1. You are free to use this program and/or to redistribute 8 | * this program. 9 | * 2. You are free to modify this program for your own use, 10 | * including commercial use, subject to the publication 11 | * restrictions in item 3. 12 | * 3. You are free to publish results obtained from running this 13 | * program, or from works that you derive from this program, 14 | * with the following limitations: 15 | * 3a. In order to be referred to as "BabelStream benchmark results", 16 | * published results must be in conformance to the BabelStream 17 | * Run Rules published at 18 | * http://github.com/UoB-HPC/BabelStream/wiki/Run-Rules 19 | * and incorporated herein by reference. 20 | * The copyright holders retain the 21 | * right to determine conformity with the Run Rules. 22 | * 3b. Results based on modified source code or on runs not in 23 | * accordance with the BabelStream Run Rules must be clearly 24 | * labelled whenever they are published. Examples of 25 | * proper labelling include: 26 | * "tuned BabelStream benchmark results" 27 | * "based on a variant of the BabelStream benchmark code" 28 | * Other comparable, clear and reasonable labelling is 29 | * acceptable. 30 | * 3c. Submission of results to the BabelStream benchmark web site 31 | * is encouraged, but not required. 32 | * 4. Use of this program or creation of derived works based on this 33 | * program constitutes acceptance of these licensing restrictions. 34 | * 5. Absolutely no warranty is expressed or implied. 35 | *———————————————————————————————————------------------------------------------- 36 | 37 | -------------------------------------------------------------------------------- /include/rvslognodestring.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef INCLUDE_RVSLOGNODESTRING_H_ 26 | #define INCLUDE_RVSLOGNODESTRING_H_ 27 | 28 | #include 29 | 30 | #include "include/rvslognodebase.h" 31 | 32 | namespace rvs { 33 | 34 | /** 35 | * @class LogNodeString 36 | * @ingroup Launcher 37 | * 38 | * @brief Loger node holding string value 39 | * 40 | */ 41 | class LogNodeString : public LogNodeBase { 42 | public: 43 | explicit LogNodeString(const char* Name, const char* Val, 44 | const LogNodeBase* Parent = nullptr); 45 | 46 | virtual ~LogNodeString(); 47 | 48 | virtual std::string ToJson(const std::string& Lead = ""); 49 | 50 | protected: 51 | //! Node value 52 | std::string Value; 53 | }; 54 | 55 | } // namespace rvs 56 | 57 | #endif // INCLUDE_RVSLOGNODESTRING_H_ 58 | -------------------------------------------------------------------------------- /rvs/conf/MI350X/pbqt_single.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | # Peer-to-Peer/Device-to-Device/GPU-to-GPU unidirectional bandwidth test via xgmi link. 28 | - name: xgmi_d2d_unidir_bandwidth 29 | device: all 30 | module: pbqt 31 | log_interval: 5000 32 | duration: 30000 33 | peers: all 34 | test_bandwidth: true 35 | bidirectional: false 36 | parallel: false 37 | block_size: 1073741824 38 | device_id: all 39 | 40 | # Peer-to-Peer/Device-to-Device/GPU-to-GPU bidirectional bandwidth test via xgmi link. 41 | - name: xgmi_d2d_bidir_bandwidth 42 | device: all 43 | module: pbqt 44 | log_interval: 5000 45 | duration: 30000 46 | peers: all 47 | test_bandwidth: true 48 | bidirectional: true 49 | parallel: false 50 | block_size: 1073741824 51 | device_id: all 52 | 53 | -------------------------------------------------------------------------------- /rvs/conf/MI355X/pbqt_single.conf: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2025 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | actions: 27 | # Peer-to-Peer/Device-to-Device/GPU-to-GPU unidirectional bandwidth test via xgmi link. 28 | - name: xgmi_d2d_unidir_bandwidth 29 | device: all 30 | module: pbqt 31 | log_interval: 5000 32 | duration: 30000 33 | peers: all 34 | test_bandwidth: true 35 | bidirectional: false 36 | parallel: false 37 | block_size: 1073741824 38 | device_id: all 39 | 40 | # Peer-to-Peer/Device-to-Device/GPU-to-GPU bidirectional bandwidth test via xgmi link. 41 | - name: xgmi_d2d_bidir_bandwidth 42 | device: all 43 | module: pbqt 44 | log_interval: 5000 45 | duration: 30000 46 | peers: all 47 | test_bandwidth: true 48 | bidirectional: true 49 | parallel: false 50 | block_size: 1073741824 51 | device_id: all 52 | 53 | -------------------------------------------------------------------------------- /pesm.so/test/unitactionbase.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #include 26 | #include 27 | 28 | #include "test/unitactionbase.h" 29 | #include "include/rvsloglp.h" 30 | 31 | #define MODULE_NAME_CAPS "UNITPESM" 32 | 33 | //! Default constructor 34 | unitactionbase::unitactionbase() { 35 | } 36 | 37 | //! Default destructor 38 | unitactionbase::~unitactionbase() { 39 | property.clear(); 40 | } 41 | 42 | 43 | int unitactionbase::run(void) { 44 | RVSTRACE_ 45 | // agreed upon return value for this run() method 46 | return 3; 47 | } 48 | 49 | void unitactionbase::test_get_device_all 50 | (std::vector* pDev, bool* bAll) { 51 | *pDev = property_device; 52 | *bAll = property_device_all; 53 | } 54 | 55 | void unitactionbase::test_erase_property(const std::string& prop) { 56 | property.erase(prop); 57 | } 58 | -------------------------------------------------------------------------------- /mem.so/include/rvs_memkernel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Illinois Open Source License 3 | * 4 | * University of Illinois/NCSA 5 | * Open Source License 6 | * 7 | * Copyright 2009, University of Illinois. All rights reserved. 8 | * 9 | * Developed by: 10 | * 11 | * Innovative Systems Lab 12 | * National Center for Supercomputing Applications 13 | * http://www.ncsa.uiuc.edu/AboutUs/Directorates/ISL.html 14 | * 15 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 16 | * this software and associated documentation files (the "Software"), to deal with 17 | * the Software without restriction, including without limitation the rights to use, 18 | * copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the 19 | * Software, and to permit persons to whom the Software is furnished to do so, subject 20 | * to the following conditions: 21 | * 22 | * * Redistributions of source code must retain the above copyright notice, this list 23 | * of conditions and the following disclaimers. 24 | * 25 | * * Redistributions in binary form must reproduce the above copyright notice, this list 26 | * of conditions and the following disclaimers in the documentation and/or other materials 27 | * provided with the distribution. 28 | * 29 | * * Neither the names of the Innovative Systems Lab, the National Center for Supercomputing 30 | * Applications, nor the names of its contributors may be used to endorse or promote products 31 | * derived from this Software without specific prior written permission. 32 | * 33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, 34 | * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 35 | * PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE 36 | * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT 37 | * OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 38 | * DEALINGS WITH THE SOFTWARE. 39 | */ 40 | 41 | #ifndef __RVS_MEMKERN_H__ 42 | #define __RVS_MEMKERN_H__ 43 | 44 | #include 45 | #include "include/rvsthreadbase.h" 46 | 47 | #define TYPE unsigned long 48 | 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /smqt.so/test/test_1.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #include "gtest/gtest.h" 26 | #include "include/action.h" 27 | #include "test/unitsmqt.h" 28 | 29 | TEST(smqt, action) { 30 | bar_data* bd = new bar_data; 31 | bd->on_set_device_gpu_id(); 32 | EXPECT_EQ(bd->get_dev_id(), 123); 33 | bd->on_bar_data_read(); 34 | ulong bar1_size, bar2_size, bar4_size, bar5_size; 35 | ulong bar1_base_addr, bar2_base_addr, bar4_base_addr; 36 | std::tie(bar1_size, bar2_size, bar4_size, bar5_size) = bd->get_bar_sizes(); 37 | std::tie(bar1_base_addr, bar2_base_addr, bar4_base_addr) = bd->get_bar_addr(); 38 | EXPECT_EQ(bar1_size, 2UL); 39 | EXPECT_EQ(bar2_size, 3UL); 40 | EXPECT_EQ(bar4_size, 5UL); 41 | EXPECT_EQ(bar5_size, 4UL); 42 | EXPECT_EQ(bar1_base_addr, 1UL); 43 | EXPECT_EQ(bar2_base_addr, 6UL); 44 | EXPECT_EQ(bar4_base_addr, 7UL); 45 | delete bd; 46 | } 47 | -------------------------------------------------------------------------------- /babel.so/include/rvs_memkernel.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Illinois Open Source License 3 | * 4 | * University of Illinois/NCSA 5 | * Open Source License 6 | * 7 | * Copyright 2009, University of Illinois. All rights reserved. 8 | * 9 | * Developed by: 10 | * 11 | * Innovative Systems Lab 12 | * National Center for Supercomputing Applications 13 | * http://www.ncsa.uiuc.edu/AboutUs/Directorates/ISL.html 14 | * 15 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 16 | * this software and associated documentation files (the "Software"), to deal with 17 | * the Software without restriction, including without limitation the rights to use, 18 | * copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the 19 | * Software, and to permit persons to whom the Software is furnished to do so, subject 20 | * to the following conditions: 21 | * 22 | * * Redistributions of source code must retain the above copyright notice, this list 23 | * of conditions and the following disclaimers. 24 | * 25 | * * Redistributions in binary form must reproduce the above copyright notice, this list 26 | * of conditions and the following disclaimers in the documentation and/or other materials 27 | * provided with the distribution. 28 | * 29 | * * Neither the names of the Innovative Systems Lab, the National Center for Supercomputing 30 | * Applications, nor the names of its contributors may be used to endorse or promote products 31 | * derived from this Software without specific prior written permission. 32 | * 33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, 34 | * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR 35 | * PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE 36 | * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT 37 | * OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 38 | * DEALINGS WITH THE SOFTWARE. 39 | */ 40 | 41 | #ifndef __RVS_MEMKERN_H__ 42 | #define __RVS_MEMKERN_H__ 43 | 44 | #include 45 | #include "include/rvsthreadbase.h" 46 | 47 | #define TYPE unsigned long 48 | 49 | 50 | #endif 51 | -------------------------------------------------------------------------------- /smqt.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2024 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | set(ROCBLAS_LIB "rocblas") 27 | set(HIPRAND_LIB "hiprand") 28 | set(HIPBLASLT_LIB "hipblaslt") 29 | set(CORE_RUNTIME_NAME "hsa-runtime") 30 | set(CORE_RUNTIME_TARGET "${CORE_RUNTIME_NAME}64") 31 | 32 | find_package(OpenMP) 33 | 34 | set(UT_LINK_LIBS libpthread.so libpci.so libm.so libdl.so ${AMD_SMI_LIB} OpenMP::OpenMP_CXX 35 | ${ROCBLAS_LIB} ${CORE_RUNTIME_TARGET} ${ROCM_CORE} ${YAML_CPP_LIBRARIES} ${HIPRAND_LIB} ${HIPBLASLT_LIB} 36 | ) 37 | 38 | # Add directories to look for library files to link 39 | link_directories(${ROCM_SMI_LIB_DIR} ${ROCBLAS_LIB_DIR} ${HIPRAND_LIB_DIR} ${HIPBLASLT_LIB_DIR} ${YAML_CPP_LIBRARY_DIR}) 40 | 41 | set (UT_SOURCES src/action.cpp test/unitsmqt.cpp 42 | ) 43 | 44 | # add unit tests 45 | include(tests_unit) 46 | 47 | # Add configuration tests 48 | include(tests_conf_logging) 49 | 50 | -------------------------------------------------------------------------------- /pesm.so/tests.cmake: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | ## 3 | ## Copyright (c) 2018-2025 Advanced Micro Devices, Inc. All rights reserved. 4 | ## 5 | ## MIT LICENSE: 6 | ## Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | ## this software and associated documentation files (the "Software"), to deal in 8 | ## the Software without restriction, including without limitation the rights to 9 | ## use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | ## of the Software, and to permit persons to whom the Software is furnished to do 11 | ## so, subject to the following conditions: 12 | ## 13 | ## The above copyright notice and this permission notice shall be included in all 14 | ## copies or substantial portions of the Software. 15 | ## 16 | ## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | ## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | ## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | ## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | ## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | ## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | ## SOFTWARE. 23 | ## 24 | ################################################################################ 25 | 26 | set(ROCBLAS_LIB "rocblas") 27 | set(HIPRAND_LIB "hiprand") 28 | set(HIPBLASLT_LIB "hipblaslt") 29 | set(CORE_RUNTIME_NAME "hsa-runtime") 30 | set(CORE_RUNTIME_TARGET "${CORE_RUNTIME_NAME}64") 31 | 32 | find_package(OpenMP) 33 | 34 | set(UT_LINK_LIBS libpthread.so libpci.so libm.so libdl.so ${AMD_SMI_LIB} OpenMP::OpenMP_CXX 35 | ${ROCBLAS_LIB} ${ROC_THUNK_NAME} ${CORE_RUNTIME_TARGET} ${ROCM_CORE} ${YAML_CPP_LIBRARIES} ${HIPRAND_LIB} ${HIPBLASLT_LIB} 36 | ) 37 | 38 | # Add directories to look for library files to link 39 | link_directories(${AMD_SMI_LIB_DIR} ${ROCBLAS_LIB_DIR} ${HIPRAND_LIB_DIR} ${HIPBLASLT_LIB_DIR} ${YAML_CPP_LIBRARY_DIR}) 40 | 41 | set (UT_SOURCES test/unitactionbase.cpp 42 | ) 43 | 44 | # add unit tests 45 | include(tests_unit) 46 | 47 | # Add configuration tests 48 | include(tests_conf_logging) 49 | 50 | -------------------------------------------------------------------------------- /include/rvsthreadbase.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef INCLUDE_RVSTHREADBASE_H_ 26 | #define INCLUDE_RVSTHREADBASE_H_ 27 | 28 | #include 29 | 30 | namespace rvs { 31 | 32 | /** 33 | * @class ThreadBase 34 | * 35 | * @brief Base class for all module level threads 36 | * 37 | */ 38 | 39 | class ThreadBase { 40 | protected: 41 | ThreadBase(); 42 | ~ThreadBase(); 43 | 44 | public: 45 | virtual void start(); 46 | virtual void detach(); 47 | virtual void join(); 48 | virtual void sleep(const unsigned int ms); 49 | 50 | protected: 51 | void runinternal(void); 52 | 53 | //! Virtual thread function. To be implemented in every derived class. 54 | virtual void run() = 0; 55 | 56 | protected: 57 | //! Underlaying std::thread object. 58 | std::thread t; 59 | }; 60 | 61 | } // namespace rvs 62 | 63 | 64 | #endif // INCLUDE_RVSTHREADBASE_H_ 65 | -------------------------------------------------------------------------------- /rvs/include/rvsmodule_if0.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef RVS_INCLUDE_RVSMODULE_IF0_H_ 26 | #define RVS_INCLUDE_RVSMODULE_IF0_H_ 27 | 28 | extern "C" { 29 | 30 | extern void rvs_module_get_version(int* Major, int* Minor, int* Revision); 31 | extern const char* rvs_module_get_name(void); 32 | extern const char* rvs_module_get_description(void); 33 | extern const char* rvs_module_get_config(void); 34 | extern const char* rvs_module_get_output(void); 35 | 36 | 37 | // define function pointer types to ease late binding usage 38 | typedef void (*t_rvs_module_get_version)(int*, int*, int*); 39 | typedef const char* (*t_rvs_module_get_name)(void); 40 | typedef const char* (*t_rvs_module_get_description)(void); 41 | typedef const char* (*t_rvs_module_get_config)(void); 42 | typedef const char* (*t_rvs_module_get_output)(void); 43 | 44 | } 45 | 46 | #endif // RVS_INCLUDE_RVSMODULE_IF0_H_ 47 | -------------------------------------------------------------------------------- /smqt.so/test/unitsmqt.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #include "test/unitsmqt.h" 26 | #include 27 | 28 | //! Default constructor 29 | bar_data::bar_data() { 30 | } 31 | 32 | //! Default destructor 33 | bar_data::~bar_data() { 34 | property.clear(); 35 | } 36 | void bar_data::on_set_device_gpu_id() { 37 | dev_id = 123; 38 | } 39 | void bar_data::on_bar_data_read() { 40 | bar1_size = 2; 41 | bar2_size = 3; 42 | bar4_size = 5; 43 | bar5_size = 4; 44 | bar1_base_addr = 1; 45 | bar2_base_addr = 6; 46 | bar4_base_addr = 7; 47 | } 48 | std::tuple bar_data::get_bar_sizes() { 49 | return std::make_tuple(bar1_size, bar2_size, bar4_size, bar5_size); 50 | } 51 | std::tuple bar_data::get_bar_addr() { 52 | return std::make_tuple(bar1_base_addr, bar2_base_addr, bar4_base_addr); 53 | } 54 | int bar_data::get_dev_id() { 55 | return dev_id; 56 | } 57 | -------------------------------------------------------------------------------- /testscripts/rvs-stress-long.sh: -------------------------------------------------------------------------------- 1 | # ################################################################################ 2 | # # 3 | # # Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | # # 5 | # # MIT LICENSE: 6 | # # Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | # # this software and associated documentation files (the "Software"), to deal in 8 | # # the Software without restriction, including without limitation the rights to 9 | # # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | # # of the Software, and to permit persons to whom the Software is furnished to do 11 | # # so, subject to the following conditions: 12 | # # 13 | # # The above copyright notice and this permission notice shall be included in all 14 | # # copies or substantial portions of the Software. 15 | # # 16 | # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | # # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | # # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | # # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | # # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | # # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | # # SOFTWARE. 23 | # # 24 | # ############################################################################### 25 | 26 | #!/bin/sh 27 | if [ "$1" == "-h" ] ; then 28 | echo 29 | echo "Usage: ./`basename $0` 3 (for 3 hours) or ./`basename $0` 6 (for 6 hours), default duration is 1 hour" 30 | echo 31 | exit 0 32 | fi 33 | if [ "$#" -eq 0 ] ; then 34 | duration="3600000" 35 | msval="msval" 36 | sed -i "s/$msval/${duration}/g" ../conf/gst_stress.conf 37 | date 38 | echo 'gst-1hr';../../../bin/rvs -c ../conf/gst_stress.conf -d 3; date 39 | sed -i "s/${duration}/$msval/g" ../conf/gst_stress.conf 40 | else 41 | duration=$((3600000 * $1)) 42 | echo $duration 43 | msval="msval" 44 | sed -i "s/$msval/${duration}/g" ../conf/gst_stress.conf 45 | date 46 | echo 'gst-'$1hr'(s)';../../../bin/rvs -c ../conf/gst_stress.conf -d 3; date 47 | sed -i "s/${duration}/$msval/g" ../conf/gst_stress.conf 48 | fi 49 | -------------------------------------------------------------------------------- /rvs/test/ext_timer.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #ifndef RVS_TEST_EXT_TIMER_H_ 27 | #define RVS_TEST_EXT_TIMER_H_ 28 | 29 | #include "include/rvstimer.h" 30 | 31 | template 32 | class ext_timer : public rvs::timer { 33 | public: 34 | // construtor 35 | ext_timer(void(T::*cbFunc)(), T* cbArg): rvs::timer::timer(cbFunc, cbArg) { 36 | } 37 | // return used class 38 | T* get_cbarg() { 39 | return *rvs::timer::cbarg; 40 | } 41 | // return brun 42 | // NOTE: true for the duration of timer activity 43 | bool get_brun() { 44 | return rvs::timer::brun; 45 | } 46 | // return brunonce 47 | // NOTE: true if timer is to fire only once 48 | bool get_brunonce() { 49 | return rvs::timer::brunonce; 50 | } 51 | // return timeset 52 | // NOTE: timer interval (ms) 53 | int get_timeset() { 54 | return rvs::timer::timeset; 55 | } 56 | }; 57 | 58 | #endif // RVS_TEST_EXT_TIMER_H_ 59 | 60 | -------------------------------------------------------------------------------- /include/rvslognode.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | #ifndef INCLUDE_RVSLOGNODE_H_ 26 | #define INCLUDE_RVSLOGNODE_H_ 27 | 28 | #include 29 | #include 30 | #include 31 | 32 | #include "include/rvslognodebase.h" 33 | 34 | namespace rvs { 35 | 36 | /** 37 | * @class LogNode 38 | * @ingroup Launcher 39 | * 40 | * @brief Logger Node class 41 | * 42 | * Used to construct structure log record for JSON output 43 | * 44 | */ 45 | class LogNode : public LogNodeBase { 46 | public: 47 | explicit LogNode(const char* Name, const LogNodeBase* Parent = nullptr); 48 | virtual ~LogNode(); 49 | 50 | virtual std::string ToJson(const std::string& Lead = ""); 51 | 52 | public: 53 | virtual void Add(LogNodeBase* spChild); 54 | 55 | public: 56 | virtual int LogLevel(); 57 | 58 | public: 59 | //! list of child nodes 60 | std::vector Child; 61 | }; 62 | 63 | } // namespace rvs 64 | 65 | #endif // INCLUDE_RVSLOGNODE_H_ 66 | -------------------------------------------------------------------------------- /rvs/include/rvsinternal.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2023 Advanced Micro Devices, Inc. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #include 27 | #include 28 | 29 | #ifdef __cplusplus 30 | extern "C" { 31 | #endif 32 | 33 | /*! \def RVS_MAX_SESSIONS 34 | * Maximum session supported in RVS at once. 35 | */ 36 | #define RVS_MAX_SESSIONS 1 37 | 38 | /*! \enum rvs_state_t 39 | * RVS states. 40 | */ 41 | typedef enum { 42 | RVS_STATE_INITIALIZED, /*!< RVS initialized state */ 43 | RVS_STATE_UNINITIALIZED /*!< RVS uninitialized state */ 44 | } rvs_state_t; 45 | 46 | /*! \struct rvs_session_t 47 | * \brief RVS session parameters. 48 | */ 49 | typedef struct rvs_session_ { 50 | rvs_session_id_t id;/*!< Unique session id */ 51 | rvs_session_state_t state;/*!< Current session state */ 52 | rvs_session_callback callback;/*!< Session callback */ 53 | rvs_session_property_t property;/*!< Session property */ 54 | rvs::exec *executor;/*!< Session executor instance */ 55 | } rvs_session_t; 56 | 57 | #ifdef __cplusplus 58 | } 59 | #endif 60 | -------------------------------------------------------------------------------- /rvs/src/rvsif_base.cpp: -------------------------------------------------------------------------------- 1 | /******************************************************************************** 2 | * 3 | * Copyright (c) 2018-2022 Advanced Micro Devices, Inc. All rights reserved. 4 | * 5 | * MIT LICENSE: 6 | * Permission is hereby granted, free of charge, to any person obtaining a copy of 7 | * this software and associated documentation files (the "Software"), to deal in 8 | * the Software without restriction, including without limitation the rights to 9 | * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 10 | * of the Software, and to permit persons to whom the Software is furnished to do 11 | * so, subject to the following conditions: 12 | * 13 | * The above copyright notice and this permission notice shall be included in all 14 | * copies or substantial portions of the Software. 15 | * 16 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 17 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 18 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 19 | * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 20 | * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 21 | * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 22 | * SOFTWARE. 23 | * 24 | *******************************************************************************/ 25 | 26 | #include "include/rvsif_base.h" 27 | 28 | rvs::ifbase::ifbase() 29 | :plibaction(nullptr), 30 | rvs_module_has_interface(nullptr) { 31 | } 32 | 33 | rvs::ifbase::~ifbase() { 34 | } 35 | 36 | rvs::ifbase::ifbase(const ifbase& rhs) { 37 | *this = rhs; 38 | } 39 | 40 | /** 41 | * @brief Assignment operator 42 | * 43 | * @param rhs reference to RHS instance 44 | * @return reference to LHS instance 45 | * 46 | */ 47 | rvs::ifbase& rvs::ifbase::operator=(const rvs::ifbase& rhs) { 48 | // self-assignment check 49 | if (this != &rhs) { 50 | plibaction = rhs.plibaction; 51 | rvs_module_has_interface = rhs.rvs_module_has_interface; 52 | } 53 | return *this; 54 | } 55 | 56 | /** 57 | * @brief Checks if action supports certain Inetrface ID 58 | * 59 | * @return 1 - IID is supporte, 0 - otherwise 60 | * 61 | */ 62 | int rvs::ifbase::has_interface(int iid) { 63 | return (*rvs_module_has_interface)(iid); 64 | } 65 | --------------------------------------------------------------------------------