-
Notifications
You must be signed in to change notification settings - Fork 461
fix(profiling): release the GIL for internal mutation #14852
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
We make the stack v2 sampler release the GIL when performing internal state mutation that can require acquiring other internal locks. This gives the chance to other threads to make progress while the tracking operations wait on an internal mutex.
ae5f973
to
4f77b58
Compare
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 239 ± 2 ms. The average import time from base is: 242 ± 3 ms. The import time difference between this PR and base is: -3.5 ± 0.1 ms. Import time breakdownThe following import paths have shrunk:
|
Performance SLOsComparing candidate fix/profiler-release-gil-internal-mutation (ad0897a) with baseline main (473fd58) 📈 Performance Regressions (2 suites)📈 iast_aspects - 40/40✅ re_expand_aspectTime: ✅ 33.950µs (SLO: <40.000µs 📉 -15.1%) vs baseline: +6.2% Memory: ✅ 37.709MB (SLO: <39.000MB -3.3%) vs baseline: +5.1% ✅ re_expand_noaspectTime: ✅ 29.992µs (SLO: <40.000µs 📉 -25.0%) vs baseline: +4.6% Memory: ✅ 37.591MB (SLO: <39.000MB -3.6%) vs baseline: +4.6% ✅ re_findall_aspectTime: ✅ 2.908µs (SLO: <10.000µs 📉 -70.9%) vs baseline: ~same Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.8% ✅ re_findall_noaspectTime: ✅ 1.457µs (SLO: <10.000µs 📉 -85.4%) vs baseline: +2.4% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.9% ✅ re_finditer_aspectTime: ✅ 4.504µs (SLO: <10.000µs 📉 -55.0%) vs baseline: +0.8% Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.8% ✅ re_finditer_noaspectTime: ✅ 1.411µs (SLO: <10.000µs 📉 -85.9%) vs baseline: -0.5% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ re_fullmatch_aspectTime: ✅ 2.982µs (SLO: <10.000µs 📉 -70.2%) vs baseline: 📈 +10.1% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.7% ✅ re_fullmatch_noaspectTime: ✅ 1.304µs (SLO: <10.000µs 📉 -87.0%) vs baseline: +0.3% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ re_group_aspectTime: ✅ 3.143µs (SLO: <10.000µs 📉 -68.6%) vs baseline: +6.7% Memory: ✅ 37.631MB (SLO: <39.000MB -3.5%) vs baseline: +4.6% ✅ re_group_noaspectTime: ✅ 1.622µs (SLO: <10.000µs 📉 -83.8%) vs baseline: +1.4% Memory: ✅ 37.729MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ re_groups_aspectTime: ✅ 3.374µs (SLO: <10.000µs 📉 -66.3%) vs baseline: +9.3% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ re_groups_noaspectTime: ✅ 1.700µs (SLO: <10.000µs 📉 -83.0%) vs baseline: +0.9% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ re_match_aspectTime: ✅ 3.077µs (SLO: <10.000µs 📉 -69.2%) vs baseline: 📈 +13.0% Memory: ✅ 37.729MB (SLO: <39.000MB -3.3%) vs baseline: +4.9% ✅ re_match_noaspectTime: ✅ 1.315µs (SLO: <10.000µs 📉 -86.9%) vs baseline: +0.5% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ re_search_aspectTime: ✅ 2.665µs (SLO: <10.000µs 📉 -73.4%) vs baseline: +3.4% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.9% ✅ re_search_noaspectTime: ✅ 1.215µs (SLO: <10.000µs 📉 -87.8%) vs baseline: +0.7% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ re_sub_aspectTime: ✅ 3.627µs (SLO: <10.000µs 📉 -63.7%) vs baseline: +6.0% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.8% ✅ re_sub_noaspectTime: ✅ 1.529µs (SLO: <10.000µs 📉 -84.7%) vs baseline: -0.1% Memory: ✅ 37.670MB (SLO: <39.000MB -3.4%) vs baseline: +4.8% ✅ re_subn_aspectTime: ✅ 3.734µs (SLO: <10.000µs 📉 -62.7%) vs baseline: +2.6% Memory: ✅ 37.690MB (SLO: <39.000MB -3.4%) vs baseline: +4.7% ✅ re_subn_noaspectTime: ✅ 1.616µs (SLO: <10.000µs 📉 -83.8%) vs baseline: +0.1% Memory: ✅ 37.650MB (SLO: <39.000MB -3.5%) vs baseline: +4.9% 📈 iastaspects - 118/118✅ add_aspectTime: ✅ 0.408µs (SLO: <10.000µs 📉 -95.9%) vs baseline: -0.3% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ add_inplace_aspectTime: ✅ 0.405µs (SLO: <10.000µs 📉 -95.9%) vs baseline: ~same Memory: ✅ 37.768MB (SLO: <39.000MB -3.2%) vs baseline: +4.0% ✅ add_inplace_noaspectTime: ✅ 0.318µs (SLO: <10.000µs 📉 -96.8%) vs baseline: +0.3% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ add_noaspectTime: ✅ 0.277µs (SLO: <10.000µs 📉 -97.2%) vs baseline: -0.7% Memory: ✅ 37.808MB (SLO: <39.000MB -3.1%) vs baseline: +4.1% ✅ bytearray_aspectTime: ✅ 1.382µs (SLO: <10.000µs 📉 -86.2%) vs baseline: +4.5% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ bytearray_extend_aspectTime: ✅ 1.467µs (SLO: <10.000µs 📉 -85.3%) vs baseline: +1.5% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ bytearray_extend_noaspectTime: ✅ 0.618µs (SLO: <10.000µs 📉 -93.8%) vs baseline: +0.5% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ bytearray_noaspectTime: ✅ 0.485µs (SLO: <10.000µs 📉 -95.1%) vs baseline: -0.2% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ bytes_aspectTime: ✅ 1.290µs (SLO: <10.000µs 📉 -87.1%) vs baseline: +0.7% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ bytes_noaspectTime: ✅ 0.493µs (SLO: <10.000µs 📉 -95.1%) vs baseline: -1.2% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ bytesio_aspectTime: ✅ 1.352µs (SLO: <10.000µs 📉 -86.5%) vs baseline: -0.4% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +5.0% ✅ bytesio_noaspectTime: ✅ 0.501µs (SLO: <10.000µs 📉 -95.0%) vs baseline: +0.9% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +5.1% ✅ capitalize_aspectTime: ✅ 0.733µs (SLO: <10.000µs 📉 -92.7%) vs baseline: -0.9% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.0% ✅ capitalize_noaspectTime: ✅ 0.437µs (SLO: <10.000µs 📉 -95.6%) vs baseline: -0.1% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +4.7% ✅ casefold_aspectTime: ✅ 0.737µs (SLO: <10.000µs 📉 -92.6%) vs baseline: -0.6% Memory: ✅ 38.024MB (SLO: <39.000MB -2.5%) vs baseline: +4.7% ✅ casefold_noaspectTime: ✅ 0.369µs (SLO: <10.000µs 📉 -96.3%) vs baseline: -0.5% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ decode_aspectTime: ✅ 0.725µs (SLO: <10.000µs 📉 -92.8%) vs baseline: -0.4% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ decode_noaspectTime: ✅ 0.422µs (SLO: <10.000µs 📉 -95.8%) vs baseline: +0.9% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.8% ✅ encode_aspectTime: ✅ 0.711µs (SLO: <10.000µs 📉 -92.9%) vs baseline: +0.7% Memory: ✅ 38.024MB (SLO: <39.000MB -2.5%) vs baseline: +4.8% ✅ encode_noaspectTime: ✅ 0.403µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -0.3% Memory: ✅ 37.965MB (SLO: <39.000MB -2.7%) vs baseline: +4.7% ✅ format_aspectTime: ✅ 3.353µs (SLO: <10.000µs 📉 -66.5%) vs baseline: -1.6% Memory: ✅ 38.024MB (SLO: <39.000MB -2.5%) vs baseline: +4.7% ✅ format_map_aspectTime: ✅ 4.119µs (SLO: <10.000µs 📉 -58.8%) vs baseline: 📈 +14.3% Memory: ✅ 37.926MB (SLO: <39.000MB -2.8%) vs baseline: +4.3% ✅ format_map_noaspectTime: ✅ 0.779µs (SLO: <10.000µs 📉 -92.2%) vs baseline: +0.9% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ format_noaspectTime: ✅ 0.598µs (SLO: <10.000µs 📉 -94.0%) vs baseline: +0.9% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ index_aspectTime: ✅ 0.360µs (SLO: <10.000µs 📉 -96.4%) vs baseline: +0.2% Memory: ✅ 38.142MB (SLO: <39.000MB -2.2%) vs baseline: +5.0% ✅ index_noaspectTime: ✅ 0.276µs (SLO: <10.000µs 📉 -97.2%) vs baseline: -1.5% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ join_aspectTime: ✅ 1.393µs (SLO: <10.000µs 📉 -86.1%) vs baseline: -0.2% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +5.1% ✅ join_noaspectTime: ✅ 0.491µs (SLO: <10.000µs 📉 -95.1%) vs baseline: +0.3% Memory: ✅ 37.847MB (SLO: <39.000MB -3.0%) vs baseline: +4.2% ✅ ljust_aspectTime: ✅ 2.499µs (SLO: <20.000µs 📉 -87.5%) vs baseline: +1.8% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.0% ✅ ljust_noaspectTime: ✅ 0.402µs (SLO: <10.000µs 📉 -96.0%) vs baseline: ~same Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +4.7% ✅ lower_aspectTime: ✅ 2.338µs (SLO: <10.000µs 📉 -76.6%) vs baseline: +3.8% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.1% ✅ lower_noaspectTime: ✅ 0.364µs (SLO: <10.000µs 📉 -96.4%) vs baseline: -1.1% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +5.0% ✅ lstrip_aspectTime: ✅ 2.229µs (SLO: <20.000µs 📉 -88.9%) vs baseline: -0.9% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ lstrip_noaspectTime: ✅ 0.384µs (SLO: <10.000µs 📉 -96.2%) vs baseline: +1.6% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +4.8% ✅ modulo_aspectTime: ✅ 1.009µs (SLO: <10.000µs 📉 -89.9%) vs baseline: +1.5% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.1% ✅ modulo_aspect_for_bytearray_bytearrayTime: ✅ 1.541µs (SLO: <10.000µs 📉 -84.6%) vs baseline: +0.4% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ modulo_aspect_for_bytesTime: ✅ 0.981µs (SLO: <10.000µs 📉 -90.2%) vs baseline: ~same Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ modulo_aspect_for_bytes_bytearrayTime: ✅ 1.202µs (SLO: <10.000µs 📉 -88.0%) vs baseline: +1.3% Memory: ✅ 38.142MB (SLO: <39.000MB -2.2%) vs baseline: +5.1% ✅ modulo_noaspectTime: ✅ 0.627µs (SLO: <10.000µs 📉 -93.7%) vs baseline: -0.2% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ replace_aspectTime: ✅ 4.822µs (SLO: <10.000µs 📉 -51.8%) vs baseline: +0.2% Memory: ✅ 38.004MB (SLO: <39.000MB -2.6%) vs baseline: +4.6% ✅ replace_noaspectTime: ✅ 0.462µs (SLO: <10.000µs 📉 -95.4%) vs baseline: -0.3% Memory: ✅ 37.985MB (SLO: <39.000MB -2.6%) vs baseline: +4.6% ✅ repr_aspectTime: ✅ 0.909µs (SLO: <10.000µs 📉 -90.9%) vs baseline: +0.6% Memory: ✅ 38.024MB (SLO: <39.000MB -2.5%) vs baseline: +4.9% ✅ repr_noaspectTime: ✅ 0.415µs (SLO: <10.000µs 📉 -95.9%) vs baseline: +0.8% Memory: ✅ 37.788MB (SLO: <39.000MB -3.1%) vs baseline: +4.2% ✅ rstrip_aspectTime: ✅ 1.919µs (SLO: <20.000µs 📉 -90.4%) vs baseline: -0.5% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ rstrip_noaspectTime: ✅ 0.382µs (SLO: <10.000µs 📉 -96.2%) vs baseline: +0.8% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ slice_aspectTime: ✅ 0.490µs (SLO: <10.000µs 📉 -95.1%) vs baseline: -1.1% Memory: ✅ 38.142MB (SLO: <39.000MB -2.2%) vs baseline: +5.0% ✅ slice_noaspectTime: ✅ 0.453µs (SLO: <10.000µs 📉 -95.5%) vs baseline: +0.6% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ stringio_aspectTime: ✅ 1.531µs (SLO: <10.000µs 📉 -84.7%) vs baseline: -0.4% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +5.0% ✅ stringio_noaspectTime: ✅ 0.730µs (SLO: <10.000µs 📉 -92.7%) vs baseline: +1.7% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.1% ✅ strip_aspectTime: ✅ 2.215µs (SLO: <20.000µs 📉 -88.9%) vs baseline: +0.2% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ strip_noaspectTime: ✅ 0.382µs (SLO: <10.000µs 📉 -96.2%) vs baseline: -1.2% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.0% ✅ swapcase_aspectTime: ✅ 2.407µs (SLO: <10.000µs 📉 -75.9%) vs baseline: +0.3% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ swapcase_noaspectTime: ✅ 0.535µs (SLO: <10.000µs 📉 -94.6%) vs baseline: ~same Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ title_aspectTime: ✅ 2.362µs (SLO: <10.000µs 📉 -76.4%) vs baseline: +0.3% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ title_noaspectTime: ✅ 0.507µs (SLO: <10.000µs 📉 -94.9%) vs baseline: +0.9% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ translate_aspectTime: ✅ 3.212µs (SLO: <10.000µs 📉 -67.9%) vs baseline: +0.3% Memory: ✅ 38.024MB (SLO: <39.000MB -2.5%) vs baseline: +4.8% ✅ translate_noaspectTime: ✅ 1.045µs (SLO: <10.000µs 📉 -89.6%) vs baseline: +0.2% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +4.7% ✅ upper_aspectTime: ✅ 2.240µs (SLO: <10.000µs 📉 -77.6%) vs baseline: +0.8% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.0% ✅ upper_noaspectTime: ✅ 0.375µs (SLO: <10.000µs 📉 -96.3%) vs baseline: +2.8% Memory: ✅ 38.024MB (SLO: <39.000MB -2.5%) vs baseline: +4.7% 🟡 Near SLO Breach (4 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 20.441ms (SLO: <22.300ms -8.3%) vs baseline: +0.2% Memory: ✅ 65.538MB (SLO: <67.000MB -2.2%) vs baseline: +4.9% ✅ exception-replay-enabledTime: ✅ 1.344ms (SLO: <1.450ms -7.3%) vs baseline: ~same Memory: ✅ 64.527MB (SLO: <67.000MB -3.7%) vs baseline: +4.7% ✅ iastTime: ✅ 20.455ms (SLO: <22.250ms -8.1%) vs baseline: +0.1% Memory: ✅ 65.516MB (SLO: <67.000MB -2.2%) vs baseline: +5.0% ✅ profilerTime: ✅ 15.297ms (SLO: <16.550ms -7.6%) vs baseline: ~same Memory: ✅ 53.709MB (SLO: <54.500MB 🟡 -1.5%) vs baseline: +4.9% ✅ resource-renamingTime: ✅ 20.570ms (SLO: <21.750ms -5.4%) vs baseline: ~same Memory: ✅ 65.430MB (SLO: <67.000MB -2.3%) vs baseline: +4.9% ✅ span-code-originTime: ✅ 26.076ms (SLO: <28.200ms -7.5%) vs baseline: -0.4% Memory: ✅ 68.385MB (SLO: <69.500MB 🟡 -1.6%) vs baseline: +6.3% ✅ tracerTime: ✅ 20.413ms (SLO: <21.750ms -6.1%) vs baseline: -0.4% Memory: ✅ 65.455MB (SLO: <67.000MB -2.3%) vs baseline: +4.9% ✅ tracer-and-profilerTime: ✅ 22.065ms (SLO: <23.500ms -6.1%) vs baseline: +0.2% Memory: ✅ 66.610MB (SLO: <67.500MB 🟡 -1.3%) vs baseline: +5.0% ✅ tracer-dont-create-db-spansTime: ✅ 19.298ms (SLO: <21.500ms 📉 -10.2%) vs baseline: -0.2% Memory: ✅ 65.468MB (SLO: <66.000MB 🟡 -0.8%) vs baseline: +4.8% ✅ tracer-minimalTime: ✅ 16.626ms (SLO: <17.500ms -5.0%) vs baseline: ~same Memory: ✅ 65.458MB (SLO: <66.000MB 🟡 -0.8%) vs baseline: +4.8% ✅ tracer-nativeTime: ✅ 20.468ms (SLO: <21.750ms -5.9%) vs baseline: -0.5% Memory: ✅ 71.402MB (SLO: <72.500MB 🟡 -1.5%) vs baseline: +4.8% ✅ tracer-no-cachesTime: ✅ 18.369ms (SLO: <19.650ms -6.5%) vs baseline: -0.3% Memory: ✅ 65.465MB (SLO: <67.000MB -2.3%) vs baseline: +4.9% ✅ tracer-no-databasesTime: ✅ 18.793ms (SLO: <20.100ms -6.5%) vs baseline: ~same Memory: ✅ 65.406MB (SLO: <67.000MB -2.4%) vs baseline: +4.8% ✅ tracer-no-middlewareTime: ✅ 20.148ms (SLO: <21.500ms -6.3%) vs baseline: ~same Memory: ✅ 65.394MB (SLO: <67.000MB -2.4%) vs baseline: +4.7% ✅ tracer-no-templatesTime: ✅ 20.292ms (SLO: <22.000ms -7.8%) vs baseline: -0.1% Memory: ✅ 65.329MB (SLO: <67.000MB -2.5%) vs baseline: +4.6% 🟡 errortrackingdjangosimple - 6/6✅ errortracking-enabled-allTime: ✅ 18.095ms (SLO: <19.850ms -8.8%) vs baseline: ~same Memory: ✅ 65.254MB (SLO: <66.500MB 🟡 -1.9%) vs baseline: +4.9% ✅ errortracking-enabled-userTime: ✅ 18.077ms (SLO: <19.400ms -6.8%) vs baseline: ~same Memory: ✅ 65.215MB (SLO: <66.500MB 🟡 -1.9%) vs baseline: +5.0% ✅ tracer-enabledTime: ✅ 18.094ms (SLO: <19.450ms -7.0%) vs baseline: ~same Memory: ✅ 65.254MB (SLO: <66.500MB 🟡 -1.9%) vs baseline: +4.8% 🟡 flasksimple - 18/18✅ appsec-getTime: ✅ 4.585ms (SLO: <4.750ms -3.5%) vs baseline: +0.7% Memory: ✅ 61.991MB (SLO: <65.000MB -4.6%) vs baseline: +4.9% ✅ appsec-postTime: ✅ 6.592ms (SLO: <6.750ms -2.3%) vs baseline: +0.2% Memory: ✅ 61.912MB (SLO: <65.000MB -4.8%) vs baseline: +4.9% ✅ appsec-telemetryTime: ✅ 4.574ms (SLO: <4.750ms -3.7%) vs baseline: +0.2% Memory: ✅ 61.971MB (SLO: <65.000MB -4.7%) vs baseline: +4.8% ✅ debuggerTime: ✅ 1.857ms (SLO: <2.000ms -7.2%) vs baseline: -0.2% Memory: ✅ 45.456MB (SLO: <47.000MB -3.3%) vs baseline: +4.9% ✅ iast-getTime: ✅ 1.865ms (SLO: <2.000ms -6.7%) vs baseline: -0.2% Memory: ✅ 42.310MB (SLO: <49.000MB 📉 -13.7%) vs baseline: +4.6% ✅ profilerTime: ✅ 1.913ms (SLO: <2.100ms -8.9%) vs baseline: -0.1% Memory: ✅ 46.517MB (SLO: <47.000MB 🟡 -1.0%) vs baseline: +5.0% ✅ resource-renamingTime: ✅ 3.376ms (SLO: <3.650ms -7.5%) vs baseline: ~same Memory: ✅ 52.219MB (SLO: <53.500MB -2.4%) vs baseline: +4.6% ✅ tracerTime: ✅ 3.374ms (SLO: <3.650ms -7.6%) vs baseline: +0.2% Memory: ✅ 52.239MB (SLO: <53.500MB -2.4%) vs baseline: +4.9% ✅ tracer-nativeTime: ✅ 3.369ms (SLO: <3.650ms -7.7%) vs baseline: -0.1% Memory: ✅ 58.195MB (SLO: <60.000MB -3.0%) vs baseline: +4.7% 🟡 otelspan - 22/22✅ add-eventTime: ✅ 42.499ms (SLO: <47.150ms -9.9%) vs baseline: -0.4% Memory: ✅ 44.504MB (SLO: <47.000MB -5.3%) vs baseline: +4.9% ✅ add-metricsTime: ✅ 319.129ms (SLO: <344.800ms -7.4%) vs baseline: +1.1% Memory: ✅ 595.403MB (SLO: <600.000MB 🟡 -0.8%) vs baseline: +4.9% ✅ add-tagsTime: ✅ 290.080ms (SLO: <314.000ms -7.6%) vs baseline: +0.8% Memory: ✅ 597.082MB (SLO: <600.000MB 🟡 -0.5%) vs baseline: +5.0% ✅ get-contextTime: ✅ 80.725ms (SLO: <92.350ms 📉 -12.6%) vs baseline: +0.7% Memory: ✅ 39.927MB (SLO: <46.500MB 📉 -14.1%) vs baseline: +4.9% ✅ is-recordingTime: ✅ 38.874ms (SLO: <44.500ms 📉 -12.6%) vs baseline: -0.2% Memory: ✅ 43.954MB (SLO: <47.500MB -7.5%) vs baseline: +5.0% ✅ record-exceptionTime: ✅ 58.651ms (SLO: <67.650ms 📉 -13.3%) vs baseline: -0.6% Memory: ✅ 40.246MB (SLO: <47.000MB 📉 -14.4%) vs baseline: +4.7% ✅ set-statusTime: ✅ 44.734ms (SLO: <50.400ms 📉 -11.2%) vs baseline: -0.4% Memory: ✅ 43.990MB (SLO: <47.000MB -6.4%) vs baseline: +4.9% ✅ startTime: ✅ 38.275ms (SLO: <43.450ms 📉 -11.9%) vs baseline: +0.5% Memory: ✅ 43.942MB (SLO: <47.000MB -6.5%) vs baseline: +5.0% ✅ start-finishTime: ✅ 82.764ms (SLO: <88.000ms -6.0%) vs baseline: +0.4% Memory: ✅ 34.544MB (SLO: <46.500MB 📉 -25.7%) vs baseline: +4.9% ✅ start-finish-telemetryTime: ✅ 84.230ms (SLO: <89.000ms -5.4%) vs baseline: ~same Memory: ✅ 34.583MB (SLO: <46.500MB 📉 -25.6%) vs baseline: +4.9% ✅ update-nameTime: ✅ 40.128ms (SLO: <45.150ms 📉 -11.1%) vs baseline: -0.1% Memory: ✅ 44.186MB (SLO: <47.000MB -6.0%) vs baseline: +4.8%
|
Description
We make the stack v2 sampler release the GIL when performing internal state mutation that can require acquiring other internal locks. This gives the chance to other threads to make progress while the tracking operations wait on an internal mutex.