Skip to content

memory optimization for each task - #3

Merged
ankur-anand merged 1 commit into
mainfrom
optimization
Oct 3, 2025
Merged

memory optimization for each task#3
ankur-anand merged 1 commit into
mainfrom
optimization

Conversation

@ankur-anand

Copy link
Copy Markdown
Owner

This PR improve the memory usage across the board for the taskwheel timer.

benchstat old.txt new.txt | grep TimingWheel
TimingWheelAfterTimeout/1K_timers_100ms-10              110.1m ± ∞ ¹     110.0m ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheelAfterTimeout/10K_timers_100ms-10             111.1m ± ∞ ¹     110.0m ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheelAfterTimeout/100K_timers_100ms-10            122.7m ± ∞ ¹     121.2m ± ∞ ¹       ~ (p=1.000 n=1) ²
MemoryComparison/TimingWheel_10K_timers-10              110.2m ± ∞ ¹     110.0m ± ∞ ¹       ~ (p=1.000 n=1) ²
ExpirationOverhead_N/TimingWheel_Expiration_1000-10     51.26m ± ∞ ¹     51.14m ± ∞ ¹       ~ (p=1.000 n=1) ²
ExpirationOverhead_N/TimingWheel_Expiration_10000-10    54.12m ± ∞ ¹     53.48m ± ∞ ¹       ~ (p=1.000 n=1) ²
ExpirationOverhead_N/TimingWheel_Expiration_100000-10   61.03m ± ∞ ¹     59.90m ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_AddRemove-10                                9.341n ± ∞ ¹   110.700n ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_FireBatch-10                                6.682n ± ∞ ¹     4.984n ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_Memory/Timers_100000-10                     24.43m ± ∞ ¹     19.54m ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_Memory/Timers_1000000-10                    255.6m ± ∞ ¹     199.8m ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_Memory/Timers_10000000-10                    2.718 ± ∞ ¹      1.807 ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheelPeriodic-10                                  212.8m ± ∞ ¹     206.1m ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheelAfterTimeout/1K_timers_100ms-10              308.2Ki ± ∞ ¹   209.5Ki ± ∞ ¹        ~ (p=1.000 n=1) ²
TimingWheelAfterTimeout/10K_timers_100ms-10             2.725Mi ± ∞ ¹   1.882Mi ± ∞ ¹        ~ (p=1.000 n=1) ²
TimingWheelAfterTimeout/100K_timers_100ms-10            25.25Mi ± ∞ ¹   17.89Mi ± ∞ ¹        ~ (p=1.000 n=1) ²
MemoryComparison/TimingWheel_10K_timers-10              2.725Mi ± ∞ ¹   1.882Mi ± ∞ ¹        ~ (p=1.000 n=1) ²
ExpirationOverhead_N/TimingWheel_Expiration_1000-10     17.19Ki ± ∞ ¹   17.19Ki ± ∞ ¹        ~ (p=1.000 n=1) ³
ExpirationOverhead_N/TimingWheel_Expiration_10000-10    303.2Ki ± ∞ ¹   303.3Ki ± ∞ ¹        ~ (p=1.000 n=1) ²
ExpirationOverhead_N/TimingWheel_Expiration_100000-10   4.288Mi ± ∞ ¹   4.288Mi ± ∞ ¹        ~ (p=1.000 n=1) ²
TimingWheel_AddRemove-10                                  0.000 ± ∞ ¹     0.000 ± ∞ ¹        ~ (p=1.000 n=1) ³
TimingWheel_FireBatch-10                                  0.000 ± ∞ ¹     0.000 ± ∞ ¹        ~ (p=1.000 n=1) ³
TimingWheel_Memory/Timers_100000-10                     9.218Mi ± ∞ ¹   9.218Mi ± ∞ ¹        ~ (p=1.000 n=1) ²
TimingWheel_Memory/Timers_1000000-10                    91.62Mi ± ∞ ¹   91.62Mi ± ∞ ¹        ~ (p=1.000 n=1) ³
TimingWheel_Memory/Timers_10000000-10                   915.6Mi ± ∞ ¹   915.6Mi ± ∞ ¹        ~ (p=1.000 n=1) ²
TimingWheelPeriodic-10                                  60.45Mi ± ∞ ¹   46.30Mi ± ∞ ¹        ~ (p=1.000 n=1) ²
TimingWheelAfterTimeout/1K_timers_100ms-10              1.056k ± ∞ ¹   1.056k ± ∞ ¹       ~ (p=1.000 n=1) ³
TimingWheelAfterTimeout/10K_timers_100ms-10             10.18k ± ∞ ¹   10.18k ± ∞ ¹       ~ (p=1.000 n=1) ³
TimingWheelAfterTimeout/100K_timers_100ms-10            101.1k ± ∞ ¹   101.1k ± ∞ ¹       ~ (p=1.000 n=1) ²
MemoryComparison/TimingWheel_10K_timers-10              10.18k ± ∞ ¹   10.18k ± ∞ ¹       ~ (p=1.000 n=1) ³
ExpirationOverhead_N/TimingWheel_Expiration_1000-10      11.00 ± ∞ ¹    11.00 ± ∞ ¹       ~ (p=1.000 n=1) ³
ExpirationOverhead_N/TimingWheel_Expiration_10000-10     18.00 ± ∞ ¹    19.00 ± ∞ ¹       ~ (p=1.000 n=1) ²
ExpirationOverhead_N/TimingWheel_Expiration_100000-10    28.00 ± ∞ ¹    29.00 ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_AddRemove-10                                 0.000 ± ∞ ¹    0.000 ± ∞ ¹       ~ (p=1.000 n=1) ³
TimingWheel_FireBatch-10                                 0.000 ± ∞ ¹    0.000 ± ∞ ¹       ~ (p=1.000 n=1) ³
TimingWheel_Memory/Timers_100000-10                     700.0k ± ∞ ¹   600.0k ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_Memory/Timers_1000000-10                    7.000M ± ∞ ¹   6.000M ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheel_Memory/Timers_10000000-10                   70.00M ± ∞ ¹   60.00M ± ∞ ¹       ~ (p=1.000 n=1) ²
TimingWheelPeriodic-10                                  481.0k ± ∞ ¹   401.1k ± ∞ ¹       ~ (p=1.000 n=1)

@ankur-anand
ankur-anand merged commit 97e012e into main Oct 3, 2025
2 checks passed
@ankur-anand
ankur-anand deleted the optimization branch October 3, 2025 14:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant