Use 64 bit integers for RoctracerLogger::maxBufferSize_ instead of 32 bit #1156
+8
−8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The Roctracer has a limit on the max number of GPU events before it stops tracing. This limit was stored in a uint32_t variable maxBufferSize_. This limit can be changed using ROCTRACER_MAX_EVENTS, which is parsed as a signed int32_t. This means that there is still a hard limit on the number of GPU events at just over 2.1 billion (2^31 − 1). This may sound like an unreasonable number of events in a single trace, but I think users should at least be given the option to do so. And right now, it's impossible given the 32bit types.
This pull requests changes the relevant types to 64 bit integers. For extra context, the maxBufferSize_ is being compared to a size_t and logged here.