-
-
Notifications
You must be signed in to change notification settings - Fork 18.4k
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
PERF: expand asv benchmark coverage #24214
Conversation
Hello @qwhelan! Thanks for updating the PR.
Comment last updated on January 08, 2019 at 21:23 Hours UTC |
6105284
to
5549d6b
Compare
Codecov Report
@@ Coverage Diff @@
## master #24214 +/- ##
==========================================
- Coverage 92.37% 92.37% -0.01%
==========================================
Files 166 166
Lines 52315 52315
==========================================
- Hits 48328 48327 -1
- Misses 3987 3988 +1
Continue to review full report at Codecov.
|
Codecov Report
@@ Coverage Diff @@
## master #24214 +/- ##
===========================================
- Coverage 92.21% 43% -49.21%
===========================================
Files 162 162
Lines 51763 51763
===========================================
- Hits 47733 22261 -25472
- Misses 4030 29502 +25472
Continue to review full report at Codecov.
|
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.
Here's a quick pass of things to look at. There's quite a few benchmarks in here so may come back with more later
can you merge master and update |
@WillAyd Rebased and incorporated your comments |
some linting issues:https://dev.azure.com/pandas-dev/pandas/_build/results?buildId=6625 |
@jreback I've added a small |
asv_bench/benchmarks/algorithms.py
Outdated
param_names = ['dtype'] | ||
|
||
def setup(self, dtype): | ||
N = 10**5 * 5 |
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.
What was the reason for changing this line?
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.
Intent was to make Duplicated
and DuplicatedUniqueIndex
comparable in terms of N
(the former is repeated 5x). I'll remove it as it's confusing.
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.
Done
asv_bench/benchmarks/algorithms.py
Outdated
class Quantile(object): | ||
params = [[0, 0.5, 1], | ||
['linear', 'nearest', 'lower', 'higher', 'midpoint'], | ||
['float', 'int']] |
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.
Maybe add uint here as well?
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.
Done
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.
lgtm. one comment.
@@ -113,4 +132,21 @@ def time_series_dates(self, df): | |||
hashing.hash_pandas_object(df['dates']) | |||
|
|||
|
|||
class Quantile(object): |
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.
can remove the Match one; was remove in 0.23.0 i think.
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.
Done
lgtm. over to you @WillAyd |
Thanks @qwhelan ! |
Continuing on the approach in #23935, I've identified significant functions with no benchmark coverage in the
asv
suite - this time extending the line tracing analysis down to the Cython layer. Of interest:merge_asof()
is only benchmarked in the default direction, despite the other two directions having unique Cython codepathsPeriodIndex
are currently largely uncoveredCategoricalIndex
is missing a lot of basic casesQuarter
strings that now has a benchmarkTimestamp
benchmarksI'll update this comment when the
asv
comparison runs complete.git diff upstream/master -u -- "*.py" | flake8 --diff