OpenJDK合并英特尔;s x86 simd排序用于加速数据排序7~15x

2023年 10月 7日 21.8k 0

今年早些时候,英特尔发布
x86 simd排序是一个使用AVX-512的快速排序库
当流行的Numpy开始使用它时,他们发现16位到64位数据类型的排序速度快了10~17倍。今天,英特尔软件工程师发布了x86 simd sort 3.0,几分钟前,OpenJDK将这种快速排序代码的修改版本合并到了参考JDK代码库中。

x86 simd sort 3.0添加了一个新的“avx512_argselect”方法来计算arg nth_element,该方法返回一个索引数组,该数组将对数据数组进行分区。x86 simd sort 3.0版本也对其基准测试进行了改进,现在使用__builtin_cpu_supports而不是查询cpuinfo,以及其他各种更改。

使用Numpy中的x86 simd sort 3.0,他们可以看到16位数据类型的“ng.partition”速度提高了25倍,32位数据类型提高了17倍,64位数据类型加快了8倍。使用新的avx512_argselect方法,numpy np.argpartition的速度提高了6.5倍。

同时
合并
今天下午是OpenJDK中x86 simd排序的一个稍微修改过的版本。合并此排序代码后,32位数据的排序速度提高了15倍,64位数据的速度提高了7倍左右。

有关x86 simd sort 3.0的更多详细信息,可通过
GitHub
.

相关文章

塑造我成为 CTO 之路的“秘诀”
“人工智能教母”的公司估值达 10 亿美金
教授吐槽:985 高校成高级蓝翔!研究生基本废了,只为房子、票子……
Windows 蓝屏中断提醒开发者:Rust 比 C/C++ 更好
Claude 3.5 Sonnet 在伽利略幻觉指数中名列前茅
上海新增 11 款已完成登记生成式 AI 服务

发布评论