Class GcMode
Assembly: BenchmarkDotNet.dll
Syntax
public sealed class GcMode : JobMode<GcMode>, IEquatable<GcMode>
Fields
AllowVeryLargeObjectsCharacteristic
Declaration
public static readonly Characteristic<bool> AllowVeryLargeObjectsCharacteristic
Field Value
ConcurrentCharacteristic
Declaration
public static readonly Characteristic<bool> ConcurrentCharacteristic
Field Value
CpuGroupsCharacteristic
Declaration
public static readonly Characteristic<bool> CpuGroupsCharacteristic
Field Value
ForceCharacteristic
Declaration
public static readonly Characteristic<bool> ForceCharacteristic
Field Value
HeapAffinitizeMaskCharacteristic
Declaration
public static readonly Characteristic<int> HeapAffinitizeMaskCharacteristic
Field Value
HeapCountCharacteristic
Declaration
public static readonly Characteristic<int> HeapCountCharacteristic
Field Value
NoAffinitizeCharacteristic
Declaration
public static readonly Characteristic<bool> NoAffinitizeCharacteristic
Field Value
RetainVmCharacteristic
Declaration
public static readonly Characteristic<bool> RetainVmCharacteristic
Field Value
ServerCharacteristic
Declaration
public static readonly Characteristic<bool> ServerCharacteristic
Field Value
Properties
AllowVeryLargeObjects
On 64-bit platforms, enables arrays that are greater than 2 gigabytes (GB) in total size.
false: Arrays greater than 2 GB in total size are not enabled. This is the default.
true: Arrays greater than 2 GB in total size are enabled on 64-bit platforms.
Declaration
public bool AllowVeryLargeObjects { get; set; }
Property Value
Concurrent
Specifies whether the common language runtime runs garbage collection on a separate thread.
false: Does not run garbage collection concurrently.
true: Runs garbage collection concurrently. This is the default.
Declaration
public bool Concurrent { get; set; }
Property Value
CpuGroups
Specifies whether garbage collection supports multiple CPU groups.
false: Garbage collection does not support multiple CPU groups. This is the default.
true: Garbage collection supports multiple CPU groups, if server garbage collection is enabled.
Declaration
public bool CpuGroups { get; set; }
Property Value
Force
Specifies whether the BenchmarkDotNet's benchmark runner forces full garbage collection after each benchmark invocation
false: Does not force garbage collection.
true: Forces full garbage collection after each benchmark invocation. This is the default.
Declaration
public bool Force { get; set; }
Property Value
HeapAffinitizeMask
process mask, see MSDN for more.
Declaration
public int HeapAffinitizeMask { get; set; }
Property Value
HeapCount
specify the # of Server GC threads/heaps, must be smaller than the # of logical CPUs the process is allowed to run on,
ie, if you don't specifically affinitize your process it means the # of total logical CPUs on the machine;
otherwise this is the # of logical CPUs you affinitized your process to.
Declaration
public int HeapCount { get; set; }
Property Value
NoAffinitize
specify true to disable hard affinity of Server GC threads to CPUs
Declaration
public bool NoAffinitize { get; set; }
Property Value
RetainVm
Put segments that should be deleted on a standby list for future use instead of releasing them back to the OS
The default is false
Declaration
public bool RetainVm { get; set; }
Property Value
Server
Specifies whether the common language runtime runs server garbage collection.
false: Does not run server garbage collection. This is the default.
true: Runs server garbage collection.
Declaration
public bool Server { get; set; }
Property Value
Methods
Equals(GcMode)
Declaration
public bool Equals(GcMode other)
Parameters
Type |
Name |
Description |
GcMode |
other |
|
Returns
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Overrides
Implements
Extension Methods