Skip to content

Conversation

r-devulap
Copy link
Member

@r-devulap r-devulap commented Apr 29, 2023

Benchmarks on SKX, using gcc-10

Benchmark                                                                Time             CPU      Time Old      Time New       CPU Old       CPU New
-----------------------------------------------------------------------------------------------------------------------------------------------------
[stdargsort vs. avx512argsort]/random_10000/int64_t                   -0.8039         -0.8039        671022        131555        671011        131552
[stdargsort vs. avx512argsort]/random_100000/int64_t                  -0.7735         -0.7735       9132790       2068415       9132791       2068396
[stdargsort vs. avx512argsort]/sorted_10000/int64_t                   -0.2738         -0.2738        161350        117166        161346        117165
[stdargsort vs. avx512argsort]/constant_10000/int64_t                 -0.9238         -0.9238        121882          9284        121882          9284
[stdargsort vs. avx512argsort]/reverse_10000/int64_t                  -0.0570         -0.0570        125358        118218        125356        118216
[stdargsort vs. avx512argsort]/random_10000/uint64_t                  -0.8079         -0.8079        675553        129807        675547        129805
[stdargsort vs. avx512argsort]/random_100000/uint64_t                 -0.7708         -0.7708       9137299       2094234       9137106       2094173
[stdargsort vs. avx512argsort]/sorted_10000/uint64_t                  -0.2775         -0.2775        162269        117240        162267        117239
[stdargsort vs. avx512argsort]/constant_10000/uint64_t                -0.9235         -0.9235        121851          9318        121851          9318
[stdargsort vs. avx512argsort]/reverse_10000/uint64_t                 -0.0460         -0.0460        124036        118325        124033        118323
[stdargsort vs. avx512argsort]/random_10000/double                    -0.8052         -0.8052        646944        125994        646939        125992
[stdargsort vs. avx512argsort]/random_100000/double                   -0.7640         -0.7640       8695430       2052490       8695360       2052433
[stdargsort vs. avx512argsort]/sorted_10000/double                    -0.1498         -0.1498        132678        112805        132676        112804
[stdargsort vs. avx512argsort]/constant_10000/double                  -0.9074         -0.9074        100607          9316        100607          9316
[stdargsort vs. avx512argsort]/reverse_10000/double                   +0.1744         +0.1744         97526        114535         97524        114535
OVERALL_GEOMEAN                                                       -0.6905         -0.6905             0             0             0             0

@r-devulap r-devulap mentioned this pull request Apr 29, 2023
@r-devulap r-devulap changed the title Add AVX-512 argsort for 64-bit data type Add AVX-512 argsort for 32 and 64-bit data type May 2, 2023
@r-devulap
Copy link
Member Author

Added argsort for 32-bit data type too:

[stdargsort vs. avx512argsort]/random_10000/int32_t                   -0.8300         -0.8300        614181        104408        614164        104405
[stdargsort vs. avx512argsort]/random_100000/int32_t                  -0.7895         -0.7896       8029899       1689909       8029731       1689805
[stdargsort vs. avx512argsort]/sorted_10000/int32_t                   -0.0827         -0.0827        101969         93540        101966         93536
[stdargsort vs. avx512argsort]/constant_10000/int32_t                 -0.9003         -0.9003         82221          8200         82220          8200
[stdargsort vs. avx512argsort]/reverse_10000/int32_t                  +0.1666         +0.1666         80752         94207         80751         94203
[stdargsort vs. avx512argsort]/random_10000/uint32_t                  -0.8234         -0.8234        590935        104352        590911        104349
[stdargsort vs. avx512argsort]/random_100000/uint32_t                 -0.7801         -0.7801       7722846       1698556       7722673       1698450
[stdargsort vs. avx512argsort]/sorted_10000/uint32_t                  -0.0702         -0.0702        101269         94158        101265         94157
[stdargsort vs. avx512argsort]/constant_10000/uint32_t                -0.9137         -0.9137         94859          8183         94857          8182
[stdargsort vs. avx512argsort]/reverse_10000/uint32_t                 +0.1674         +0.1674         81350         94970         81350         94968
[stdargsort vs. avx512argsort]/random_10000/float                     -0.8137         -0.8137        627568        116926        627547        116923
[stdargsort vs. avx512argsort]/random_100000/float                    -0.7821         -0.7821       8399273       1830312       8398849       1830205
[stdargsort vs. avx512argsort]/sorted_10000/float                     -0.1257         -0.1257        119299        104307        119295        104304
[stdargsort vs. avx512argsort]/constant_10000/float                   -0.9218         -0.9218        105474          8249        105472          8249
[stdargsort vs. avx512argsort]/reverse_10000/float                    +0.1315         +0.1315         92251        104383         92250        104382
OVERALL_GEOMEAN                                                       -0.6830         -0.6830             0             0             0             0

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