Given how markers are written in the profile.json, CoreCLR GC markers generate a lot of data, especially when there are a lot of CoreCLR processes flying around. This PR adds some more fine-grained controls of what to capture and generate.
The reason this is in ProfileCreationProps and not in RecordingProps is because it influences conversion from an existing .etl file as well -- we may have an .etl file with full GC info, but we don't want to include it in the profile.json. But if we're recording, we can tell xperf to just not include these events at all.
Given how markers are written in the profile.json, CoreCLR GC markers generate a lot of data, especially when there are a lot of CoreCLR processes flying around. This PR adds some more fine-grained controls of what to capture and generate.
The reason this is in
ProfileCreationProps
and not inRecordingProps
is because it influences conversion from an existing .etl file as well -- we may have an .etl file with full GC info, but we don't want to include it in theprofile.json
. But if we're recording, we can tellxperf
to just not include these events at all.