问题标签 [fpu]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
assembly - FPU 用 fld 存储 nan
我正在用汇编程序编写一个 DOS 程序:我正在尝试绘制 Mandelbrot 集。我现在正试图在汇编中翻译这段 C 代码:
我把它翻译成:
不幸的是,第一个fld
失败了。WD 调试器告诉我fld
存储nan
在ST(0)
FPU 寄存器中。为什么?我究竟做错了什么?这是完整的程序: http: //pastebin.com/KDrn5aLD
x86 - x86:超越函数的延迟和吞吐量
英特尔® 64 和 IA-32 架构优化参考手册列出了各种 CPU 指令的延迟和吞吐量数据。
对于超越函数(FSIN
等),一些数字被列为范围(第 C-29 页)。脚注 4 解释:
先验指令的延迟和吞吐量在动态执行环境中可能会有很大差异。这些说明仅给出了一个近似值或一个值范围。
我的问题是:哪些因素会影响此类指令的吞吐量和延迟?我想这个论点的价值是一个因素。还有其他的吗?
assembly - tasm代码fpu浮点单元
嘿,我m trying to calculate x^n
by a public function xpn that gets double x and int n
so i have to calculate in array x^1 , X^2 , x^4 ..... x^k
k<n
then i have to multiple xp=1 with array[i] if (n mod 2)=1 if not n=n/2 ,and i=i+1
so somebody can help me because it is not working !! i don
知道如何像 qword ptr 那样进行转换,它是 tasm assembley fpu= 浮点单元,我m trying to do : i
得到的是 double x 和 int n,我在 xpn x^1,x^2,x^4 中计算....x^k k0 { if n mod 2 = 1 xp=xp*xpn[i] n=n/2 i=i+1 } 所以最后我得到 x^n !!!!!!
arm - 基准标记 ARM NEON OpenMAX 数字
我目前正在通过使用各种编译器(尝试过 DS-5 和 IAR)和各种库(Openmax,NE10)来对 Cortex-A8 处理器的性能进行基准测试。我正在专门研究 NEON 单元在比较时可以实现什么 1.Only ARM 2.ARM +VFPv3
Openmax 有两个版本 1. 为 NEON 定制 2. Arm 处理器的示例代码 我使用 OpenMax 制作了下表。正如预期的那样,NEON 代码性能是无与伦比的。
https://docs.google.com/file/d/0B318pI7x2QVceWRDTE5FQk8zcVk/edit
NE10 是目前唯一可用于 Cortex-AI 的其他信号处理库,我仍在开发 NE10 库。
有什么办法可以将这些数字与其他处理器进行比较?还是有任何用于比较处理器的程序标准程序?
以下是 Openmax api 的链接 http://www.khronos.org/files/openmax_dl_spec_1_0_2.pdf
java - GPU可以用于Android Environmement上的数值计算(复矩阵乘法)吗?
我正在 Android 中实现卡尔曼滤波器算法。该代码有一些复杂的矩阵乘法运算。矩阵元素是浮点类型。我的问题是
1)如何在Android中处理浮点数?
2) GPU 可以用于复杂矩阵(浮点类型的元素)计算或任何类型的数值计算吗?
非常感谢
assembly - 在汇编 x86-64 中划分 longfloat 和 int
我有一个程序,只要用户输入 Y(是),我就会循环。然后用户输入 long float 类型的数据。我还有一个计数器,r14,每次输入长浮点数时都会计数。循环结束后,我希望计算平均值。如果我这样做:
并显示它,我会得到一个分段错误。我也尝试了很多其他的东西,但它总是给我一个段。尝试分割显示后出现故障。我认为问题在于 r14 是一个 int,我不能像那样将它放入 FPU 堆栈并进行划分。但我想不出另一种方法。
有人可以帮忙吗?提前致谢。
performance - FPU与软件仿真的性能比较
虽然我知道(有人告诉我)浮点协处理器的工作速度比任何浮点运算的软件实现都要快,但我完全没有直觉这种差异有多大,在数量级上。
答案可能取决于微处理器和超级计算机之间的应用程序和工作地点。我对计算机模拟特别感兴趣。
你能指出这个问题的文章或论文吗?
fpu - _controlfp_s 返回高 32 位?
我看到 _controlfp_s unsigned int 的返回表明正在为某些 ODBC 工作设置第 32 位(认为只使用了 16 位)?
有人知道这意味着什么吗?
通常我们只看到 0x0008001F(64 位)或 0x0009001F(32 位),但在某些情况下,似乎是第 3 方驱动程序或 DLL 将其设置为 0x8009001F!!!!
我们注意到当第 3 方软件有时会随机关闭我们的应用程序。
控制字 10000000000010010000000000011111,
switchOffExceptions32bit 10010000000000011111, switchOffExceptions64bit 10000000000000011111
compiler-construction - 检测单个语句引发的潜在 FPU 条件
我fenv
用来查找产生溢出、下溢、不精确结果等的语句。
但是,我是否正确假设编译器可以对我的代码重新排序而不实现我真正想要的效果?如果是这样,我将如何在fe*
函数周围创建一个“障碍”(这样做的标准化方法的奖励积分?)我可以在某个地方放置一个volatile块吗?
如果可以的话,我会测试这个,但我不确定如何。
例子:
编辑:
同时,我使用 volatile 块实际上是创建一个屏障。
delphi - FLD 指令 x64 位
我对 x64 位的 FLD 指令有一点问题……想将 Double 值加载到 st0 寄存器中的堆栈指针 FPU,但这似乎是不可能的。在 Delphi x32 中,我可以使用以下代码:
不幸的是,在 x64 中,相同的代码不起作用。