This repository was archived by the owner on May 28, 2025. It is now read-only.
Commit 44f233f
committed
Auto merge of rust-lang#132883 - LaihoE:vectorized_is_sorted, r=thomcc
vectorize slice::is_sorted
Benchmarks using u32 slices:
| len | New | Old |
|--------|----------------------|----------------------|
| 2 | 1.1997 ns | 889.23 ps |
| 4 | 1.6479 ns | 1.5396 ns |
| 8 | 2.5764 ns | 2.5633 ns |
| 16 | 5.4750 ns | 4.7421 ns |
| 32 | 11.344 ns | 8.4634 ns |
| 64 | 12.105 ns | 18.104 ns |
| 128 | 17.263 ns | 33.185 ns |
| 256 | 29.465 ns | 60.928 ns |
| 512 | 48.926 ns | 116.19 ns |
| 1024 | 85.274 ns | 237.91 ns |
| 2048 | 160.94 ns | 469.53 ns |
| 4096 | 311.60 ns | 911.43 ns |
| 8192 | 615.89 ns | 2.2316 µs |
| 16384 | 1.2619 µs | 3.4871 µs |
| 32768 | 2.5245 µs | 6.9947 µs |
| 65536 | 5.2254 µs | 15.212 µs |
Seems to be a bit slower on small N but much faster on large N.
Godbolt: https://rust.godbolt.org/z/Txn5MdfKn1 file changed
+17
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4097 | 4097 | | |
4098 | 4098 | | |
4099 | 4099 | | |
4100 | | - | |
| 4100 | + | |
| 4101 | + | |
| 4102 | + | |
| 4103 | + | |
| 4104 | + | |
| 4105 | + | |
| 4106 | + | |
| 4107 | + | |
| 4108 | + | |
| 4109 | + | |
| 4110 | + | |
| 4111 | + | |
| 4112 | + | |
| 4113 | + | |
| 4114 | + | |
| 4115 | + | |
| 4116 | + | |
4101 | 4117 | | |
4102 | 4118 | | |
4103 | 4119 | | |
| |||
0 commit comments