提交線圖

518 次程式碼提交

作者 SHA1 備註 日期
Karl W Schulz 3acba4ccda introduce runtime config{} list - update launch_omniperf() routine to
include this argument

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz a40a667bd5 cleanup
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz 9f6e0a0a8b more refactor for profiling tests: introduce a launch_omniperf()
utility function and use across all profiling executions

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz 9677666ce7 update of profile tests to reorganize subset of output csv file
checking into a common utility function -> check_csv_files()

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz f0234f4571 update profile tests to run with 4-way parallelism
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz a57173f504 add GPU resource allocation file for parallel testing via ctest
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz 275b1080be expand previous profile test into multiple levaraging pytest marker
groups; define a gpu-based RESOURCE_GROUPS to support parallel
execution on multi-gpu nodes

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz 0f79a09a4a introduce a baseline_opts global var to house baseline profiling
options used by all command-line tests; update --device command-line
filtering to leverage HIP_VISIBLE_DEVICES if set

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz ca6d08d652 define pytest marker groups
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz fa587e967c reorg of profile mode testing functions to support parallel execution:
* demarcate tests into eight pytest groups
* leverage new get_output_dir() function to store profile output data
  in a unique directory per test
* disable METRIC_LOGGING

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
Karl W Schulz d56f10bb77 addition of testing utility functions
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-01-04 11:54:12 -06:00
JoseSantosAMD 44d00a0521 Pytest (#216)
* Added testing of limited set of metrics with absolute diff and relative diff

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Remove some print statements that aren't needed

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

---------

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>
2023-12-21 12:54:16 -08:00
colramos-amd 590d000af0 Remove timestamps from sysinfo
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-19 21:10:32 -06:00
colramos-amd 347935fe41 Removed outdated parameter from CLI processor
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-18 17:51:28 -06:00
Cole Ramos 7d93a086c2 Enabling Standalone GUI on 2.x (#214)
* Initial overhaul of Analyze mode. Basic CLI is enabled.

Signed-off-by: colramos-amd <colramos@amd.com>

* Merge branch '2.x' of github.com:AMDResearch/omniperf into 2.x-dev

Signed-off-by: colramos-amd <colramos@amd.com>

* fix comment typo

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>

* Move error logging to util.py

Signed-off-by: colramos-amd <colramos@amd.com>

* Move perfmon_configs dir into omniperf_soc dir. Rename config dirs for clarity

Signed-off-by: colramos-amd <colramos@amd.com>

* Add a supported_archs property to Omniperf base class

Signed-off-by: colramos-amd <colramos@amd.com>

* Add css assets for GUI styling

Signed-off-by: colramos-amd <colramos@amd.com>

* Re-organize roofline class. Improved useability

Signed-off-by: colramos-amd <colramos@amd.com>

* Enable standalone GUI

Signed-off-by: colramos-amd <colramos@amd.com>

* Remove outdated metric_configs. This was moved to omniperf_soc dir

Signed-off-by: colramos-amd <colramos@amd.com>

* Fix small bug in GUI to enable Mi100 visualization

Signed-off-by: colramos-amd <colramos@amd.com>

---------

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: Cole Ramos <colramos@amd.com>
Co-authored-by: Karl W Schulz <karl.schulz@amd.com>
2023-12-18 14:37:01 -08:00
Karl W Schulz 36a55f01e1 bump up max time for profile execution tests
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-12-14 13:48:22 -06:00
JoseSantosAMD 6d7c631cd7 Pytest (#212)
* Initial commit for pytest

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Check if csvs populated

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* pytest now checks soc for soc specific testing

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Roof only csvs updated

-  Removes dir if workload dir already present

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Tests create difference logs calculated from a baseline

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* pytest scripts updated to revamp test cases

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Fix dispatch notation

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Introduce a cmake option to enable python code coverage. It now
defaults to being disabled and can be enabled via a
-DENABLE_COVERAGE=ON option (#194).  Introduce CI on mi100 that
leverages code coverage and publishes results along with a testing
report.

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* update branch for CI -> 2.x

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* add profile execution test in cmake and enable in CI

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* run all ci tests

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Initial overhaul of Profile mode

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Modify vcopy to enable multi iteration and multi kernel for CI

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Update docs and --help menu to reflect new vcopy usage

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Fix typo in IPBlock logging

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Cache ascii art in source and remove ascii dependency

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Update testing collateral to reflect name change of kernel-verbose option

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Small typo corrections in docs

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Fixing more typos...

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* run profiler tests through queue

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* bump wallclock runlimit for test

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* add mi100 badge

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* include step to build hip binary

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* add additional top-level vars for number of kernels expected and
dispatch id; tests updated to use these vars so that vcopy binary can
be used instead of mixbench

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* add requirements-test.txt file to organize python testing dependencies (#205)

* add a requirements-test.txt file to organize additional python
packages needed to support testing; update CI to install python
packages from dependency files

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Dynamically load dependency checker from requirements.txt

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Add comments

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Replace any - with _ for checker logic

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Update cmake config with Fix for pyyaml package installation check

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* update mi100 CI config

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* upgrade jsdom version (#206)

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Adding the log_metric differ function

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Added missing hasattr checker

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Enable running on mi100 and fixed typos
- Also enables RHEL9 roofline

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* update CMakeLists.txt

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Remove pytest raises SystemExit

Add default thresholds

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Initial overhaul of Analyze mode. Basic CLI is enabled.

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Revert "Remove pytest raises SystemExit"

This reverts commit 9762728eb37e740c39ced87ced7dd7a0d423824d.

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* restore formal call to sys.exit() in top-level main; this is needed
for companion testing collateral which expects SystemExit exceptions
to be raised.

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Update return code error checks for roofline-only analysis on MI100

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* disable coverage comment

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* fix comment typo

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Move error logging to util.py

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Move perfmon_configs dir into omniperf_soc dir. Rename config dirs for clarity

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Add a supported_archs property to Omniperf base class

Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Remove pytest raises SystemExit

Add default thresholds

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Revert "Remove pytest raises SystemExit"

This reverts commit 9762728eb37e740c39ced87ced7dd7a0d423824d.

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Add Absolute Difference to report-diff output
-  Pytest regex updated to read Absolute Difference
-  Pytest creates Baseline (Assumes vcopy binary present)
-  Adding Metric logging

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* vcopy binary created before running tests

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Adding the log_metric differ function

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>

* Update test_profile_general.py

remove extra log_metric function

Signed-off-by: JoseSantosAMD <87447437+JoseSantosAMD@users.noreply.github.com>

* Update CMakeLists.txt

soc_params was merged into a class, it isn't a standalone file anymore

Signed-off-by: JoseSantosAMD <87447437+JoseSantosAMD@users.noreply.github.com>

---------

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
Signed-off-by: colramos-amd <colramos@amd.com>
Signed-off-by: JoseSantosAMD <87447437+JoseSantosAMD@users.noreply.github.com>
Co-authored-by: Karl W Schulz <karl.schulz@amd.com>
Co-authored-by: colramos-amd <colramos@amd.com>
Co-authored-by: Karl W. Schulz <koomie@users.noreply.github.com>
2023-12-13 14:50:22 -06:00
colramos-amd 97c5b2c0a1 Add a supported_archs property to Omniperf base class
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-11 16:49:06 -06:00
colramos-amd fbe6b2d683 Move perfmon_configs dir into omniperf_soc dir. Rename config dirs for clarity
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-11 16:49:06 -06:00
colramos-amd b99d448d3b Move error logging to util.py
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-11 16:49:06 -06:00
Karl W Schulz eaae69e2a6 fix comment typo
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-12-11 16:49:06 -06:00
colramos-amd 57a63b6eb1 Initial overhaul of Analyze mode. Basic CLI is enabled.
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-11 16:49:06 -06:00
Karl W Schulz 98b18d9f39 disable coverage comment
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-12-07 17:30:07 -06:00
Karl W Schulz 7f0fbc0a9a update vcopy execution in profile testing mode to match latest
command-line usage

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-12-07 17:15:03 -06:00
Karl W Schulz 3ba5f1d337 Update return code error checks for roofline-only analysis on MI100
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-12-07 15:57:45 -06:00
Karl W Schulz 9b4b6aee8e restore formal call to sys.exit() in top-level main; this is needed
for companion testing collateral which expects SystemExit exceptions
to be raised.

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-12-07 14:40:07 -06:00
JoseSantosAMD 2bf487ca4a update CMakeLists.txt
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>
2023-12-07 08:40:19 -06:00
JoseSantosAMD 92f91e4715 Enable running on mi100 and fixed typos
- Also enables RHEL9 roofline

Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>
2023-12-07 08:40:19 -06:00
colramos-amd cddc57bf08 Added missing hasattr checker
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-05 13:06:44 -06:00
Karl W Schulz bd803a0883 Merge branch '2.x' into 2.x-dev 2023-12-01 14:50:08 -06:00
colramos-amd f822a56b7c Fixing more typos...
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-01 13:43:07 -06:00
colramos-amd bc2d4b3491 Small typo corrections in docs
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-01 13:38:53 -06:00
colramos-amd c73b49704c Update testing collateral to reflect name change of kernel-verbose option
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-01 13:32:19 -06:00
colramos-amd 9a66f66ebc Cache ascii art in source and remove ascii dependency
Signed-off-by: colramos-amd <colramos@amd.com>
2023-12-01 13:28:56 -06:00
JoseSantosAMD f52a1c8df5 RHEL9 uses RHEL8 roofline binary (#208)
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>
2023-11-30 13:31:20 -06:00
colramos-amd 0f4b1d1d1f Fix typo in IPBlock logging
Signed-off-by: colramos-amd <colramos@amd.com>
2023-11-20 14:45:56 -06:00
colramos-amd f5b8cff990 Update docs and --help menu to reflect new vcopy usage
Signed-off-by: colramos-amd <colramos@amd.com>
2023-11-20 14:45:00 -06:00
colramos-amd 7cfaf27ece Modify vcopy to enable multi iteration and multi kernel for CI
Signed-off-by: colramos-amd <colramos@amd.com>
2023-11-20 14:24:21 -06:00
JoseSantosAMD 235f812e2c upgrade jsdom version (#206)
Signed-off-by: JoseSantosAMD <Jose.Santos@amd.com>
2023-11-20 12:57:29 -06:00
Karl W Schulz 63d6289754 update mi100 CI config
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-11-17 16:16:47 -06:00
Karl W Schulz f100ef8ff5 Update cmake config with Fix for pyyaml package installation check
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-11-17 15:14:10 -07:00
colramos-amd 646c311af6 Replace any - with _ for checker logic
Signed-off-by: colramos-amd <colramos@amd.com>
2023-11-17 15:14:10 -07:00
colramos-amd 69f705f634 Add comments
Signed-off-by: colramos-amd <colramos@amd.com>
2023-11-17 15:14:10 -07:00
colramos-amd c850d83bbd Dynamically load dependency checker from requirements.txt
Signed-off-by: colramos-amd <colramos@amd.com>
2023-11-17 15:14:10 -07:00
Karl W. Schulz a6ace99bde add requirements-test.txt file to organize python testing dependencies (#205)
* add a requirements-test.txt file to organize additional python
packages needed to support testing; update CI to install python
packages from dependency files

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-11-17 13:30:39 -06:00
Karl W Schulz df4d508a03 Merge branch 'badge' into 2.x 2023-11-02 08:30:07 -05:00
Karl W Schulz bacdf8c09d bump wallclock runlimit for test
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-11-01 17:36:54 -05:00
Karl W Schulz dd36ee2a29 run profiler tests through queue
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-11-01 17:34:37 -05:00
Karl W Schulz 65f150e998 bump wallclock runlimit for test
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-11-01 17:32:04 -05:00
Karl W Schulz 12fe6cc508 add additional top-level vars for number of kernels expected and
dispatch id; tests updated to use these vars so that vcopy binary can
be used instead of mixbench

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2023-11-01 11:30:01 -05:00