gpt4 book ai didi

javascript - 浏览器 JavaScript 是否允许 SIMD 或矢量化操作?

转载 作者:数据小太阳 更新时间:2023-10-29 04:14:28 27 4
gpt4 key购买 nike

我想用 JavaScript 编写需要大量数值计算的应用程序。但是,我对客户端 JavaScript 中类似线性代数的高效计算的状态感到非常困惑。似乎有很多方法,但没有明确表明它们已经准备就绪。他们中的大多数似乎对允许计算的向量和矩阵的大小有限制。

WebGL

显然允许在 GPU 上进行矢量和矩阵计算,但我不清楚限制。 Attempted wrappers这个库周围似乎限制了矩阵和向量的大小。这是实际限制(浏览器不支持其他任何东西)还是开发限制(需要有人编写代码)?

WebCL

WebCL是提议的 OpenCL 浏览器级实现,但是 appears to be stuck in development .

WebGPU

Apple 最近推出了 WebCL 的替代品,称为 WebGPU .到目前为止,已经有了原型(prototype)和演示,但我不清楚这是否会得到广泛采用。

SIMD

Mozilla 有 put out an API for SIMD operations , 但它只有实验支持。

JavaScript 是否支持浏览器端的矢量化计算?


注意事项:

  • 我的问题不是“什么是用 JavaScript 进行数值计算的好库”,而是“在 JavaScript 中是否可以进行矢量化操作?”可接受的答案将链接到在非实验性浏览器中工作的矢量化计算演示。

  • 我可能对 SIMD、矢量化和 GPU 计算感到困惑。我认为在这种情况下将它们作为同义词使用是可以的,因为它们都允许使用硬件加速进行涉及高维向量的高效计算。

最佳答案

SIMD.js是 JavaScript 的一部分。 Firefox 和 Chrome 中也有实验性实现,但现在 SIMD.js已从 TC39 的积极开发中移除并从第 3 阶段移除。Web 浏览器不再追求实现它。暴露于网络的 SIMD 操作正在 WebAssembly 中积极开发,具有基于 SIMD.js 操作的操作。

WebAssembly SIMD 状态

SIMD 在 LLVM Wasm 后端和网络引擎中的状态:
Proposal: Implementation Status

关于javascript - 浏览器 JavaScript 是否允许 SIMD 或矢量化操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42917578/

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