Cannot use Large Pages when running GC benchmarks
- Dominant language
- F#
- Stars
- 773
- Forks
- 301
- Avg merge
- 6d 9h
- Merged PRs (30d)
- 15
Description
I'm unable to run the GC benchmarks when I set `COMPlus_GCLargePages=true` in the bench file. Other applications that use large pages work fine and Local Security Policy has permissions correctly setup for the user to request large pages.
Steps to reproduce:
**high_memory_large_pages.yaml**
```yaml
vary: coreclr
test_executables:
defgcperfsim: C:\Users\alex\source\repos\performance\artifacts\bin\GCPerfSim\release\netcoreapp5.0\GCPerfSim.dll
coreclrs:
a:
core_root: C:\Users\alex\source\repos\runtime-master\artifacts\tests\coreclr\windows.x64.Release\Tests\Core_Root
options:
default_iteration_count: 1
default_max_seconds: 300
collect: thread_times
common_config:
complus_gcserver: true
complus_gcconcurrent: false
complus_gcheapcount: 110
complus_gclargepages: true
configs:
80pct:
memory_load:
percent: 80
benchmarks:
a:
arguments:
tc: 110
tagb: 40
tlgb: 5
lohar: 0
pohar: 0
sohsr: 100-4000
lohsr: 102400-204800
pohsr: 100-204800
sohsi: 30
lohsi: 0
pohsi: 0
sohpi: 50
lohpi: 0
sohfi: 0
lohfi: 0
pohfi: 0
allocType: reference
testKind: time
scores:
speed:
FirstToLastGCSeconds:
weight: 1
PauseDurationMSec_95P:
weight: 1
space:
Gen2ObjSpaceBeforeMB_Sum_MeanWhereIsBlockingGen2:
weight: -1
Gen2ObjSizeAfterMB_Sum_MeanWhereIsBlockingGen2:
weight: 1
```
```shell
$ py . run .\bench\suite-default\high_memory_large_pages.yaml --overwrite
09:59:47 Running defgcperfsim__a__80pct__a__0
Setting up memory load...
Done!
C:\Users\alex\source\repos\performance\src\benchmarks\gc\src\dependencies\PerfView.exe start -NoV2Rundown -NoNGENRundown -NoRundown -AcceptEULA -NoGUI -Merge:true -SessionName:CoreGCBench -zip:false -OnlyProviders:ClrPrivate:1:5,Clr:1:5 -ClrEvents:GC+Stack -KernelEvents:ThreadTime -LogFile:C:\Users\alex\source\repos\performance\src\benchmarks\gc\bench\suite-default\high_memory-test.yaml.out\defgcperfsim__a__80pct__a__0.perfview-log.txt -CircularMB:1024 -BufferSizeMB:1024 -DataFile:C:\Users\alex\source\repos\performance\src\benchmarks\gc\bench\suite-default\high_memory-test.yaml.out\defgcperfsim__a__80pct__a__0.etl
C:\Users\alex\source\repos\runtime-master\artifacts\tests\coreclr\windows.x64.Release\Tests\Core_Root\CoreRun.exe C:\Users\alex\source\repos\performance\artifacts\bin\GCPerfSim\release\netcoreapp5.0\GCPerfSim.dll -tc 110 -tagb 40.0 -tlgb 5.0 -lohar 0 -pohar 0 -sohsi 30 -lohsi 0 -pohsi 0 -sohsr 100-4000 -lohsr 102400-204800 -pohsr 100-204800 -sohpi 50 -lohpi 0 -sohfi 0 -lohfi 0 -pohfi 0 -allocType reference -testKind time (cwd C:\Users\alex\source\repos\performance\src\benchmarks\gc\bench\suite-default\high_memory-test.yaml.out\defgcperfsim__a__80pct__a__0)
BEGIN: coreclr_initialize failed - Error: 0x8013200e
END: coreclr_initialize failed - Error: 0x8013200e
C:\Users\alex\source\repos\performance\src\benchmarks\gc\src\dependencies\PerfView.exe stop -NoV2Rundown -NoNGENRundown -NoRundown -AcceptEULA -NoGUI -Merge:true -SessionName:CoreGCBench -zip:false -OnlyProviders:ClrPrivate:1:5,Clr:1:5 -ClrEvents:GC+Stack -KernelEvents:ThreadTime -LogFile:C:\Users\alex\source\repos\performance\src\benchmarks\gc\bench\suite-default\high_memory-test.yaml.out\defgcperfsim__a__80pct__a__0.perfview-log.txt -CircularMB:1024 -BufferSizeMB:1024 -DataFile:C:\Users\alex\source\repos\performance\src\benchmarks\gc\bench\suite-default\high_memory-test.yaml.out\defgcperfsim__a__80pct__a__0.etl
========= *WARNING*: Test 'C:\Users\alex\source\repos\performance\src\benchmarks\gc\bench\suite-default\high_memory-test.yaml' encountered errors. =========
*** Here is a summary of the problems found: ***
======= Executable 'defgcperfsim' =======
===== Core 'a' =====
=== Configuration '80pct' ===
- Benchmark: 'a' -
Iteration: 0
Error Message: Process failed with code 4294967295
Stack Trace:
File ".\src\exec\run_tests.py", line 182, in _run_all_benchmarks
t.out,
File ".\src\exec\run_single_test.py", line 110, in run_single_test
partial_test_status = _do_run_single_test(built, t, out)
File ".\src\exec\run_single_test.py", line 186, in _do_run_single_test
return _run_single_test_windows_perfview(built, t, out)
File ".\src\exec\run_single_test.py", line 417, in _run_single_test_windows_perfview
run_process, start_time_seconds=start_time_seconds, timeout_seconds=timeout_seconds
File ".\src\commonlib\util.py", line 481, in wait_on_process_with_timeout
assert killed or process.returncode == 0, f"Process failed with code {process.returncode}"
```
Please let me know if there is any other information I can provide. Thanks!
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.