Bug 19847 – no GC memory above 4GB reported with --DRT-gcopt=profile:1
Status
RESOLVED
Resolution
FIXED
Severity
minor
Priority
P1
Component
druntime
Product
D
Version
D2
Platform
x86_64
OS
All
Creation time
2019-05-06T07:23:42Z
Last change time
2019-05-06T08:11:46Z
Keywords
pull
Assigned to
No Owner
Creator
Rainer Schuetze
Comments
Comment #0 by r.sagitario — 2019-05-06T07:23:42Z
Build this program with -m64:
void main()
{
ubyte[][] data;
foreach(i; 0..10_000)
data ~= new ubyte[1 << 20];
}
and run it with "--DRT:gcopt=profile:1". It reports
Number of collections: 14
Total GC prep time: 6 milliseconds
Total mark time: 12 milliseconds
Total sweep time: 29 milliseconds
Max Pause Time: 11 milliseconds
Grand total GC time: 47 milliseconds
GC summary: 4076 MB, 14 GC 47 ms, Pauses 18 ms < 11 ms
even though it allocates and retsins 10 GB of memory.
Comment #1 by dlang-bot — 2019-05-06T07:24:43Z
@rainers updated dlang/druntime pull request #2599 "GC: fix wrong profile result if more than 4GB used" fixing this issue:
- fix issue 19847 - GC: fix wrong profile result if more than 4GB used
https://github.com/dlang/druntime/pull/2599
Comment #2 by dlang-bot — 2019-05-06T08:11:46Z
dlang/druntime pull request #2599 "GC: fix wrong profile result if more than 4GB used" was merged into stable:
- 0afc69e7c02d39dbee785ff584a369db14e4f956 by Rainer Schuetze:
fix issue 19847 - GC: fix wrong profile result if more than 4GB used
https://github.com/dlang/druntime/pull/2599