Improved performance of max(), min(), argMin(), argMax() for DateTime64 #8199
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
Changelog category (leave one):
Changelog entry (up to few sentences, required except for Non-significant/Documentation categories):
Improved performance of max(), min(), argMin(), argMax() for DateTime64
...
Detailed description (optional):
This boost performance of min/max on my machine by factor of 2:
pre-fix query performance on hits_v1 dataset with perftest:
max on DateTime64 is 0.046 / 0.006 = 7.666666666666666 slower (A)
post-fix performance:
max on DateTime64 is 0.018 / 0.005 = 3.5999999999999996 slower (B)
Gain is:
(A - B) / A * 100 % = 53%