a5a56425bb
Change-Id: Ieaef51422c11ec27d56ff19953f9a5dd1f563353
45 строки
1.7 KiB
Plaintext
45 строки
1.7 KiB
Plaintext
Memory Validation Tests
|
|
|
|
The tests here are used to validate TCP and TCC. The validation focuses on the
|
|
commonly used stats like cache hit/miss, and memory traffic. The kernels used
|
|
for testing are dedicated ones, e.g., pointer chase,showing regular parrterns,
|
|
and thus providing expected stats.
|
|
|
|
The testing workflow is that:
|
|
1) dedicated kernels will be executed and profiled using the specified
|
|
counters/events in rocprofiler;
|
|
2) profiling results will be parsed using the provided scripts, and compared
|
|
against expected values (self-checking);
|
|
3) the comparion results are printed onto screen to show the test is a pass or
|
|
fail.
|
|
|
|
#### Source tree ####
|
|
- run.sh top-level script to start all tests
|
|
- Makefile top-level makefile
|
|
- run_scripts/
|
|
- global.cfg: settings and global codes used by .sh files
|
|
- test_cache_miss.sh: test TCP/TCC miss rates
|
|
- test_fetchwrite_size.sh: test memory fetch/write sizes
|
|
- pmc_config_files/
|
|
- cache_pmc.txt: counters used for cache tests
|
|
- benches/
|
|
- test_cache/: benchmark used for cached-related tests
|
|
- Makefile: makefile to compile benchmarks
|
|
|
|
|
|
#### How to run ####
|
|
1) step into the test folder
|
|
$cd test/memory_validation/
|
|
|
|
2) run tests
|
|
to start all tests
|
|
$run.sh
|
|
or, to separtely run each
|
|
$run_scripts/test_cache_miss.sh [TCP/TCC/TCP TCC]
|
|
$run_scripts/test_fetchwrite_size.sh
|
|
|
|
#### Known issues ####
|
|
while all tests have be thoroughly tests on Vega 10 and all show [PASS],
|
|
occasionally some tests show [FAIL]. Possbile reasons is interference onto test
|
|
benchmarks from runtime processes. You just need to run the tests again.
|