-
Notifications
You must be signed in to change notification settings - Fork 322
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
Up to 200% benchmarks regression after integrating Comparable.from
return type check
#10539
Comments
Comparable.from
return type checkComparable.from
return type check
When analyzing the graphs from
I noticed a code dedicated to This is addressed by a23b877 |
The Max_Stats benchmark seems to oscillate quite a lot: I assume that's because of insufficient warmup. |
Jaroslav Tulach reports a new STANDUP for yesterday (2024-07-17): Progress: - verifying outputstream benchmarks
|
Comparing the two runs of and this is the original, fast run on
When we normalize the overall percentage we see which line occupies the most from the
we can see that the biggest slowdown is on line 378 and also line 377 is twice as slow given the benchmark takes at least twice as much time and the percentage remains the same. Line 383 is running fast or even faster than it used to. |
One way to speed enso$ git diff distribution/lib/Standard/Base/0.0.0-dev/src/Data/Statistics.enso
diff --git distribution/lib/Standard/Base/0.0.0-dev/src/Data/Statistics.enso distribution/lib/Standard/Base/0.0.0-dev/src/Data/Statistics.enso
index c5008cd51e..e58c402f65 100644
--- distribution/lib/Standard/Base/0.0.0-dev/src/Data/Statistics.enso
+++ distribution/lib/Standard/Base/0.0.0-dev/src/Data/Statistics.enso
@@ -385,7 +385,7 @@ type Accumulator
## PRIVATE
perform_comparison current value bound =
comp = Ordering.compare value current
- if comp == bound then value else current
+ if Meta.is_same_object comp bound then value else current
## PRIVATE
update_moments self value = if self.moments.is_nothing then Nothing else the next question: How to speed it up without |
Jaroslav Tulach reports a new STANDUP for yesterday (2024-07-18): Progress: - found a way to speed
|
|
Recent integration of
caused some improvements, but also some regressions that deserve to be evaluated properly:
I knew about the
Max_Stats
regression, but decided to integrated #10355 anyway to fix theComparable.from
inconsistency. Now the time has come to address (or at least analyze) also the performance regression.The text was updated successfully, but these errors were encountered: