Webassembly 触发函数可能吗?

问题描述 投票:0回答:2

webassembly 是否支持 trig 函数?我的意思是喜欢内置支持,因为看起来我们必须从 javascript 导入它们。如果我们有这样的东西就好了:

f32.sin
f32.cos

如果有任何意义。如果它们不存在,我认为它是因为实现非常依赖于系统。

问题:

想象一下,我们有一些非常复杂且计算量大的公式,其中涉及这些数学函数。我想计算 webassembly 中的所有内容,而不依赖于导入或细分我的代码,其中一部分在 webassembly 中运行,另一部分在 javascript 中运行。

除此之外,我确实相信如果内置三角函数,从语义上来说,事情看起来会更整洁。

trigonometry webassembly
2个回答
12
投票

三角函数在 WebAssembly 中不可用,尽管之前已经讨论过123。一般来说,WebAssembly 为像 CPU 指令一样有效存在的东西提供操作码,而三角函数现在没有有效的 CPU 版本(即使 x86 sin / cos 也很慢)。

此外,我们现在不想强制执行特定的精度范围。这是一种以正确的精度指定三角函数的艺术形式,到目前为止还没有引起强烈的兴趣。

在未来,我们希望看到像 libm.wasm 这样的代码共享,这将消除代码下载负担。

可以说,如果有 ISA 信息,实施可能会更有效,但我们需要有人用数据来支持该用例以对其进行标准化。我希望第一个这样的情况是快速 sqrt 和逆 sqrt 近似值,它们经常在游戏中使用并且具有良好的 ISA 支持。在 WebAssembly 的上下文中,我还没有听说过真正的性能敏感三角函数使用。并不是说我不认为它们会存在:这是Community Group的一个简单的优先级问题。


-3
投票

请参阅 emscripten 中报告的相关问题: https://github.com/emscripten-core/emscripten/issues/19284

那个主题有什么进展吗?

干杯。

© www.soinside.com 2019 - 2024. All rights reserved.