neon相关内容

NEON包向量将比较结果转换为位图

我得到两个浮点操作数比较的比较结果,如下所示;我需要做的是基于比较的结果,需要执行以下操作:即: neon_gt_res = vcgtq_f32(temp1, temp2); if(neon_gt_res[0]) array[0] |= (unsigned char)0x01; if(neon_gt_res[1]) array[0] |= (unsigned char)0x02; if(ne ..
发布时间:2020-09-07 02:28:20 其他开发

如何在Android NDK中为特定文件设置优化级别?

我有一个Android的本地库,其中包含一些包含NEON汇编代码的文件.我已经从其他编码器那里继承了此代码,并且至少可以说,由于我对NEON程序集编码(或任何程序集)的了解是轻率的.无论如何,我注意到了以下问题:当我使用"ndk-build NDK_DEBUG = 1"进行编译时,一切都很好.当我为版本"ndk-build NDK_DEBUG = 0"进行编译时,编译器会优化掉汇编代码.我设法解决 ..
发布时间:2020-08-27 22:39:30 移动开发

在aarch64上未对齐的SIMD加载/存储的性能

旧答案表示aarch64支持未对齐的读/写并提到了性能成本,但是目前尚不清楚答案是否仅涵盖ALU或SIMD(128位寄存器)操作. 相对于对齐的128位NEON加载和存储,未对齐的128位NEON加载和存储在aarch64上速度要慢多少(如果有的话)? 是否有针对未对齐的SIMD加载和存储的单独说明(如SSE2的情况),或者已知对齐的加载/存储的指令与潜在未对齐的加载/存储的指令相同? ..
发布时间:2020-08-22 21:29:10 其他开发

如何检查vDSP功能是否在霓虹灯上运行标量或SIMD

我目前正在使用vDSP框架中的某些功能,尤其是vDSP_conv,我想知道是否有任何方法可以检查该功能是调用标量模式还是在霓虹处理器上处理过SIMD。 文档提到了必须满足power-pc-architecture的某些标准,或者调用了标量模式。现在我既不知道这些条件是否也适用于iphone,也不知道如何检查我的函数是否调用标量模式或在霓虹灯上正常运行。 是否可以检查 谢谢! ..
发布时间:2020-06-04 18:43:07 移动开发

numpy已针对raspberry-pi自动进行了优化

Raspberry Pi(armv7l体系结构)具有霓虹灯vfpv4支持,可用于优化. 在安装命令pip3 install numpy或apt-get python3-numpy时,numpy的标准版本是否包括这些优化? 我不是在谈论blas和lapack.本机numpy. 解决方案 正如Mark Setchell所指出的,numpy似乎没有针对NEON内在函数的特定代码.但是 ..
发布时间:2020-05-18 22:31:13 Python

ARM NEON汇编器错误:“指令不能是有条件的"

根据手臂信息center vadd可以有条件地执行,但是当我尝试 vaddeq.f32 d0,d0,d1 Xcode返回 65:instruction cannot be conditional -- vaddeq.f32 d0,d0,d1 我注意到的一件事是,似乎只有NEON指令会产生此错误. VFP指令不会产生这些错误. 是否需要设置编译器标志才能启用NEON条件指令 ..
发布时间:2020-05-06 10:53:25 其他开发

将arm_compute :: Image转换为cv :: Mat

我有很多基于开放式cv的代码,但是Arm Compute库可以通过多种方式提高性能,因此id喜欢将一些arm计算库代码集成到我的项目中.有没有人尝试过在两个相应的图像结构之间转换?如果是这样,您做了什么?还是有一种方法可以共享指向基础数据缓冲区的指针,而无需复制图像数据,而只需适当地设置步幅和标志? 解决方案 我能够配置与我的cv :: Mat属性相对应的arm_compute :: Im ..
发布时间:2020-05-04 09:53:18 AI人工智能

如何在Xcode中启用Neon指令

我想在iphone上使用Neon SIMD指令。 我听说我们必须在目标检查器的“其他C标志”字段中放置标志“-mfloat-abi = softfp -mfpu = neon”,但在构建时我得到“错误:无法识别的命令行选项” - mfpu = neon“”。 为了允许这个标志,还有什么特别的东西需要做吗? (我有Xcode 3.2.1和iphone sdk 3.1.3) 谢谢!! ..
发布时间:2018-11-14 16:20:56 移动开发

如何在iPad A4处理器上执行整数SIMD操作?

我觉得需要速度。 Double for循环正在扼杀我的iPad应用程序性能。我需要SIMD。如何在iPad A4处理器上执行整数SIMD操作? 谢谢, Doug 解决方案 要获得最快的速度,您必须编写使用NEON SIMD操作的ARM汇编语言代码,因为C编译器通常不会制作非常好的SIMD代码,所以请写作大会将产生重大影响。我在这里有一个简短的介绍: http://www.she ..
发布时间:2018-09-26 16:53:38 IPhone

iPhone上最快的反方形根

我正在开发一款涉及某些物理计算的iPhone应用程序,这些计算每秒进行数千次。我正在努力优化代码以提高帧速率。我正在寻求改进的其中一个部分是平方根。现在,我正在使用 Quake 3快速反平方根方法。然而,在做了一些研究后,我听说通过使用NEON 指令集。我不熟悉内联汇编,无法弄清楚如何使用NEON。我尝试实施 math-neon 库,但由于大多数基于NEON的函数缺少返回。 编辑:我突然得到 ..
发布时间:2018-09-18 09:54:07 移动开发

未知的注册名称“q0”在asm(arm64)

我正在尝试为新的arm64 arch编译我的lib。我有一堆NEON程序集,对于所有这些我收到错误 asm中未知的寄存器名称“q0”。 即使我简单地写smth: asm( “” : : :“q0”,“q1”,“q2”,“q3” ); 我认为arm64支持NEON。我错过了什么吗? 解决方案 “v0”: scanon $ cat bar.c ..
发布时间:2018-09-06 11:33:31 移动开发

有没有办法在运行时检测iOS上的VFP / NEON / Thumb / ...?

因此,通过查询 sysctlbyname(“hw.cpusubtype”,...)来确定iOS设备运行的CPU是相当容易的,但似乎没有什么明显的方法来找出CPU的实际功能(想想VFP,NEON,Thumb,...)。可以有人想办法做到这一点? 基本上,我需要的东西类似于 getauxval(AT_HWCAP)在Linux / Android上,它返回CPU支持的功能的位掩码。 有几点需 ..
发布时间:2017-12-21 22:12:13 移动开发

Cortex A9 NEON与VFP使用混淆

我试图建立一个Cortex A9 ARM处理器的库(更具体的OMAP4),我对于在浮动环境下使用NEON vs VFP时有些混淆点操作和SIMD。需要指出的是,我知道两个硬件协处理器单元之间的差异(也概述),我只是对它们的正确使用有一些误解。 与此相关,我使用以下编译flags: GCC -O3 -mcpu = cortex-a9 -mfpu = neon -mfloat-abi ..
发布时间:2017-12-21 21:39:24 C/C++开发

霓虹浮动乘法慢于预期

我有两个浮动标签。我需要将第一个选项卡的元素乘以第二个选项卡的相应元素,并将结果存储在第三个选项卡中。 我想使用NEON来并行浮动乘法:四个浮动乘法同时,而不是一个。 我预计显着加速,但我只实现了约20%的执行时间减少。这是我的代码: #include #include #include co ..
发布时间:2016-10-23 19:47:48 C/C++开发