- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不明白 OpenCL native_
前缀函数的原因。文档说:
Functions with the native_ prefix may map to one or more native device instructions and will typically have better performance compared to the corresponding functions (without the native__ prefix). The accuracy (and in some cases the input range(s)) of these functions is implementation-defined.
好的,所以我知道 native_
函数可能会稍快一些,但准确性会稍差一些。还有其他优点和缺点吗?在什么用例中我可能想使用像 log()
和 native_log()
这样的东西?
如果这是一个愚蠢的问题,我们深表歉意。我想确保我掌握了 native_
函数存在的根本原因。
最佳答案
如果你想发布在所有可能的设备上使用的软件,你应该使用正常的功能,因为你永远不知道 native_ 功能会带来什么。或者你可以做一个简单的测试来检查你是否想使用 native_ ,例如计算感兴趣范围内的一堆值,看看它们是否足够接近。
native_ 函数最重要的部分是它们的精度完全由实现定义。这很重要,因为说实话,OpenCL 数值精度规范的某些部分相当愚蠢。例如,规范要求 sin 具有相对 4 ULP 的精度,这对于振荡函数来说非常有趣,并且在输入 ULP 值变高时使得实现变得非常困难。
在实践中,native_ 实现通常与您对设备的期望差不多。在 GPU 上,native_ 函数通常是 DirectX 规范中定义的。有些甚至有更好的实现。作为 AMD HW 上的一个例子,native_sin 函数与普通 sin 相比快得惊人,根据我的经验,它的绝对误差为输入值的 1 ULP。在 Intel 集成 GPU 上,native_sin 非常不精确,但仍在 DirectX 规范内。
规范中包含 native_ 函数的原因是允许不关心 OpenCL 规范要求的极端精度的用户使用性能更好的东西。
tl;dr:如果您可以使用 native_ 函数,那就去做吧,因为它们通常比普通函数快得多。
关于opencl - OpenCL native_ 函数有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20538220/
今天有小伙伴给我留言问到,try{...}catch(){...}是什么意思?它用来干什么? 简单的说 他们是用来捕获异常的 下面我们通过一个例子来详细讲解下
我正在努力提高网站的可访问性,但我不知道如何在页脚中标记社交媒体链接列表。这些链接指向我在 facecook、twitter 等上的帐户。我不想用 role="navigation" 标记这些链接,因
说现在是 6 点,我有一个 Timer 并在 10 点安排了一个 TimerTask。之后,System DateTime 被其他服务(例如 ntp)调整为 9 点钟。我仍然希望我的 TimerTas
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我就废话不多说了,大家还是直接看代码吧~ ? 1
Maven系列1 1.什么是Maven? Maven是一个项目管理工具,它包含了一个对象模型。一组标准集合,一个依赖管理系统。和用来运行定义在生命周期阶段中插件目标和逻辑。 核心功能 Mav
我是一名优秀的程序员,十分优秀!