#迭代器 #向量指令集(SIMD) #操作 #查找 #向量指令集加速 #最大值 #算法

nightly simd-itertools

包含contains、max、find等常见操作的SIMD加速替代方案

6个版本

0.2.3 2024年7月15日
0.2.2 2024年7月15日
0.1.1 2024年7月11日

#260 in 并发

Download history 142/week @ 2024-07-05 497/week @ 2024-07-12 41/week @ 2024-07-19 23/week @ 2024-07-26 27/week @ 2024-08-02 239/week @ 2024-08-09

每月下载量 344
用于 candystore

MIT/Apache

155KB
1.5K SLoC

向量指令集加速迭代器

crates.io

变更

arr.iter().contains()

arr.iter().contains_simd()

目前实现了以下功能

find filter position contains eq min/max is_sorted all_equal

并且适用于以下类型的切片迭代器: u8,u16,u32,u64,i8,i16,i32,i64,f32,f64,isize,usize

🔥🚀 相比标准库的性能提升 🚀🔥

与std实现的性能提升对比(u32) 您可以期待在各个函数中看到类似的表现。

目前需要nightly版本 😔

rustup toolchain install nightly
rustup default nightly
// revert back to stable: rustup default stable

为了获得最佳性能,请确保您使用 -C target-cpu=native 进行编译。例如

RUSTFLAGS='-C target-cpu=native' cargo run

依赖

~460KB