Dandandan opened a new pull request #9: URL: https://github.com/apache/arrow-rs/pull/9
https://github.com/apache/arrow/pull/10002 This is a PoC to get some more SIMD instructions in Arrow without requiring the nightly compiler or producing not-portable binaries, inspired by this article shared by @jorgecarleitao : https://www.nickwilcox.com/blog/autovec2/ This allows dispatching on CPU features, letting the compiler auto-vectorize the code without losing portability or introducing unsafe blocks. Here we use the multiversion crate to easily add more compiled versions with different cpu features. On my machine: ``` min 512 time: [957.16 ns 958.57 ns 960.23 ns] change: [-24.964% -24.524% -24.093%] (p = 0.00 < 0.05) Performance has improved. Found 2 outliers among 100 measurements (2.00%) 1 (1.00%) high mild 1 (1.00%) high severe max 512 time: [947.74 ns 949.47 ns 952.04 ns] change: [-23.380% -22.955% -22.562%] (p = 0.00 < 0.05) Performance has improved. Found 3 outliers among 100 measurements (3.00%) 2 (2.00%) high mild 1 (1.00%) high severe ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
