-
Notifications
You must be signed in to change notification settings - Fork 469
chore(profiling): add type annotations to test_threading.py
#14872
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
Conversation
|
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 245 ± 8 ms. The average import time from base is: 259 ± 6 ms. The import time difference between this PR and base is: -14.1 ± 0.3 ms. Import time breakdownThe following import paths have shrunk:
|
7c53825 to
eaaa769
Compare
Performance SLOsComparing candidate vlad/type_annotations_test_threading (a27142d) with baseline main (26c7507) 📈 Performance Regressions (1 suite)📈 iastaspects - 118/118✅ add_aspectTime: ✅ 0.407µs (SLO: <10.000µs 📉 -95.9%) vs baseline: +0.6% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ add_inplace_aspectTime: ✅ 0.409µs (SLO: <10.000µs 📉 -95.9%) vs baseline: +0.5% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ add_inplace_noaspectTime: ✅ 0.317µs (SLO: <10.000µs 📉 -96.8%) vs baseline: -0.6% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ add_noaspectTime: ✅ 0.278µs (SLO: <10.000µs 📉 -97.2%) vs baseline: -1.6% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.8% ✅ bytearray_aspectTime: ✅ 1.482µs (SLO: <10.000µs 📉 -85.2%) vs baseline: +9.0% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ bytearray_extend_aspectTime: ✅ 1.499µs (SLO: <10.000µs 📉 -85.0%) vs baseline: -0.6% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ bytearray_extend_noaspectTime: ✅ 0.617µs (SLO: <10.000µs 📉 -93.8%) vs baseline: +1.0% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ bytearray_noaspectTime: ✅ 0.479µs (SLO: <10.000µs 📉 -95.2%) vs baseline: -0.6% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ bytes_aspectTime: ✅ 1.558µs (SLO: <10.000µs 📉 -84.4%) vs baseline: 📈 +20.5% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ bytes_noaspectTime: ✅ 0.494µs (SLO: <10.000µs 📉 -95.1%) vs baseline: -0.2% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +4.8% ✅ bytesio_aspectTime: ✅ 1.351µs (SLO: <10.000µs 📉 -86.5%) vs baseline: +0.3% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +5.1% ✅ bytesio_noaspectTime: ✅ 0.498µs (SLO: <10.000µs 📉 -95.0%) vs baseline: -0.6% Memory: ✅ 37.985MB (SLO: <39.000MB -2.6%) vs baseline: +4.7% ✅ capitalize_aspectTime: ✅ 0.741µs (SLO: <10.000µs 📉 -92.6%) vs baseline: +0.4% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ capitalize_noaspectTime: ✅ 0.435µs (SLO: <10.000µs 📉 -95.6%) vs baseline: +0.2% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.8% ✅ casefold_aspectTime: ✅ 0.738µs (SLO: <10.000µs 📉 -92.6%) vs baseline: -1.0% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ casefold_noaspectTime: ✅ 0.365µs (SLO: <10.000µs 📉 -96.3%) vs baseline: -1.5% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.8% ✅ decode_aspectTime: ✅ 0.732µs (SLO: <10.000µs 📉 -92.7%) vs baseline: +0.3% Memory: ✅ 38.024MB (SLO: <39.000MB -2.5%) vs baseline: +4.7% ✅ decode_noaspectTime: ✅ 0.420µs (SLO: <10.000µs 📉 -95.8%) vs baseline: -0.2% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +4.6% ✅ encode_aspectTime: ✅ 0.707µs (SLO: <10.000µs 📉 -92.9%) vs baseline: ~same Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ encode_noaspectTime: ✅ 0.399µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -2.3% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ format_aspectTime: ✅ 3.612µs (SLO: <10.000µs 📉 -63.9%) vs baseline: +6.3% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ format_map_aspectTime: ✅ 3.631µs (SLO: <10.000µs 📉 -63.7%) vs baseline: -1.3% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ format_map_noaspectTime: ✅ 0.779µs (SLO: <10.000µs 📉 -92.2%) vs baseline: +0.2% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ format_noaspectTime: ✅ 0.599µs (SLO: <10.000µs 📉 -94.0%) vs baseline: +0.5% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ index_aspectTime: ✅ 0.359µs (SLO: <10.000µs 📉 -96.4%) vs baseline: -0.1% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ index_noaspectTime: ✅ 0.279µs (SLO: <10.000µs 📉 -97.2%) vs baseline: -1.3% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ join_aspectTime: ✅ 1.359µs (SLO: <10.000µs 📉 -86.4%) vs baseline: -0.1% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ join_noaspectTime: ✅ 0.490µs (SLO: <10.000µs 📉 -95.1%) vs baseline: -0.7% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ ljust_aspectTime: ✅ 2.586µs (SLO: <20.000µs 📉 -87.1%) vs baseline: +0.6% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ ljust_noaspectTime: ✅ 0.401µs (SLO: <10.000µs 📉 -96.0%) vs baseline: -1.9% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ lower_aspectTime: ✅ 2.198µs (SLO: <10.000µs 📉 -78.0%) vs baseline: +1.1% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ lower_noaspectTime: ✅ 0.372µs (SLO: <10.000µs 📉 -96.3%) vs baseline: +0.4% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ lstrip_aspectTime: ✅ 2.219µs (SLO: <20.000µs 📉 -88.9%) vs baseline: ~same Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ lstrip_noaspectTime: ✅ 0.381µs (SLO: <10.000µs 📉 -96.2%) vs baseline: -1.1% Memory: ✅ 38.142MB (SLO: <39.000MB -2.2%) vs baseline: +5.1% ✅ modulo_aspectTime: ✅ 1.000µs (SLO: <10.000µs 📉 -90.0%) vs baseline: +0.9% Memory: ✅ 38.142MB (SLO: <39.000MB -2.2%) vs baseline: +5.0% ✅ modulo_aspect_for_bytearray_bytearrayTime: ✅ 1.567µs (SLO: <10.000µs 📉 -84.3%) vs baseline: +0.4% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ modulo_aspect_for_bytesTime: ✅ 0.981µs (SLO: <10.000µs 📉 -90.2%) vs baseline: +0.5% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ modulo_aspect_for_bytes_bytearrayTime: ✅ 1.237µs (SLO: <10.000µs 📉 -87.6%) vs baseline: +0.4% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.9% ✅ modulo_noaspectTime: ✅ 0.632µs (SLO: <10.000µs 📉 -93.7%) vs baseline: -0.1% Memory: ✅ 38.142MB (SLO: <39.000MB -2.2%) vs baseline: +5.0% ✅ replace_aspectTime: ✅ 5.667µs (SLO: <10.000µs 📉 -43.3%) vs baseline: 📈 +14.7% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ replace_noaspectTime: ✅ 0.460µs (SLO: <10.000µs 📉 -95.4%) vs baseline: +0.2% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +5.0% ✅ repr_aspectTime: ✅ 0.904µs (SLO: <10.000µs 📉 -91.0%) vs baseline: -1.0% Memory: ✅ 38.063MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ repr_noaspectTime: ✅ 0.415µs (SLO: <10.000µs 📉 -95.9%) vs baseline: -0.5% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ rstrip_aspectTime: ✅ 2.026µs (SLO: <20.000µs 📉 -89.9%) vs baseline: +5.5% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.7% ✅ rstrip_noaspectTime: ✅ 0.380µs (SLO: <10.000µs 📉 -96.2%) vs baseline: -0.7% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ slice_aspectTime: ✅ 0.493µs (SLO: <10.000µs 📉 -95.1%) vs baseline: -0.6% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ slice_noaspectTime: ✅ 0.443µs (SLO: <10.000µs 📉 -95.6%) vs baseline: -0.9% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.8% ✅ stringio_aspectTime: ✅ 1.765µs (SLO: <10.000µs 📉 -82.4%) vs baseline: 📈 +13.8% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ stringio_noaspectTime: ✅ 0.716µs (SLO: <10.000µs 📉 -92.8%) vs baseline: -0.4% Memory: ✅ 38.044MB (SLO: <39.000MB -2.5%) vs baseline: +4.8% ✅ strip_aspectTime: ✅ 2.511µs (SLO: <20.000µs 📉 -87.4%) vs baseline: 📈 +13.2% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.7% ✅ strip_noaspectTime: ✅ 0.384µs (SLO: <10.000µs 📉 -96.2%) vs baseline: -1.8% Memory: ✅ 38.103MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ swapcase_aspectTime: ✅ 2.488µs (SLO: <10.000µs 📉 -75.1%) vs baseline: +4.1% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +4.8% ✅ swapcase_noaspectTime: ✅ 0.534µs (SLO: <10.000µs 📉 -94.7%) vs baseline: -0.4% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ title_aspectTime: ✅ 2.342µs (SLO: <10.000µs 📉 -76.6%) vs baseline: +1.2% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.0% ✅ title_noaspectTime: ✅ 0.501µs (SLO: <10.000µs 📉 -95.0%) vs baseline: -0.3% Memory: ✅ 38.083MB (SLO: <39.000MB -2.4%) vs baseline: +5.0% ✅ translate_aspectTime: ✅ 3.245µs (SLO: <10.000µs 📉 -67.5%) vs baseline: +0.2% Memory: ✅ 38.142MB (SLO: <39.000MB -2.2%) vs baseline: +5.0% ✅ translate_noaspectTime: ✅ 1.047µs (SLO: <10.000µs 📉 -89.5%) vs baseline: +0.6% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ upper_aspectTime: ✅ 2.197µs (SLO: <10.000µs 📉 -78.0%) vs baseline: +0.8% Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +4.9% ✅ upper_noaspectTime: ✅ 0.371µs (SLO: <10.000µs 📉 -96.3%) vs baseline: ~same Memory: ✅ 38.122MB (SLO: <39.000MB -2.3%) vs baseline: +5.1% 🟡 Near SLO Breach (4 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 20.521ms (SLO: <22.300ms -8.0%) vs baseline: ~same Memory: ✅ 65.294MB (SLO: <67.000MB -2.5%) vs baseline: +4.8% ✅ exception-replay-enabledTime: ✅ 1.343ms (SLO: <1.450ms -7.4%) vs baseline: +0.2% Memory: ✅ 64.714MB (SLO: <67.000MB -3.4%) vs baseline: +4.9% ✅ iastTime: ✅ 20.530ms (SLO: <22.250ms -7.7%) vs baseline: +0.2% Memory: ✅ 65.274MB (SLO: <67.000MB -2.6%) vs baseline: +4.8% ✅ profilerTime: ✅ 15.479ms (SLO: <16.550ms -6.5%) vs baseline: -0.2% Memory: ✅ 54.126MB (SLO: <54.500MB 🟡 -0.7%) vs baseline: +4.9% ✅ resource-renamingTime: ✅ 20.589ms (SLO: <21.750ms -5.3%) vs baseline: ~same Memory: ✅ 65.267MB (SLO: <67.000MB -2.6%) vs baseline: +4.8% ✅ span-code-originTime: ✅ 25.378ms (SLO: <28.200ms 📉 -10.0%) vs baseline: -0.4% Memory: ✅ 67.583MB (SLO: <69.500MB -2.8%) vs baseline: +4.5% ✅ tracerTime: ✅ 20.556ms (SLO: <21.750ms -5.5%) vs baseline: +0.6% Memory: ✅ 65.247MB (SLO: <67.000MB -2.6%) vs baseline: +4.8% ✅ tracer-and-profilerTime: ✅ 22.625ms (SLO: <23.500ms -3.7%) vs baseline: ~same Memory: ✅ 66.748MB (SLO: <67.500MB 🟡 -1.1%) vs baseline: +4.8% ✅ tracer-dont-create-db-spansTime: ✅ 19.322ms (SLO: <21.500ms 📉 -10.1%) vs baseline: -0.3% Memory: ✅ 65.274MB (SLO: <66.000MB 🟡 -1.1%) vs baseline: +4.9% ✅ tracer-minimalTime: ✅ 16.733ms (SLO: <17.500ms -4.4%) vs baseline: +0.7% Memory: ✅ 65.254MB (SLO: <66.000MB 🟡 -1.1%) vs baseline: +4.9% ✅ tracer-nativeTime: ✅ 20.567ms (SLO: <21.750ms -5.4%) vs baseline: +0.3% Memory: ✅ 71.450MB (SLO: <72.500MB 🟡 -1.4%) vs baseline: +5.1% ✅ tracer-no-cachesTime: ✅ 18.494ms (SLO: <19.650ms -5.9%) vs baseline: ~same Memory: ✅ 65.274MB (SLO: <67.000MB -2.6%) vs baseline: +4.9% ✅ tracer-no-databasesTime: ✅ 18.768ms (SLO: <20.100ms -6.6%) vs baseline: ~same Memory: ✅ 65.293MB (SLO: <67.000MB -2.5%) vs baseline: +4.9% ✅ tracer-no-middlewareTime: ✅ 20.193ms (SLO: <21.500ms -6.1%) vs baseline: -0.3% Memory: ✅ 65.273MB (SLO: <67.000MB -2.6%) vs baseline: +4.9% ✅ tracer-no-templatesTime: ✅ 20.288ms (SLO: <22.000ms -7.8%) vs baseline: -0.3% Memory: ✅ 65.274MB (SLO: <67.000MB -2.6%) vs baseline: +4.9% 🟡 errortrackingdjangosimple - 6/6✅ errortracking-enabled-allTime: ✅ 18.259ms (SLO: <19.850ms -8.0%) vs baseline: +1.0% Memory: ✅ 65.208MB (SLO: <66.500MB 🟡 -1.9%) vs baseline: +4.8% ✅ errortracking-enabled-userTime: ✅ 18.258ms (SLO: <19.400ms -5.9%) vs baseline: +1.2% Memory: ✅ 65.188MB (SLO: <66.500MB 🟡 -2.0%) vs baseline: +4.8% ✅ tracer-enabledTime: ✅ 18.121ms (SLO: <19.450ms -6.8%) vs baseline: ~same Memory: ✅ 65.246MB (SLO: <66.500MB 🟡 -1.9%) vs baseline: +4.9% 🟡 flasksimple - 18/18✅ appsec-getTime: ✅ 4.602ms (SLO: <4.750ms -3.1%) vs baseline: +0.2% Memory: ✅ 61.932MB (SLO: <65.000MB -4.7%) vs baseline: +4.8% ✅ appsec-postTime: ✅ 6.636ms (SLO: <6.750ms 🟡 -1.7%) vs baseline: +0.1% Memory: ✅ 61.907MB (SLO: <65.000MB -4.8%) vs baseline: +4.6% ✅ appsec-telemetryTime: ✅ 4.594ms (SLO: <4.750ms -3.3%) vs baseline: ~same Memory: ✅ 61.991MB (SLO: <65.000MB -4.6%) vs baseline: +4.9% ✅ debuggerTime: ✅ 1.854ms (SLO: <2.000ms -7.3%) vs baseline: -0.3% Memory: ✅ 45.416MB (SLO: <47.000MB -3.4%) vs baseline: +4.7% ✅ iast-getTime: ✅ 1.860ms (SLO: <2.000ms -7.0%) vs baseline: +0.2% Memory: ✅ 42.408MB (SLO: <49.000MB 📉 -13.5%) vs baseline: +4.8% ✅ profilerTime: ✅ 1.910ms (SLO: <2.100ms -9.0%) vs baseline: +0.2% Memory: ✅ 46.753MB (SLO: <47.000MB 🟡 -0.5%) vs baseline: +4.6% ✅ resource-renamingTime: ✅ 3.369ms (SLO: <3.650ms -7.7%) vs baseline: +0.2% Memory: ✅ 52.219MB (SLO: <53.500MB -2.4%) vs baseline: +4.8% ✅ tracerTime: ✅ 3.356ms (SLO: <3.650ms -8.0%) vs baseline: -0.2% Memory: ✅ 52.298MB (SLO: <53.500MB -2.2%) vs baseline: +4.9% ✅ tracer-nativeTime: ✅ 3.363ms (SLO: <3.650ms -7.9%) vs baseline: +0.3% Memory: ✅ 58.111MB (SLO: <60.000MB -3.1%) vs baseline: +4.7% 🟡 flasksqli - 6/6✅ appsec-enabledTime: ✅ 3.968ms (SLO: <4.200ms -5.5%) vs baseline: -0.3% Memory: ✅ 62.226MB (SLO: <66.000MB -5.7%) vs baseline: +4.9% ✅ iast-enabledTime: ✅ 2.443ms (SLO: <2.800ms 📉 -12.7%) vs baseline: -0.3% Memory: ✅ 58.904MB (SLO: <60.000MB 🟡 -1.8%) vs baseline: +4.7% ✅ tracer-enabledTime: ✅ 2.061ms (SLO: <2.250ms -8.4%) vs baseline: +0.4% Memory: ✅ 52.140MB (SLO: <54.500MB -4.3%) vs baseline: +4.5%
|
f9c6a59 to
247a6e9
Compare
test_threading.py
630f5cb to
b439c5b
Compare
taegyunkim
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you'd like to merge this, do you mind cleaning this a bit to remove RLock related changes? or did you mean to base this PR on top of it?
BenchmarksBenchmark execution time: 2025-10-24 15:11:36 Comparing candidate commit fdf2d82 in PR branch Found 0 performance improvements and 8 performance regressions! Performance is the same for 551 metrics, 3 unstable metrics. scenario:iastaspects-format_map_aspect
scenario:iastaspects-replace_aspect
scenario:iastaspects-stringio_aspect
scenario:iastaspects-swapcase_aspect
scenario:iastaspects-translate_aspect
scenario:iastaspects-upper_aspect
scenario:iastaspectsospath-ospathsplit_aspect
scenario:iastaspectsospath-ospathsplitdrive_aspect
|
eb09ef4 to
f283a82
Compare
1c402dc to
0c1f17b
Compare
e823505 to
7fee6a2
Compare
…belong with threading)
Co-authored-by: Taegyun Kim <taegyun.kim@datadoghq.com>
1b632e1 to
366eec6
Compare
366eec6 to
a27142d
Compare
[PROF-12734] ## Description This PR continues type-annotating the Lock profiler code by annotating the `test_threading.py` file. ## Testing * `$ ./scripts/ddtest riot -v run --pass-env ee8eca7 -- tests/profiling_v2/collector/test_threading.py` * CI ## Risks none [PROF-12734]: https://datadoghq.atlassian.net/browse/PROF-12734?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ --------- Co-authored-by: Taegyun Kim <taegyun.kim@datadoghq.com>
PROF-12734
Description
This PR continues type-annotating the Lock profiler code by annotating the
test_threading.pyfile.Testing
$ ./scripts/ddtest riot -v run --pass-env ee8eca7 -- tests/profiling_v2/collector/test_threading.pyRisks
none