gpt4 book ai didi

ios - Swift 中的加速与并行加法

转载 作者:行者123 更新时间:2023-12-01 17:35:37 24 4
gpt4 key购买 nike

当对矢量和普通方法进行基准测试时,时间上存在差异。

普通方法

let arrayA: [Float] = [1,2,3]
let arrayB: [Float] = [10,20,30]

let arrayResult:[Float] = zip(arrayA,arrayB).map() {$0 + $1}

Time required: 0.0025310516357421875

加速

let p = double3(1, 2, 3)
let q = double3(10, 20, 30)

print(p + q)

Time required: 0.0009039640426635742

它是如何在内部运作的。在新方法中速度提高了 2.79 倍。

最佳答案

SIMD 代表“单指令,多数据”。这意味着某些指令可以同时对多组数据进行操作。不同类型的硬件支持不同的 SIMD 指令。在您的例子中,您能够同时执行三个浮点加法运算。

https://developer.apple.com/documentation/accelerate/simd

https://en.wikipedia.org/wiki/SIMD

关于ios - Swift 中的加速与并行加法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59284364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com