Back to all reviewers

Enable configurable instrumentation

dotnet/runtime
Based on 2 comments
Other

Always provide configurable options for performance instrumentation and hardware acceleration in your codebase. These options should be clearly documented and defaulted appropriately for common scenarios.

Performance Optimization Other

Reviewer Prompt

Always provide configurable options for performance instrumentation and hardware acceleration in your codebase. These options should be clearly documented and defaulted appropriately for common scenarios.

For hardware optimizations:

  • Ensure feature flags are available to enable/disable specific hardware acceleration capabilities
  • Document precisely which technology variant each flag controls
  • Set sensible defaults that enable optimizations for common hardware but don’t break compatibility
// Good example:
RETAIL_CONFIG_DWORD_INFO(EXTERNAL_EnableAVXVNNIINT8, W("EnableAVXVNNIINT8"), 1, "Allows AVXVNNI8+ hardware intrinsics to be disabled")

For performance measurement:

  • Include build properties that can toggle instrumentation capabilities
  • Make instrumentation switchable to avoid performance overhead in production
  • Provide sufficient options to cover different performance analysis needs
<NestedBuildProperty Include="WasmEnableEventPipe" />
<NestedBuildProperty Include="WasmPerformanceInstrumentation" />

Implementing configurable performance options allows teams to make data-driven optimization decisions and tailor application behavior to specific deployment environments.

2
Comments Analyzed
Other
Primary Language
Performance Optimization
Category

Source Discussions