Граф коммитов

38 Коммитов

Автор SHA1 Сообщение Дата
xuchen-amd c48e6e31cf Add the ability to determine GPU model from Chip ID (#423)
* Add the ability to determine GPU model from Chip ID for distinguishing MI300 systems by using a built-in dictionary.

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

* Add support for MI300X_A1

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

* Remove MI308X identification using num CUs, and format Python using black.

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

* Add Read the Docs

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

* Add sphinx requirement

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

* Remove gpu_model identification using gpu_arch

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

* Remove OMNIPERF_ARCH_OVERRIDE and its usage. Determining MI300 gpu model solely based on chip id.

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

* Fix Python formatting using black.

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

---------

Signed-off-by: xuchen-amd <xuchen@amd.com>
2024-09-25 17:21:40 +00:00
Karl W Schulz e85037fdfb move set_locale_encoding() to occur after logging is setup - allows
function to use console_error() directly (https://github.com/AMDResearch/omniperf/pull/308#discussion_r1519914083)

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-03-11 14:19:01 -05:00
Karl W. Schulz a3b68c7042 Update src/omniperf_base.py
Co-authored-by: Cole Ramos <colramos@amd.com>
Signed-off-by: Karl W. Schulz <koomie@users.noreply.github.com>
2024-03-11 14:19:01 -05:00
Karl W Schulz 27a57bdafb refactor setting of local encoding; remove from top-level omniperf
wrapper and push into base class via a companion utility function

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-03-11 14:19:01 -05:00
Karl W Schulz f4483e3c4e enable file-logger in profiling workflow; turn some info messages into debug
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-03-11 14:19:01 -05:00
Karl W Schulz e24e6c35a5 refactor logging initialization into two steps:
(1) setup_logging_handler -> called prior to arg parsing
(2) setup_logging_priority -> called after arg parsing

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-03-11 14:19:01 -05:00
Karl W Schulz df4f881ed3 apply formatter
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-03-11 14:19:01 -05:00
Karl W Schulz 2dd72f7366 adding --quiet and --verbose options to top-level help info; pass
quiet arg to setup_logging function

Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-03-11 14:19:01 -05:00
Karl W Schulz 48de8ae490 assign loglevel attribute in omniperf base class
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-03-11 14:19:01 -05:00
colramos-amd f2aac37178 Fix python formatting
Signed-off-by: colramos-amd <colramos@amd.com>
2024-03-11 14:19:01 -05:00
colramos-amd 5ed9a5c902 Connect verbosity flag to loglevel
Signed-off-by: colramos-amd <colramos@amd.com>
2024-03-11 14:19:01 -05:00
colramos-amd 5bf38a4fed All logging should use call new functions
Signed-off-by: colramos-amd <colramos@amd.com>
2024-03-11 14:19:01 -05:00
colramos-amd d6f45411eb Python formatting
Signed-off-by: colramos-amd <colramos@amd.com>
2024-03-01 15:50:42 -06:00
Nicholas Curtis 200961ffd9 Re-implement machine-specs to contain documentation, units, etc. Print using tabulate
Signed-off-by: Nicholas Curtis <nicurtis@amd.com>
2024-03-01 15:50:42 -06:00
Nicholas Curtis a25da8d954 fix warning about unescaped control sequence
Signed-off-by: Nicholas Curtis <nicurtis@amd.com>
2024-03-01 15:50:42 -06:00
colramos-amd c17e39189f Enhance correct_sys_info() func and err checking
Signed-off-by: colramos-amd <colramos@amd.com>
2024-03-01 15:50:42 -06:00
colramos-amd 86b6c8e848 Renaming global spec vars. Replacing L2Banks with total_l2_chan (#251)
Signed-off-by: colramos-amd <colramos@amd.com>
2024-03-01 15:50:42 -06:00
colramos-amd 3b1b8d7b5b Reorganize the specs module to reduce duplicate code
Signed-off-by: colramos-amd <colramos@amd.com>
2024-03-01 15:50:42 -06:00
Karl W Schulz 79b877d679 code formatting updates
Signed-off-by: Karl W Schulz <karl.schulz@amd.com>
2024-02-22 16:02:25 -06:00
colramos-amd e1867d34d3 Enable database mode
Signed-off-by: colramos-amd <colramos@amd.com>
2024-01-30 10:43:30 -06:00
Karl W. Schulz d7b6cf81e6 update headers for 2024 calendar year
Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
2024-01-24 17:50:31 -06:00
colramos-amd e5ac5ccf7d Responding to Karls review
Signed-off-by: colramos-amd <colramos@amd.com>
2024-01-24 16:30:04 -06:00
colramos-amd a15857cd1d Add implementation for gfx940 arch
Signed-off-by: colramos-amd <colramos@amd.com>
2024-01-24 16:30:04 -06:00
colramos-amd f229b36277 Adding support for Mi300X-A0
Signed-off-by: colramos-amd <colramos@amd.com>
2024-01-24 16:30:04 -06:00
colramos-amd a171e776e4 Update headers based on latest rocprofv2 output. Overwrite old headers.
Signed-off-by: colramos-amd <colramos@amd.com>
2024-01-24 16:30:04 -06:00
coleramos425 7846a663fd Build out gfx942 SoC class and improve SoC detection
Signed-off-by: coleramos425 <colramos@amd.com>
2024-01-24 16:30:04 -06:00
coleramos425 224d627438 Add options for --specs and --specs-correction
Co-authored-by: fei.zheng <fei.zheng@amd.com>
Signed-off-by: coleramos425 <colramos@amd.com>
2024-01-24 16:30:04 -06:00
colramos-amd a1b5c252e2 Optimizations to run_prof() utility
Signed-off-by: colramos-amd <colramos@amd.com>
2024-01-24 16:30:04 -06:00
colramos-amd 987f612489 Adding sbios, vbios, and partitioning info to specs. Also reorganizing fields.
Co-authored-by: fei.zheng <fei.zheng@amd.com>
Signed-off-by: colramos-amd <colramos@amd.com>
2024-01-24 16:30:04 -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
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
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
colramos-amd 87388227ca Initial overhaul of Profile mode
Signed-off-by: colramos-amd <colramos@amd.com>
2023-10-31 15:11:17 -05:00
Karl W. Schulz c55508dfe6 Addition of new files to demonstrate top-level data structure refactoring for
2.x version.  Introduces an Omniperf class as the primary structure to organize
work elements and allows for a simple main() which is highlighted in a
omniperf2 example. Demonstrates desired logger functionality including a custom
trace loglevel that can be used to provide more verbosity beyond the debug
level. Also introduces three abstract base classes to organize flexibility for
alternative implementations of key elements within omniperf:

  * underlying profiler tool (e.g. rocprof, rocscope, etc)
  * supported GPU architectures (SoC)
  * analysis environments (e.g. CLI, web-based, etc)

Stub examples for child classes relevant to currently supported options within
omniperf are included in separate files.

Signed-off-by: Karl W. Schulz <karl.schulz@amd.com>
2023-10-04 09:52:50 -05:00