Skip to content

Commit 0b9fa3e

Browse files
authored
Adding the per object heap limit configuration (#1356)
1 parent 0249f29 commit 0b9fa3e

File tree

2 files changed

+33
-0
lines changed

2 files changed

+33
-0
lines changed

src/benchmarks/gc/docs/bench_file.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,15 @@ complus_gcheapcount: `int | None`
193193
complus_gcheaphardlimit: `int | None`
194194
Hard limit on heap size, in bytes. (decimal)
195195

196+
complus_gcheaphardlimitsoh: `int | None`
197+
Hard limit on small object heap size, in bytes. (decimal)
198+
199+
complus_gcheaphardlimitloh: `int | None`
200+
Hard limit on large object heap size, in bytes. (decimal)
201+
202+
complus_gcheaphardlimitpoh: `int | None`
203+
Hard limit on pinned object heap size, in bytes. (decimal)
204+
196205
complus_gclargepages: `bool | None`
197206
Set to true to enable large pages.
198207

@@ -269,6 +278,15 @@ complus_gcheapcount: `int | None`
269278
complus_gcheaphardlimit: `int | None`
270279
Hard limit on heap size, in bytes. (decimal)
271280

281+
complus_gcheaphardlimitsoh: `int | None`
282+
Hard limit on small object heap size, in bytes. (decimal)
283+
284+
complus_gcheaphardlimitloh: `int | None`
285+
Hard limit on large object heap size, in bytes. (decimal)
286+
287+
complus_gcheaphardlimitpoh: `int | None`
288+
Hard limit on pinned object heap size, in bytes. (decimal)
289+
272290
complus_gclargepages: `bool | None`
273291
Set to true to enable large pages.
274292

src/benchmarks/gc/src/commonlib/bench_file.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,15 @@ def __post_init__(self) -> None:
128128
""",
129129
)
130130
@doc_field("complus_gcheaphardlimit", "Hard limit on heap size, in bytes. (decimal)")
131+
@doc_field(
132+
"complus_gcheaphardlimitsoh", "Hard limit on small object heap size, in bytes. (decimal)"
133+
)
134+
@doc_field(
135+
"complus_gcheaphardlimitloh", "Hard limit on large object heap size, in bytes. (decimal)"
136+
)
137+
@doc_field(
138+
"complus_gcheaphardlimitpoh", "Hard limit on pinned object heap size, in bytes. (decimal)"
139+
)
131140
@doc_field("complus_gclargepages", "Set to true to enable large pages.")
132141
@doc_field("complus_gcnoaffinitize", "Set to true to prevent affinitizing GC threads to cpu cores.")
133142
@doc_field("complus_gccpugroup", "Set to true to enable CPU groups.")
@@ -182,6 +191,9 @@ class ConfigOptions:
182191
complus_gcheapaffinitizeranges: Optional[str] = None
183192
complus_gcheapcount: Optional[int] = None
184193
complus_gcheaphardlimit: Optional[int] = None
194+
complus_gcheaphardlimitsoh: Optional[int] = None
195+
complus_gcheaphardlimitloh: Optional[int] = None
196+
complus_gcheaphardlimitpoh: Optional[int] = None
185197
complus_gclargepages: Optional[bool] = None
186198
complus_gcnoaffinitize: Optional[bool] = None
187199
complus_gccpugroup: Optional[bool] = None
@@ -342,6 +354,9 @@ def ob(name: str, v: Optional[bool]) -> Optional[Mapping[str, str]]:
342354
),
343355
od("COMPlus_GCHeapCount", cfg.complus_gcheapcount),
344356
od("COMPlus_GCHeapHardLimit", cfg.complus_gcheaphardlimit),
357+
od("COMPlus_GCHeapHardLimitSOH", cfg.complus_gcheaphardlimitsoh),
358+
od("COMPlus_GCHeapHardLimitLOH", cfg.complus_gcheaphardlimitloh),
359+
od("COMPlus_GCHeapHardLimitPOH", cfg.complus_gcheaphardlimitpoh),
345360
ob("COMPlus_GCLargePages", cfg.complus_gclargepages),
346361
ob("COMPlus_GCNoAffinitize", cfg.complus_gcnoaffinitize),
347362
ob("COMPlus_GCCpuGroup", cfg.complus_gccpugroup),

0 commit comments

Comments
 (0)