-
Notifications
You must be signed in to change notification settings - Fork 469
feat(profiling): add profiling of threading.Semaphore objects to Python Lock Profiler #15327
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
|
|
Bootstrap import analysisComparison of import times between this PR and base. SummaryThe average import time from this PR is: 254 ± 3 ms. The average import time from base is: 261 ± 4 ms. The import time difference between this PR and base is: -7.0 ± 0.2 ms. Import time breakdownThe following import paths have shrunk:
|
Performance SLOsComparing candidate vlad/proflock-implement-semaphore (334e0f5) with baseline main (deb7cf8) ❌ Test Failures (1 suite)❌ telemetryaddmetric - 29/30✅ 1-count-metric-1-timesTime: ✅ 2.924µs (SLO: <20.000µs 📉 -85.4%) vs baseline: +0.5% Memory: ✅ 34.524MB (SLO: <35.500MB -2.7%) vs baseline: +4.9% ✅ 1-count-metrics-100-timesTime: ✅ 198.098µs (SLO: <220.000µs -10.0%) vs baseline: -0.2% Memory: ✅ 34.623MB (SLO: <35.500MB -2.5%) vs baseline: +5.1% ✅ 1-distribution-metric-1-timesTime: ✅ 3.289µs (SLO: <20.000µs 📉 -83.6%) vs baseline: -0.6% Memory: ✅ 34.544MB (SLO: <35.500MB -2.7%) vs baseline: +5.0% ✅ 1-distribution-metrics-100-timesTime: ✅ 216.267µs (SLO: <220.000µs 🟡 -1.7%) vs baseline: ~same Memory: ✅ 34.544MB (SLO: <35.500MB -2.7%) vs baseline: +4.9% ✅ 1-gauge-metric-1-timesTime: ✅ 2.193µs (SLO: <20.000µs 📉 -89.0%) vs baseline: +1.4% Memory: ✅ 34.465MB (SLO: <35.500MB -2.9%) vs baseline: +4.6% ✅ 1-gauge-metrics-100-timesTime: ✅ 136.368µs (SLO: <150.000µs -9.1%) vs baseline: +0.2% Memory: ✅ 34.524MB (SLO: <35.500MB -2.7%) vs baseline: +4.9% ✅ 1-rate-metric-1-timesTime: ✅ 3.063µs (SLO: <20.000µs 📉 -84.7%) vs baseline: +0.3% Memory: ✅ 34.564MB (SLO: <35.500MB -2.6%) vs baseline: +5.2% ✅ 1-rate-metrics-100-timesTime: ✅ 211.401µs (SLO: <250.000µs 📉 -15.4%) vs baseline: ~same Memory: ✅ 34.524MB (SLO: <35.500MB -2.7%) vs baseline: +5.0% ✅ 100-count-metrics-100-timesTime: ✅ 19.834ms (SLO: <22.000ms -9.8%) vs baseline: -0.5% Memory: ✅ 34.485MB (SLO: <35.500MB -2.9%) vs baseline: +4.8% ❌ 100-distribution-metrics-100-timesTime: ❌ 2.308ms (SLO: <2.300ms +0.3%) vs baseline: +1.7% Memory: ✅ 34.446MB (SLO: <35.500MB -3.0%) vs baseline: +4.6% ✅ 100-gauge-metrics-100-timesTime: ✅ 1.416ms (SLO: <1.550ms -8.7%) vs baseline: +1.0% Memory: ✅ 34.603MB (SLO: <35.500MB -2.5%) vs baseline: +5.2% ✅ 100-rate-metrics-100-timesTime: ✅ 2.179ms (SLO: <2.550ms 📉 -14.5%) vs baseline: -1.1% Memory: ✅ 34.524MB (SLO: <35.500MB -2.7%) vs baseline: +5.1% ✅ flush-1-metricTime: ✅ 4.682µs (SLO: <20.000µs 📉 -76.6%) vs baseline: +1.8% Memory: ✅ 34.505MB (SLO: <35.500MB -2.8%) vs baseline: +4.9% ✅ flush-100-metricsTime: ✅ 174.739µs (SLO: <250.000µs 📉 -30.1%) vs baseline: ~same Memory: ✅ 34.544MB (SLO: <35.500MB -2.7%) vs baseline: +4.9% ✅ flush-1000-metricsTime: ✅ 2.121ms (SLO: <2.500ms 📉 -15.2%) vs baseline: -0.3% Memory: ✅ 35.291MB (SLO: <36.500MB -3.3%) vs baseline: +5.2% 🟡 Near SLO Breach (3 suites)🟡 djangosimple - 30/30✅ appsecTime: ✅ 19.323ms (SLO: <22.300ms 📉 -13.3%) vs baseline: ~same Memory: ✅ 67.723MB (SLO: <70.500MB -3.9%) vs baseline: +4.7% ✅ exception-replay-enabledTime: ✅ 1.343ms (SLO: <1.450ms -7.3%) vs baseline: +0.1% Memory: ✅ 66.041MB (SLO: <67.500MB -2.2%) vs baseline: +4.8% ✅ iastTime: ✅ 19.307ms (SLO: <22.250ms 📉 -13.2%) vs baseline: +0.5% Memory: ✅ 67.751MB (SLO: <70.000MB -3.2%) vs baseline: +4.7% ✅ profilerTime: ✅ 15.590ms (SLO: <16.550ms -5.8%) vs baseline: +0.2% Memory: ✅ 55.842MB (SLO: <57.500MB -2.9%) vs baseline: +4.7% ✅ resource-renamingTime: ✅ 19.324ms (SLO: <21.750ms 📉 -11.2%) vs baseline: ~same Memory: ✅ 67.790MB (SLO: <70.500MB -3.8%) vs baseline: +4.9% ✅ span-code-originTime: ✅ 22.857ms (SLO: <28.200ms 📉 -18.9%) vs baseline: ~same Memory: ✅ 69.926MB (SLO: <71.000MB 🟡 -1.5%) vs baseline: +4.3% ✅ tracerTime: ✅ 19.318ms (SLO: <21.750ms 📉 -11.2%) vs baseline: +0.6% Memory: ✅ 67.889MB (SLO: <70.000MB -3.0%) vs baseline: +4.9% ✅ tracer-and-profilerTime: ✅ 21.359ms (SLO: <23.500ms -9.1%) vs baseline: -0.5% Memory: ✅ 69.068MB (SLO: <71.000MB -2.7%) vs baseline: +4.9% ✅ tracer-dont-create-db-spansTime: ✅ 19.301ms (SLO: <21.500ms 📉 -10.2%) vs baseline: +0.4% Memory: ✅ 67.810MB (SLO: <70.000MB -3.1%) vs baseline: +4.7% ✅ tracer-minimalTime: ✅ 16.621ms (SLO: <17.500ms -5.0%) vs baseline: -0.1% Memory: ✅ 67.805MB (SLO: <70.000MB -3.1%) vs baseline: +4.8% ✅ tracer-nativeTime: ✅ 19.218ms (SLO: <21.750ms 📉 -11.6%) vs baseline: -0.2% Memory: ✅ 67.712MB (SLO: <72.500MB -6.6%) vs baseline: +4.7% ✅ tracer-no-cachesTime: ✅ 17.286ms (SLO: <19.650ms 📉 -12.0%) vs baseline: +0.3% Memory: ✅ 67.712MB (SLO: <70.000MB -3.3%) vs baseline: +4.6% ✅ tracer-no-databasesTime: ✅ 18.816ms (SLO: <20.100ms -6.4%) vs baseline: +0.4% Memory: ✅ 67.830MB (SLO: <70.000MB -3.1%) vs baseline: +4.9% ✅ tracer-no-middlewareTime: ✅ 18.973ms (SLO: <21.500ms 📉 -11.8%) vs baseline: +0.2% Memory: ✅ 67.810MB (SLO: <70.000MB -3.1%) vs baseline: +4.8% ✅ tracer-no-templatesTime: ✅ 19.149ms (SLO: <22.000ms 📉 -13.0%) vs baseline: +0.2% Memory: ✅ 67.771MB (SLO: <70.500MB -3.9%) vs baseline: +4.9% 🟡 otelspan - 22/22✅ add-eventTime: ✅ 38.558ms (SLO: <47.150ms 📉 -18.2%) vs baseline: +0.6% Memory: ✅ 39.081MB (SLO: <47.000MB 📉 -16.8%) vs baseline: +4.7% ✅ add-metricsTime: ✅ 259.726ms (SLO: <344.800ms 📉 -24.7%) vs baseline: +1.3% Memory: ✅ 43.273MB (SLO: <47.500MB -8.9%) vs baseline: +4.6% ✅ add-tagsTime: ✅ 316.353ms (SLO: <321.000ms 🟡 -1.4%) vs baseline: +0.6% Memory: ✅ 43.254MB (SLO: <47.500MB -8.9%) vs baseline: +4.6% ✅ get-contextTime: ✅ 78.695ms (SLO: <92.350ms 📉 -14.8%) vs baseline: +0.2% Memory: ✅ 39.367MB (SLO: <46.500MB 📉 -15.3%) vs baseline: +5.0% ✅ is-recordingTime: ✅ 36.058ms (SLO: <44.500ms 📉 -19.0%) vs baseline: +0.8% Memory: ✅ 38.861MB (SLO: <47.500MB 📉 -18.2%) vs baseline: +5.2% ✅ record-exceptionTime: ✅ 57.265ms (SLO: <67.650ms 📉 -15.4%) vs baseline: +0.7% Memory: ✅ 39.424MB (SLO: <47.000MB 📉 -16.1%) vs baseline: +4.8% ✅ set-statusTime: ✅ 42.498ms (SLO: <50.400ms 📉 -15.7%) vs baseline: -0.9% Memory: ✅ 38.934MB (SLO: <47.000MB 📉 -17.2%) vs baseline: +5.1% ✅ startTime: ✅ 35.362ms (SLO: <43.450ms 📉 -18.6%) vs baseline: ~same Memory: ✅ 38.890MB (SLO: <47.000MB 📉 -17.3%) vs baseline: +5.1% ✅ start-finishTime: ✅ 82.151ms (SLO: <88.000ms -6.6%) vs baseline: +0.4% Memory: ✅ 36.569MB (SLO: <46.500MB 📉 -21.4%) vs baseline: +5.0% ✅ start-finish-telemetryTime: ✅ 83.434ms (SLO: <89.000ms -6.3%) vs baseline: -0.2% Memory: ✅ 36.667MB (SLO: <46.500MB 📉 -21.1%) vs baseline: +5.1% ✅ update-nameTime: ✅ 37.124ms (SLO: <45.150ms 📉 -17.8%) vs baseline: +0.2% Memory: ✅ 38.897MB (SLO: <47.000MB 📉 -17.2%) vs baseline: +4.5% 🟡 packagespackageforrootmodulemapping - 4/4✅ cache_offTime: ✅ 343.836ms (SLO: <354.300ms -3.0%) vs baseline: ~same Memory: ✅ 40.897MB (SLO: <41.500MB 🟡 -1.5%) vs baseline: +4.8% ✅ cache_onTime: ✅ 0.384µs (SLO: <10.000µs 📉 -96.2%) vs baseline: +0.8% Memory: ✅ 39.443MB (SLO: <41.000MB -3.8%) vs baseline: +7.5%
|
9e3700b to
0b81599
Compare
0b81599 to
334e0f5
Compare
334e0f5 to
703ce51
Compare
…aphore objects
Description
Testing
Risks
Additional Notes