[libcxx-commits] [PATCH] D122780: Modify std::sort: add BlockQuickSort partitioning algorithm for arithmetic types
Nilay Vaish via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Apr 11 17:12:43 PDT 2022
nilayvaish added a comment.
Updated performance numbers:
name old cpu/op new cpu/op delta
BM_Sort_uint32_Random_1 3.69ns ± 2% 3.71ns ± 4% ~ (p=0.305 n=37+36)
BM_Sort_uint32_Random_4 2.07ns ± 5% 2.05ns ± 6% ~ (p=0.079 n=36+34)
BM_Sort_uint32_Random_16 9.54ns ± 7% 11.54ns ± 8% +20.98% (p=0.000 n=35+37)
BM_Sort_uint32_Random_64 17.1ns ± 6% 17.1ns ± 7% ~ (p=0.927 n=35+36)
BM_Sort_uint32_Random_256 24.7ns ± 6% 20.7ns ± 4% -15.88% (p=0.000 n=35+33)
BM_Sort_uint32_Random_1024 31.9ns ± 5% 22.9ns ± 3% -28.35% (p=0.000 n=36+36)
BM_Sort_uint32_Random_16384 46.0ns ± 4% 26.2ns ± 3% -42.95% (p=0.000 n=34+36)
BM_Sort_uint32_Random_262144 60.0ns ± 3% 29.7ns ± 5% -50.49% (p=0.000 n=32+38)
BM_Sort_uint32_Ascending_1 3.68ns ± 3% 3.99ns ± 2% +8.42% (p=0.000 n=32+34)
BM_Sort_uint32_Ascending_4 2.02ns ± 4% 2.03ns ± 3% ~ (p=0.401 n=32+34)
BM_Sort_uint32_Ascending_16 0.94ns ±11% 0.97ns ± 6% +4.07% (p=0.000 n=34+34)
BM_Sort_uint32_Ascending_64 1.18ns ± 3% 1.22ns ± 6% +3.45% (p=0.000 n=32+33)
BM_Sort_uint32_Ascending_256 1.18ns ± 5% 1.30ns ± 3% +10.69% (p=0.000 n=32+33)
BM_Sort_uint32_Ascending_1024 1.02ns ± 3% 1.13ns ± 3% +11.43% (p=0.000 n=32+31)
BM_Sort_uint32_Ascending_16384 0.94ns ± 6% 1.06ns ± 5% +12.72% (p=0.000 n=35+34)
BM_Sort_uint32_Ascending_262144 0.93ns ± 4% 1.05ns ± 3% +12.79% (p=0.000 n=34+33)
BM_Sort_uint32_Descending_1 3.68ns ± 3% 3.98ns ± 3% +8.35% (p=0.000 n=34+33)
BM_Sort_uint32_Descending_4 2.05ns ± 5% 2.04ns ± 5% ~ (p=0.362 n=36+34)
BM_Sort_uint32_Descending_16 5.58ns ± 3% 4.16ns ± 3% -25.54% (p=0.000 n=36+34)
BM_Sort_uint32_Descending_64 1.98ns ± 3% 2.93ns ± 5% +48.08% (p=0.000 n=36+34)
BM_Sort_uint32_Descending_256 1.78ns ± 4% 2.60ns ± 7% +46.08% (p=0.000 n=36+34)
BM_Sort_uint32_Descending_1024 2.22ns ± 3% 2.36ns ± 4% +6.34% (p=0.000 n=38+35)
BM_Sort_uint32_Descending_16384 1.92ns ± 3% 2.11ns ± 3% +10.35% (p=0.000 n=34+35)
BM_Sort_uint32_Descending_262144 1.89ns ± 5% 2.07ns ± 3% +9.86% (p=0.000 n=36+35)
BM_Sort_uint32_SingleElement_1 3.67ns ± 3% 3.98ns ± 4% +8.34% (p=0.000 n=38+36)
BM_Sort_uint32_SingleElement_4 2.04ns ± 2% 2.04ns ± 3% ~ (p=0.956 n=38+35)
BM_Sort_uint32_SingleElement_16 0.92ns ± 3% 0.96ns ± 3% +4.63% (p=0.000 n=37+35)
BM_Sort_uint32_SingleElement_64 0.77ns ± 5% 1.22ns ± 4% +59.65% (p=0.000 n=35+35)
BM_Sort_uint32_SingleElement_256 0.82ns ± 4% 1.16ns ± 5% +42.37% (p=0.000 n=34+36)
BM_Sort_uint32_SingleElement_1024 0.75ns ± 3% 1.01ns ± 3% +34.68% (p=0.000 n=34+36)
BM_Sort_uint32_SingleElement_16384 0.64ns ± 4% 0.93ns ± 4% +46.27% (p=0.000 n=36+36)
BM_Sort_uint32_SingleElement_262144 0.63ns ± 5% 0.93ns ± 4% +47.74% (p=0.000 n=35+36)
BM_Sort_uint32_PipeOrgan_1 3.68ns ± 4% 3.99ns ± 3% +8.53% (p=0.000 n=33+36)
BM_Sort_uint32_PipeOrgan_4 2.02ns ± 3% 2.02ns ± 3% ~ (p=0.931 n=35+36)
BM_Sort_uint32_PipeOrgan_16 2.11ns ± 4% 1.94ns ± 3% -8.31% (p=0.000 n=35+35)
BM_Sort_uint32_PipeOrgan_64 5.68ns ± 3% 3.36ns ± 4% -40.75% (p=0.000 n=34+36)
BM_Sort_uint32_PipeOrgan_256 2.71ns ± 5% 2.73ns ± 4% ~ (p=0.089 n=34+34)
BM_Sort_uint32_PipeOrgan_1024 3.54ns ± 5% 5.31ns ± 3% +49.79% (p=0.000 n=32+33)
BM_Sort_uint32_PipeOrgan_16384 4.18ns ± 3% 6.41ns ± 4% +53.16% (p=0.000 n=33+33)
BM_Sort_uint32_PipeOrgan_262144 5.01ns ± 6% 7.25ns ± 6% +44.83% (p=0.000 n=33+33)
BM_Sort_uint32_QuickSortAdversary_1 3.66ns ± 2% 3.97ns ± 5% +8.54% (p=0.000 n=33+31)
BM_Sort_uint32_QuickSortAdversary_4 2.02ns ± 3% 2.02ns ± 3% ~ (p=0.427 n=34+31)
BM_Sort_uint32_QuickSortAdversary_16 0.92ns ± 4% 0.96ns ± 3% +4.26% (p=0.000 n=34+32)
BM_Sort_uint32_QuickSortAdversary_64 13.5ns ± 3% 17.9ns ± 8% +32.71% (p=0.000 n=36+31)
BM_Sort_uint32_QuickSortAdversary_256 19.9ns ± 5% 26.3ns ± 7% +32.11% (p=0.000 n=36+33)
BM_Sort_uint32_QuickSortAdversary_1024 28.2ns ± 3% 31.8ns ± 3% +12.79% (p=0.000 n=37+31)
BM_Sort_uint32_QuickSortAdversary_16384 45.6ns ± 3% 50.6ns ± 3% +10.89% (p=0.000 n=37+33)
BM_Sort_uint32_QuickSortAdversary_262144 61.3ns ± 3% 68.4ns ± 3% +11.56% (p=0.000 n=33+32)
BM_Sort_uint64_Random_1 3.69ns ± 4% 3.99ns ± 3% +8.31% (p=0.000 n=32+35)
BM_Sort_uint64_Random_4 2.04ns ± 3% 2.04ns ± 5% ~ (p=0.920 n=33+37)
BM_Sort_uint64_Random_16 10.2ns ± 6% 11.5ns ± 5% +13.17% (p=0.000 n=36+39)
BM_Sort_uint64_Random_64 17.9ns ± 6% 17.4ns ± 5% -3.17% (p=0.000 n=35+38)
BM_Sort_uint64_Random_256 25.5ns ± 7% 20.9ns ± 4% -18.08% (p=0.000 n=37+37)
BM_Sort_uint64_Random_1024 32.7ns ± 7% 22.5ns ± 4% -31.07% (p=0.000 n=37+39)
BM_Sort_uint64_Random_16384 47.0ns ± 5% 25.6ns ± 3% -45.62% (p=0.000 n=37+38)
BM_Sort_uint64_Random_262144 61.4ns ± 3% 28.6ns ± 4% -53.40% (p=0.000 n=39+38)
BM_Sort_uint64_Ascending_1 3.67ns ± 3% 3.67ns ± 3% ~ (p=0.823 n=38+38)
BM_Sort_uint64_Ascending_4 2.02ns ± 3% 2.02ns ± 4% ~ (p=0.978 n=37+37)
BM_Sort_uint64_Ascending_16 0.99ns ± 3% 1.00ns ± 3% +0.91% (p=0.010 n=37+36)
BM_Sort_uint64_Ascending_64 1.20ns ± 3% 1.28ns ± 4% +6.52% (p=0.000 n=36+36)
BM_Sort_uint64_Ascending_256 1.25ns ± 3% 1.41ns ± 4% +12.36% (p=0.000 n=35+36)
BM_Sort_uint64_Ascending_1024 1.12ns ± 4% 1.17ns ± 3% +4.30% (p=0.000 n=35+37)
BM_Sort_uint64_Ascending_16384 0.98ns ± 2% 1.09ns ± 4% +11.78% (p=0.000 n=34+36)
BM_Sort_uint64_Ascending_262144 0.97ns ± 3% 1.09ns ± 3% +12.23% (p=0.000 n=32+37)
BM_Sort_uint64_Descending_1 3.66ns ± 3% 3.67ns ± 3% ~ (p=0.650 n=31+34)
BM_Sort_uint64_Descending_4 2.02ns ± 4% 2.01ns ± 3% ~ (p=0.209 n=32+35)
BM_Sort_uint64_Descending_16 4.60ns ± 7% 4.14ns ± 3% -10.01% (p=0.000 n=33+34)
BM_Sort_uint64_Descending_64 1.99ns ± 3% 3.03ns ± 3% +52.13% (p=0.000 n=31+35)
BM_Sort_uint64_Descending_256 1.85ns ± 4% 2.64ns ± 5% +42.65% (p=0.000 n=32+33)
BM_Sort_uint64_Descending_1024 2.22ns ± 4% 2.26ns ± 3% +2.09% (p=0.000 n=31+33)
BM_Sort_uint64_Descending_16384 1.94ns ±14% 2.07ns ± 3% +6.47% (p=0.000 n=32+34)
BM_Sort_uint64_Descending_262144 1.95ns ± 5% 2.07ns ± 4% +6.09% (p=0.000 n=33+33)
BM_Sort_uint64_SingleElement_1 3.68ns ± 6% 3.68ns ± 3% ~ (p=0.963 n=34+31)
BM_Sort_uint64_SingleElement_4 2.03ns ± 3% 2.02ns ± 3% -0.66% (p=0.030 n=34+33)
BM_Sort_uint64_SingleElement_16 0.99ns ± 2% 1.00ns ± 3% ~ (p=0.063 n=34+33)
BM_Sort_uint64_SingleElement_64 0.82ns ± 3% 1.27ns ± 3% +55.10% (p=0.000 n=35+35)
BM_Sort_uint64_SingleElement_256 0.94ns ± 4% 1.26ns ± 3% +34.16% (p=0.000 n=37+34)
BM_Sort_uint64_SingleElement_1024 0.76ns ± 3% 1.05ns ± 4% +37.93% (p=0.000 n=38+34)
BM_Sort_uint64_SingleElement_16384 0.71ns ± 3% 0.99ns ± 2% +38.10% (p=0.000 n=38+35)
BM_Sort_uint64_SingleElement_262144 0.72ns ± 2% 0.98ns ± 5% +35.93% (p=0.000 n=39+36)
BM_Sort_uint64_PipeOrgan_1 3.66ns ± 4% 3.67ns ± 3% ~ (p=0.081 n=38+35)
BM_Sort_uint64_PipeOrgan_4 2.02ns ± 3% 2.02ns ± 3% ~ (p=0.729 n=35+35)
BM_Sort_uint64_PipeOrgan_16 2.30ns ± 3% 1.98ns ± 5% -13.98% (p=0.000 n=35+35)
BM_Sort_uint64_PipeOrgan_64 5.92ns ± 5% 3.45ns ± 5% -41.72% (p=0.000 n=35+36)
BM_Sort_uint64_PipeOrgan_256 2.75ns ± 3% 2.79ns ± 4% +1.53% (p=0.000 n=35+36)
BM_Sort_uint64_PipeOrgan_1024 3.71ns ± 5% 5.24ns ± 4% +41.29% (p=0.000 n=35+36)
BM_Sort_uint64_PipeOrgan_16384 4.21ns ± 4% 6.26ns ± 3% +48.90% (p=0.000 n=34+36)
BM_Sort_uint64_PipeOrgan_262144 5.07ns ± 4% 7.17ns ± 5% +41.46% (p=0.000 n=35+35)
BM_Sort_uint64_QuickSortAdversary_1 3.66ns ± 2% 3.68ns ± 4% ~ (p=0.211 n=34+36)
BM_Sort_uint64_QuickSortAdversary_4 2.02ns ± 3% 2.02ns ± 5% ~ (p=0.138 n=35+36)
BM_Sort_uint64_QuickSortAdversary_16 0.99ns ± 3% 1.00ns ± 4% +0.95% (p=0.010 n=34+36)
BM_Sort_uint64_QuickSortAdversary_64 13.5ns ± 4% 17.9ns ± 3% +32.41% (p=0.000 n=33+35)
BM_Sort_uint64_QuickSortAdversary_256 20.1ns ± 3% 26.4ns ± 5% +31.81% (p=0.000 n=33+35)
BM_Sort_uint64_QuickSortAdversary_1024 28.1ns ± 4% 30.9ns ± 4% +9.99% (p=0.000 n=34+33)
BM_Sort_uint64_QuickSortAdversary_16384 46.1ns ± 3% 50.1ns ± 3% +8.70% (p=0.000 n=34+33)
BM_Sort_uint64_QuickSortAdversary_262144 65.0ns ± 6% 69.5ns ± 3% +6.88% (p=0.000 n=34+31)
BM_Sort_pair<uint32, uint32>_Random_1 4.04ns ± 4% 4.32ns ± 4% +6.88% (p=0.000 n=35+31)
BM_Sort_pair<uint32, uint32>_Random_4 6.75ns ± 7% 6.76ns ± 8% ~ (p=0.895 n=34+33)
BM_Sort_pair<uint32, uint32>_Random_16 25.4ns ± 8% 16.3ns ±14% -35.71% (p=0.000 n=33+33)
BM_Sort_pair<uint32, uint32>_Random_64 35.9ns ±10% 27.0ns ±10% -24.73% (p=0.000 n=34+34)
BM_Sort_pair<uint32, uint32>_Random_256 43.1ns ± 9% 33.7ns ± 8% -21.96% (p=0.000 n=35+35)
BM_Sort_pair<uint32, uint32>_Random_1024 50.4ns ± 4% 40.6ns ± 5% -19.46% (p=0.000 n=34+35)
BM_Sort_pair<uint32, uint32>_Random_16384 66.7ns ± 3% 55.6ns ± 3% -16.61% (p=0.000 n=32+35)
BM_Sort_pair<uint32, uint32>_Random_262144 82.4ns ± 7% 71.4ns ± 7% -13.40% (p=0.000 n=32+35)
BM_Sort_pair<uint32, uint32>_Ascending_1 4.00ns ± 3% 4.30ns ± 3% +7.48% (p=0.000 n=33+35)
BM_Sort_pair<uint32, uint32>_Ascending_4 2.21ns ± 6% 2.22ns ± 3% ~ (p=0.072 n=33+38)
BM_Sort_pair<uint32, uint32>_Ascending_16 2.31ns ± 4% 1.15ns ± 3% -49.95% (p=0.000 n=36+36)
BM_Sort_pair<uint32, uint32>_Ascending_64 1.45ns ±27% 1.50ns ± 3% +3.19% (p=0.004 n=40+39)
BM_Sort_pair<uint32, uint32>_Ascending_256 1.47ns ± 4% 1.55ns ± 3% +5.80% (p=0.000 n=37+38)
BM_Sort_pair<uint32, uint32>_Ascending_1024 1.34ns ± 4% 1.36ns ± 3% +1.32% (p=0.000 n=38+38)
BM_Sort_pair<uint32, uint32>_Ascending_16384 1.18ns ± 2% 1.18ns ± 3% ~ (p=0.064 n=36+38)
BM_Sort_pair<uint32, uint32>_Ascending_262144 1.17ns ± 3% 1.18ns ± 4% ~ (p=0.280 n=38+37)
BM_Sort_pair<uint32, uint32>_Descending_1 3.99ns ± 3% 4.30ns ± 5% +7.68% (p=0.000 n=37+36)
BM_Sort_pair<uint32, uint32>_Descending_4 2.91ns ± 4% 2.94ns ± 3% +0.91% (p=0.013 n=35+36)
BM_Sort_pair<uint32, uint32>_Descending_16 4.92ns ± 2% 8.05ns ± 6% +63.62% (p=0.000 n=35+36)
BM_Sort_pair<uint32, uint32>_Descending_64 3.08ns ± 4% 2.98ns ± 3% -3.01% (p=0.000 n=36+37)
BM_Sort_pair<uint32, uint32>_Descending_256 2.55ns ± 3% 2.60ns ± 3% +2.00% (p=0.000 n=34+37)
BM_Sort_pair<uint32, uint32>_Descending_1024 3.10ns ± 3% 2.33ns ± 5% -24.98% (p=0.000 n=35+37)
BM_Sort_pair<uint32, uint32>_Descending_16384 2.81ns ± 3% 2.14ns ± 3% -23.94% (p=0.000 n=36+35)
BM_Sort_pair<uint32, uint32>_Descending_262144 2.90ns ± 7% 2.14ns ± 3% -26.05% (p=0.000 n=36+36)
BM_Sort_pair<uint32, uint32>_SingleElement_1 4.00ns ± 3% 4.28ns ± 3% +6.92% (p=0.000 n=32+35)
BM_Sort_pair<uint32, uint32>_SingleElement_4 2.29ns ± 5% 2.30ns ± 3% ~ (p=0.130 n=32+35)
BM_Sort_pair<uint32, uint32>_SingleElement_16 1.68ns ± 6% 1.27ns ± 3% -24.46% (p=0.000 n=32+34)
BM_Sort_pair<uint32, uint32>_SingleElement_64 1.42ns ± 7% 1.83ns ± 2% +28.97% (p=0.000 n=32+34)
BM_Sort_pair<uint32, uint32>_SingleElement_256 1.57ns ±10% 1.92ns ± 3% +22.22% (p=0.000 n=32+33)
BM_Sort_pair<uint32, uint32>_SingleElement_1024 1.42ns ± 5% 1.63ns ± 3% +14.74% (p=0.000 n=31+33)
BM_Sort_pair<uint32, uint32>_SingleElement_16384 1.27ns ± 3% 1.57ns ± 4% +24.15% (p=0.000 n=33+31)
BM_Sort_pair<uint32, uint32>_SingleElement_262144 1.25ns ± 3% 1.58ns ±17% +25.53% (p=0.000 n=34+33)
BM_Sort_pair<uint32, uint32>_PipeOrgan_1 3.99ns ± 3% 4.28ns ± 3% +7.16% (p=0.000 n=33+33)
BM_Sort_pair<uint32, uint32>_PipeOrgan_4 2.37ns ± 4% 2.38ns ± 6% ~ (p=0.331 n=35+32)
BM_Sort_pair<uint32, uint32>_PipeOrgan_16 4.83ns ± 4% 3.02ns ± 3% -37.51% (p=0.000 n=36+33)
BM_Sort_pair<uint32, uint32>_PipeOrgan_64 4.52ns ± 3% 3.69ns ± 5% -18.30% (p=0.000 n=36+34)
BM_Sort_pair<uint32, uint32>_PipeOrgan_256 5.41ns ± 3% 2.70ns ± 5% -50.05% (p=0.000 n=37+34)
BM_Sort_pair<uint32, uint32>_PipeOrgan_1024 6.51ns ± 3% 5.11ns ± 3% -21.56% (p=0.000 n=37+33)
BM_Sort_pair<uint32, uint32>_PipeOrgan_16384 7.21ns ± 3% 5.81ns ± 3% -19.41% (p=0.000 n=37+35)
BM_Sort_pair<uint32, uint32>_PipeOrgan_262144 7.99ns ± 3% 6.43ns ± 3% -19.51% (p=0.000 n=37+35)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_1 3.99ns ± 3% 4.29ns ± 4% +7.41% (p=0.000 n=38+35)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_4 2.29ns ± 3% 2.37ns ± 3% +3.49% (p=0.000 n=37+35)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_16 4.90ns ± 3% 2.51ns ± 3% -48.72% (p=0.000 n=38+34)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_64 7.29ns ± 3% 6.73ns ± 3% -7.76% (p=0.000 n=36+35)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_256 9.87ns ± 3% 6.57ns ± 3% -33.47% (p=0.000 n=36+35)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_1024 11.5ns ± 5% 8.2ns ± 4% -28.47% (p=0.000 n=35+34)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_16384 32.8ns ± 5% 20.2ns ± 4% -38.24% (p=0.000 n=34+35)
BM_Sort_pair<uint32, uint32>_QuickSortAdversary_262144 36.6ns ± 5% 23.2ns ± 3% -36.68% (p=0.000 n=35+36)
BM_Sort_tuple<uint32, uint64, uint32>_Random_1 4.01ns ± 8% 4.35ns ± 3% +8.43% (p=0.000 n=35+36)
BM_Sort_tuple<uint32, uint64, uint32>_Random_4 7.21ns ± 6% 7.28ns ± 6% ~ (p=0.051 n=34+35)
BM_Sort_tuple<uint32, uint64, uint32>_Random_16 30.5ns ±11% 20.0ns ± 5% -34.65% (p=0.000 n=33+34)
BM_Sort_tuple<uint32, uint64, uint32>_Random_64 42.2ns ± 5% 33.1ns ± 7% -21.45% (p=0.000 n=33+37)
BM_Sort_tuple<uint32, uint64, uint32>_Random_256 50.4ns ± 8% 40.2ns ± 8% -20.21% (p=0.000 n=34+34)
BM_Sort_tuple<uint32, uint64, uint32>_Random_1024 56.0ns ± 4% 46.2ns ±10% -17.38% (p=0.000 n=34+33)
BM_Sort_tuple<uint32, uint64, uint32>_Random_16384 71.8ns ± 3% 62.2ns ± 4% -13.31% (p=0.000 n=33+33)
BM_Sort_tuple<uint32, uint64, uint32>_Random_262144 88.6ns ± 6% 79.4ns ± 8% -10.44% (p=0.000 n=34+32)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_1 3.95ns ± 3% 4.33ns ± 7% +9.49% (p=0.000 n=34+31)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_4 2.39ns ± 3% 2.40ns ± 5% ~ (p=0.174 n=36+32)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_16 3.08ns ± 3% 1.49ns ±16% -51.48% (p=0.000 n=36+40)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_64 2.43ns ± 6% 2.42ns ± 2% ~ (p=0.248 n=34+32)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_256 2.34ns ± 3% 2.34ns ± 2% ~ (p=0.808 n=33+32)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_1024 2.11ns ± 3% 2.11ns ± 4% ~ (p=0.683 n=33+36)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_16384 2.02ns ± 4% 2.00ns ± 2% -1.27% (p=0.000 n=34+35)
BM_Sort_tuple<uint32, uint64, uint32>_Ascending_262144 2.07ns ± 2% 2.04ns ± 2% -1.39% (p=0.000 n=32+34)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_1 3.96ns ± 2% 4.33ns ± 3% +9.34% (p=0.000 n=32+36)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_4 3.65ns ± 2% 3.82ns ± 4% +4.55% (p=0.000 n=33+38)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_16 5.76ns ± 3% 8.76ns ± 3% +52.10% (p=0.000 n=35+38)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_64 4.28ns ± 4% 3.97ns ± 3% -7.35% (p=0.000 n=36+39)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_256 3.63ns ± 3% 3.64ns ± 3% ~ (p=0.304 n=36+38)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_1024 4.13ns ± 3% 3.16ns ± 4% -23.47% (p=0.000 n=36+38)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_16384 3.90ns ± 4% 2.93ns ± 3% -24.81% (p=0.000 n=37+38)
BM_Sort_tuple<uint32, uint64, uint32>_Descending_262144 4.50ns ± 2% 3.35ns ± 2% -25.61% (p=0.000 n=37+38)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_1 3.96ns ± 2% 4.32ns ± 3% +9.14% (p=0.000 n=37+36)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_4 2.53ns ± 3% 2.56ns ± 4% +1.12% (p=0.001 n=37+36)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_16 2.38ns ± 2% 1.69ns ± 4% -29.20% (p=0.000 n=36+34)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_64 2.60ns ± 4% 3.08ns ± 5% +18.20% (p=0.000 n=37+37)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_256 2.83ns ± 3% 2.97ns ± 3% +4.99% (p=0.000 n=36+35)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_1024 2.43ns ± 2% 2.42ns ± 2% ~ (p=0.616 n=36+36)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_16384 2.19ns ± 2% 2.36ns ± 4% +7.43% (p=0.000 n=35+36)
BM_Sort_tuple<uint32, uint64, uint32>_SingleElement_262144 2.34ns ± 3% 2.37ns ± 6% +1.11% (p=0.008 n=35+37)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_1 3.96ns ± 4% 4.32ns ± 3% +9.07% (p=0.000 n=32+35)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_4 2.62ns ± 3% 2.68ns ± 5% +1.96% (p=0.000 n=32+36)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_16 5.62ns ± 7% 3.10ns ± 3% -44.80% (p=0.000 n=32+34)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_64 5.74ns ± 3% 4.95ns ± 4% -13.71% (p=0.000 n=32+33)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_256 6.81ns ± 5% 3.71ns ±10% -45.55% (p=0.000 n=31+33)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_1024 7.81ns ± 4% 6.29ns ± 4% -19.49% (p=0.000 n=31+31)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_16384 8.73ns ± 2% 7.57ns ±11% -13.28% (p=0.000 n=31+32)
BM_Sort_tuple<uint32, uint64, uint32>_PipeOrgan_262144 10.6ns ± 3% 8.9ns ± 4% -16.67% (p=0.000 n=34+33)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_1 3.96ns ± 3% 4.30ns ± 4% +8.63% (p=0.000 n=34+32)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_4 2.76ns ± 2% 2.76ns ± 3% ~ (p=0.690 n=34+34)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_16 5.11ns ± 3% 3.73ns ±16% -26.99% (p=0.000 n=35+40)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_64 9.15ns ± 4% 8.32ns ± 5% -9.09% (p=0.000 n=37+35)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_256 11.6ns ± 3% 9.6ns ± 4% -17.00% (p=0.000 n=36+35)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_1024 19.6ns ± 3% 14.3ns ± 4% -27.33% (p=0.000 n=36+36)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_16384 45.7ns ± 3% 37.2ns ± 3% -18.61% (p=0.000 n=37+34)
BM_Sort_tuple<uint32, uint64, uint32>_QuickSortAdversary_262144 50.5ns ± 5% 43.1ns ± 4% -14.67% (p=0.000 n=38+35)
BM_Sort_string_Random_1 4.65ns ± 3% 4.38ns ± 2% -5.68% (p=0.000 n=35+36)
BM_Sort_string_Random_4 15.1ns ± 7% 14.9ns ± 5% ~ (p=0.051 n=35+36)
BM_Sort_string_Random_16 45.7ns ± 7% 35.3ns ± 4% -22.67% (p=0.000 n=34+33)
BM_Sort_string_Random_64 66.6ns ± 3% 58.2ns ± 4% -12.61% (p=0.000 n=34+32)
BM_Sort_string_Random_256 86.0ns ± 7% 76.8ns ± 4% -10.77% (p=0.000 n=35+32)
BM_Sort_string_Random_1024 106ns ± 4% 96ns ± 3% -8.90% (p=0.000 n=36+31)
BM_Sort_string_Random_16384 153ns ± 4% 140ns ± 3% -8.58% (p=0.000 n=37+33)
BM_Sort_string_Random_262144 211ns ± 5% 195ns ± 5% -7.61% (p=0.000 n=34+34)
BM_Sort_string_Ascending_1 4.59ns ± 2% 4.35ns ± 4% -5.19% (p=0.000 n=32+36)
BM_Sort_string_Ascending_4 7.42ns ± 7% 7.38ns ± 7% ~ (p=0.461 n=37+39)
BM_Sort_string_Ascending_16 12.9ns ± 7% 8.7ns ±10% -33.09% (p=0.000 n=39+39)
BM_Sort_string_Ascending_64 14.9ns ±11% 14.6ns ±12% ~ (p=0.111 n=40+39)
BM_Sort_string_Ascending_256 14.0ns ±16% 14.0ns ±10% ~ (p=0.473 n=40+39)
BM_Sort_string_Ascending_1024 12.8ns ±11% 12.5ns ± 9% -2.45% (p=0.041 n=38+38)
BM_Sort_string_Ascending_16384 17.1ns ±17% 16.8ns ±15% ~ (p=0.236 n=37+37)
BM_Sort_string_Ascending_262144 17.4ns ±21% 17.1ns ±19% ~ (p=0.483 n=38+37)
BM_Sort_string_Descending_1 4.60ns ± 3% 4.35ns ± 4% -5.33% (p=0.000 n=33+33)
BM_Sort_string_Descending_4 9.78ns ± 4% 9.75ns ± 6% ~ (p=0.307 n=37+36)
BM_Sort_string_Descending_16 22.5ns ± 4% 39.5ns ± 2% +75.41% (p=0.000 n=36+35)
BM_Sort_string_Descending_64 21.2ns ± 5% 20.5ns ± 9% -3.26% (p=0.000 n=38+36)
BM_Sort_string_Descending_256 18.9ns ± 9% 18.3ns ±12% -3.35% (p=0.000 n=36+36)
BM_Sort_string_Descending_1024 22.3ns ± 8% 17.1ns ± 8% -23.29% (p=0.000 n=35+34)
BM_Sort_string_Descending_16384 27.5ns ±15% 22.1ns ±11% -19.56% (p=0.000 n=38+38)
BM_Sort_string_Descending_262144 33.6ns ±16% 25.6ns ±16% -23.90% (p=0.000 n=40+37)
BM_Sort_string_SingleElement_1 4.58ns ± 2% 4.33ns ± 2% -5.42% (p=0.000 n=33+31)
BM_Sort_string_SingleElement_4 7.93ns ± 7% 7.95ns ± 7% ~ (p=0.674 n=35+34)
BM_Sort_string_SingleElement_16 17.7ns ± 4% 8.1ns ± 8% -54.04% (p=0.000 n=34+35)
BM_Sort_string_SingleElement_64 20.0ns ±10% 18.9ns ±10% -5.55% (p=0.000 n=37+38)
BM_Sort_string_SingleElement_256 19.2ns ±11% 17.1ns ± 7% -11.09% (p=0.000 n=40+34)
BM_Sort_string_SingleElement_1024 18.5ns ±10% 16.6ns ± 8% -10.48% (p=0.000 n=36+36)
BM_Sort_string_SingleElement_16384 16.7ns ±12% 15.2ns ± 9% -9.02% (p=0.000 n=37+38)
BM_Sort_string_SingleElement_262144 15.9ns ±17% 14.3ns ±10% -10.54% (p=0.000 n=39+37)
BM_Sort_string_PipeOrgan_1 4.59ns ± 3% 4.33ns ± 3% -5.57% (p=0.000 n=36+38)
BM_Sort_string_PipeOrgan_4 8.18ns ± 6% 8.10ns ± 8% ~ (p=0.117 n=38+36)
BM_Sort_string_PipeOrgan_16 23.9ns ± 5% 16.3ns ± 6% -31.92% (p=0.000 n=36+36)
BM_Sort_string_PipeOrgan_64 30.6ns ± 7% 28.8ns ± 7% -5.81% (p=0.000 n=36+36)
BM_Sort_string_PipeOrgan_256 38.4ns ± 6% 22.1ns ± 9% -42.48% (p=0.000 n=35+33)
BM_Sort_string_PipeOrgan_1024 45.5ns ± 5% 36.6ns ± 5% -19.55% (p=0.000 n=36+34)
BM_Sort_string_PipeOrgan_16384 57.1ns ± 5% 51.4ns ±15% -9.92% (p=0.000 n=34+40)
BM_Sort_string_PipeOrgan_262144 77.9ns ±14% 63.0ns ±11% -19.12% (p=0.000 n=37+37)
BM_Sort_string_QuickSortAdversary_1 4.59ns ± 4% 4.33ns ± 3% -5.74% (p=0.000 n=32+33)
BM_Sort_string_QuickSortAdversary_4 14.8ns ± 2% 14.6ns ± 3% -1.05% (p=0.002 n=34+34)
BM_Sort_string_QuickSortAdversary_16 44.9ns ± 4% 34.8ns ± 6% -22.41% (p=0.000 n=36+37)
BM_Sort_string_QuickSortAdversary_64 66.4ns ± 3% 57.7ns ± 5% -13.18% (p=0.000 n=35+35)
BM_Sort_string_QuickSortAdversary_256 85.7ns ± 3% 76.3ns ± 5% -10.97% (p=0.000 n=38+36)
BM_Sort_string_QuickSortAdversary_1024 105ns ± 5% 96ns ± 4% -9.31% (p=0.000 n=38+35)
BM_Sort_string_QuickSortAdversary_16384 152ns ± 4% 140ns ± 4% -7.50% (p=0.000 n=36+35)
BM_Sort_string_QuickSortAdversary_262144 208ns ± 4% 194ns ± 4% -6.85% (p=0.000 n=36+36)
BM_Sort_float_Random_1 3.68ns ± 3% 3.99ns ± 3% +8.61% (p=0.000 n=34+32)
BM_Sort_float_Random_4 1.83ns ± 4% 1.84ns ± 5% ~ (p=0.203 n=35+31)
BM_Sort_float_Random_16 11.3ns ± 7% 11.4ns ± 4% ~ (p=0.123 n=35+31)
BM_Sort_float_Random_64 19.8ns ± 5% 19.0ns ±14% -4.04% (p=0.002 n=33+40)
BM_Sort_float_Random_256 28.1ns ± 4% 21.7ns ±17% -22.53% (p=0.000 n=34+33)
BM_Sort_float_Random_1024 36.2ns ± 9% 23.2ns ± 8% -36.06% (p=0.000 n=34+32)
BM_Sort_float_Random_16384 52.3ns ± 3% 25.9ns ± 5% -50.36% (p=0.000 n=34+34)
BM_Sort_float_Random_262144 68.1ns ± 4% 28.8ns ± 3% -57.62% (p=0.000 n=34+36)
BM_Sort_float_Ascending_1 3.65ns ± 3% 3.66ns ± 3% ~ (p=0.625 n=33+34)
BM_Sort_float_Ascending_4 1.82ns ± 3% 1.84ns ± 4% +1.15% (p=0.001 n=34+36)
BM_Sort_float_Ascending_16 0.98ns ± 6% 0.99ns ± 3% +1.49% (p=0.000 n=35+36)
BM_Sort_float_Ascending_64 1.16ns ± 3% 1.40ns ± 3% +21.38% (p=0.000 n=37+35)
BM_Sort_float_Ascending_256 1.29ns ± 8% 1.29ns ± 4% ~ (p=0.067 n=35+35)
BM_Sort_float_Ascending_1024 1.12ns ± 6% 1.13ns ± 3% +1.25% (p=0.001 n=32+36)
BM_Sort_float_Ascending_16384 1.03ns ± 2% 1.04ns ± 3% +0.90% (p=0.011 n=31+36)
BM_Sort_float_Ascending_262144 1.02ns ± 3% 1.03ns ± 3% ~ (p=0.365 n=33+38)
BM_Sort_float_Descending_1 3.65ns ± 3% 3.65ns ± 4% ~ (p=0.470 n=32+39)
BM_Sort_float_Descending_4 1.83ns ±10% 1.84ns ± 4% ~ (p=0.057 n=32+37)
BM_Sort_float_Descending_16 4.59ns ± 3% 4.59ns ± 4% ~ (p=0.909 n=32+37)
BM_Sort_float_Descending_64 2.01ns ± 4% 3.02ns ± 4% +50.33% (p=0.000 n=34+38)
BM_Sort_float_Descending_256 1.91ns ± 4% 2.55ns ± 3% +33.07% (p=0.000 n=34+36)
BM_Sort_float_Descending_1024 2.34ns ± 4% 2.20ns ± 3% -5.85% (p=0.000 n=36+36)
BM_Sort_float_Descending_16384 2.08ns ± 3% 2.00ns ± 3% -3.76% (p=0.000 n=37+36)
BM_Sort_float_Descending_262144 2.05ns ± 4% 1.95ns ± 4% -4.96% (p=0.000 n=37+35)
BM_Sort_float_SingleElement_1 3.64ns ± 2% 3.65ns ± 3% ~ (p=0.547 n=36+36)
BM_Sort_float_SingleElement_4 1.81ns ± 3% 1.84ns ± 5% +1.67% (p=0.000 n=35+36)
BM_Sort_float_SingleElement_16 0.98ns ± 3% 1.00ns ± 5% +1.87% (p=0.000 n=36+36)
BM_Sort_float_SingleElement_64 1.16ns ± 5% 1.41ns ± 4% +21.76% (p=0.000 n=36+34)
BM_Sort_float_SingleElement_256 1.16ns ± 3% 1.37ns ± 2% +18.26% (p=0.000 n=35+33)
BM_Sort_float_SingleElement_1024 1.09ns ± 3% 1.25ns ± 3% +14.79% (p=0.000 n=34+35)
BM_Sort_float_SingleElement_16384 1.02ns ± 5% 1.19ns ± 3% +16.51% (p=0.000 n=35+34)
BM_Sort_float_SingleElement_262144 0.97ns ± 4% 1.18ns ± 3% +20.82% (p=0.000 n=34+33)
BM_Sort_float_PipeOrgan_1 3.64ns ± 3% 3.66ns ± 3% ~ (p=0.060 n=33+33)
BM_Sort_float_PipeOrgan_4 1.82ns ± 6% 1.84ns ± 4% +1.12% (p=0.002 n=33+34)
BM_Sort_float_PipeOrgan_16 2.26ns ± 5% 1.93ns ± 6% -14.67% (p=0.000 n=33+34)
BM_Sort_float_PipeOrgan_64 5.72ns ± 5% 3.50ns ± 6% -38.89% (p=0.000 n=33+33)
BM_Sort_float_PipeOrgan_256 2.69ns ± 7% 2.74ns ±16% +1.85% (p=0.001 n=34+32)
BM_Sort_float_PipeOrgan_1024 3.68ns ± 3% 5.17ns ±10% +40.55% (p=0.000 n=32+32)
BM_Sort_float_PipeOrgan_16384 4.22ns ± 3% 5.99ns ± 8% +42.02% (p=0.000 n=31+32)
BM_Sort_float_PipeOrgan_262144 5.06ns ± 6% 6.53ns ± 8% +29.10% (p=0.000 n=31+33)
BM_Sort_float_QuickSortAdversary_1 3.66ns ± 4% 3.65ns ± 3% ~ (p=0.112 n=32+31)
BM_Sort_float_QuickSortAdversary_4 1.83ns ± 3% 1.83ns ± 3% ~ (p=0.167 n=32+31)
BM_Sort_float_QuickSortAdversary_16 0.98ns ± 3% 1.01ns ± 7% +3.79% (p=0.000 n=33+34)
BM_Sort_float_QuickSortAdversary_64 11.1ns ± 4% 15.3ns ± 5% +38.16% (p=0.000 n=34+36)
BM_Sort_float_QuickSortAdversary_256 15.2ns ± 3% 22.3ns ± 4% +46.97% (p=0.000 n=35+38)
BM_Sort_float_QuickSortAdversary_1024 41.1ns ± 4% 41.5ns ± 6% +1.01% (p=0.036 n=35+37)
BM_Sort_float_QuickSortAdversary_16384 60.7ns ± 3% 62.5ns ± 3% +3.01% (p=0.000 n=38+35)
BM_Sort_float_QuickSortAdversary_262144 70.1ns ± 3% 72.8ns ± 5% +3.79% (p=0.000 n=38+35)
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D122780/new/
https://reviews.llvm.org/D122780
More information about the libcxx-commits
mailing list