55个版本

0.7.28 2024年8月12日
0.7.26 2024年7月21日
0.7.15 2024年1月29日
0.7.13 2023年10月17日
0.3.2 2019年11月27日

#36数据结构

Download history 125473/week @ 2024-05-03 147396/week @ 2024-05-10 132007/week @ 2024-05-17 142624/week @ 2024-05-24 147499/week @ 2024-05-31 142506/week @ 2024-06-07 141309/week @ 2024-06-14 152095/week @ 2024-06-21 128002/week @ 2024-06-28 138576/week @ 2024-07-05 154723/week @ 2024-07-12 166198/week @ 2024-07-19 173430/week @ 2024-07-26 165727/week @ 2024-08-02 199884/week @ 2024-08-09 179003/week @ 2024-08-16

749,845 个月下载
336 个crate中使用了(直接使用23个)

Zlib OR Apache-2.0 OR MIT

500KB
14K SLoC

License:Zlib Minimum Rust Version crates.io docs.rs

wide

一个帮助你变宽的crate。

具体来说,这个crate提供了可移植的“宽”数据类型,在可能的情况下尽可能使用SIMD。

, , 上,这是通过显式内建使用(通过safe_arch)完成的,在其他架构上,这是通过仔细编写函数来完成的,以便LLVM尽可能地做正确的事情。当Rust稳定后,更明确的内建将可以进入,然后它们可以在这里使用。


lib.rs:

一个帮助你变宽的crate。

此crate提供SIMD兼容的数据类型。

尽可能使用显式SIMD进行所有数学运算。作为后备,固定长度数组的所有长度都在做同样的事情,这通常会使得LLVM注意到它应该使用SIMD指令来完成这项任务。在最坏的情况下,代码将完全成为标量(尽管数学仍然是正确的,至少)。

crate特性

  • : 此特性会导致与链接。
    • 目前这仅当没有可用的显式SIMD时,提高的(sqrt)性能。

依赖关系

~790KB
~12K SLoC