问题标签 [hexagon-dsp]
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.
android - Renderscript 代码可以编译并在 Snapdragon 的 Haxagon DSP 上运行吗?
Renderscript 声称支持“不同类型的处理器,例如 CPU、GPU 或 DSP”。现在,Android 世界中最流行的 DSP 可能是Snapdragon SOC 中的Hexagon。可以让 Renderscript 代码在 Hexagon 上运行吗?如果是这样,怎么做,有什么限制?
更新
关于我迄今为止对该问题的调查 - 没有可用的文档或示例,因此逆向工程高通驱动程序似乎是合乎逻辑的下一步。出于显而易见的原因,我想我会先问。
linker-errors - 使用 Hexagon DSP 工具链的多定义链接器错误
我正在尝试使用 Qualcomm Hexagon 工具链为 Hexagon 目标构建/交叉编译一些 C 代码。我使用argtable3。我的应用程序中需要用于命令行解析的库。
该版本为 argtable3 库和 Hexagon 工具链 libc.a 中存在的某些函数提供了多个定义链接器错误。下面给出的错误。
我该如何解决这个问题,因为我不能删除 argtable,也不能删除 libc.a 的链接作为我的目标架构,删除它可能会引发其他错误。
错误:文件../../lib/libargtable.a (argtable3.co) 和 /home/HEXAGON_Tools/7.2.12/Tools/bin/../target/hexagon/lib/中的符号“ getopt ”的多重定义v60/ libc.a (getopt.o)
错误:文件../../lib/libargtable.a (argtable3.co) 和 /home/HEXAGON_Tools/7.2.12/Tools/bin/../target/hexagon/lib/中的符号“ opterr ”的多重定义v60/ libc.a (getopt.o)
错误:文件../../lib/libargtable.a (argtable3.co) 和 /home/HEXAGON_Tools/7.2.12/Tools/bin/../target/hexagon/lib/中的符号 ` optind ' 的多重定义v60/ libc.a (getopt.o)
错误:在文件../../lib/libargtable.a (argtable3.co) 和 /home/HEXAGON_Tools/7.2.12/Tools/bin/../target/hexagon/lib/中有多个符号“ optopt ”定义v60/ libc.a (getopt.o)
tensorflow - 使用 HEXAGON_LIBS 构建张量流
我想用高通六边形库构建张量流,就像这样的makefile
tensorflow/contrib/makefile/Makefile
但我在高通的 HEXAGON SDK 中找不到libgemm_wrapper.so
。
c - Hexagon 编译器在使用 `typedef struct mystruct *mystruct` 时遇到问题
我在头文件中有这一行:
以及 .c 文件中的相应结构定义。相当标准的做法。
我收到此编译错误:
这是使用来自 Hexagon 3.0 SDK 的 Hexagon Tools Compiler (7.2.12)。它的正式版本是 QuIC LLVM Hexagon Clang 版本 7.2.12。为 Snapdragon Flight 建造。据我所知,这应该有效。它适用于 x86_64-pc-linux-gnu 的 Ubuntu clang 版本 3.5.0-4ubuntu2~trusty2(基于 LLVM 3.5.0)。
这里有什么问题?这种类型的typedef
C 的新特性是没有在编译器中实现,还是像这些常见的编译器差异?
编辑:实际上 struct 是在 .c 文件中定义的,而不是 .cpp 文件。添加了显示使用 Ubuntu clang 编译Makefile
的make
输出,以及带有麻烦typedef
语句的头文件顶部。最后运行一个测试,所有 105 个测试都通过。
Edit2:请参阅 Jonathan Leffler 的回答,了解此方法有效与无效的情况。
环形缓冲区.h:
生成文件:
make
输出:
Edit3:这实际上只适用于 Hexagon-clang 编译器。存在问题的是该模块存在于较大程序的编译过程。我认为它正在尝试将此代码编译为 C++。
tensorflow - TensorFlow HVX 加速支持
我从https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/hvx成功构建并运行了测试应用程序。我现在想针对https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/benchmark的 CPU 实现对 HVX 进行基准测试,如果可能的话,还有 Android 摄像头演示,看看它会有多少帮助,但我找不到任何描述如何使用 HVX 支持构建所述应用程序的文档(我的构建在 CPU 上运行)。我正在使用 Android 7.0 在 Open-Q 820 开发板上进行测试。
是否在 HVX 测试应用程序之外使用 HVX 加速,最好使用基准测试,也许还支持 Android 相机演示?如果是这样,有人可以指出我正确的方向吗?谢谢!
android - Android - 动态模块(.so)需要生产签名
正如我从 Hexagon DSP 文档中了解的那样:
为了使 .so 能够跨大量 OEM 设备成功部署在生产设备上,动态模块需要由 OEM 进行生产签名。鼓励 ISV 与其 OEM POC 合作,为 OEM 设备签署模块生产。
那么,有什么办法可以让我的 .so(s) 在生产设备上工作(最初运行 OxygenOS 的 OnePlus 3T)?
我试图通过编译 LineageOS 并安装它来根设备。所以这给出了“adb root”访问权限,但我仍然收到以下dlopen
错误:
知道我该如何解决这个问题吗?
tensorflow - 无法构建 libhexagon_controller.so [nnlib 中缺少文件:GRAPHINIT := /prj/dsp/qdsp6/arch/cnn/setup/inceptionv3_uint8in.c]
我一直按照以下链接中提供的步骤在六边形上使用 tensorflow。 https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/hvx
我面临2个构建问题,
(2) 在构建 libhexagon_controller.so 时,报告了这个错误:
是否有人在 hexagon 上运行过 tf,请提出您对修复构建问题的看法。
编辑: graph_app 需要根据 inceptionv3 独立评估。
tensorflow - 运行 hexagon nnlib 中的独立 graph_app 时,Shell 卡住
当我发出此命令时,Shell 没有响应。
从助手 optargs 获得描述信息
我错过了什么吗,让我知道,我过去graphinit_med.c
只是检查它的工作情况,没有关于这个模型的描述。
谢谢,
tensorflow - 编译器在构建 tensorflow/contrib/makefile/build_all_android.sh 时失败
当我构建 nnlib 以在 Hexagon DSP hvx 中运行它时,我遵循https://github.com/tensorflow/tensorflow/tree/master/tensorflow/contrib/hvx中的命令。由于出现以下错误,因此无法成功构建:
hexagon-dsp - 尝试编译和链接存根和骨架时,在 Open Q 820 Snapdragon 820 Hexagon 3.2 上构建时出错
我正在尝试按照中的说明运行 Hexagon DSP SDK 的计算器示例file:///C:/Qualcomm/Hexagon_SDK/3.2/docs/calculator_android.html
在命令行中,我通过以下方式设置了 sdk:
我已经成功清理并构建了android模块
但是在尝试为六边形模块执行此操作时出现错误。
这就是我得到的:
请注意,我的电脑是西班牙语,“El sistema no puede encontrar la ruta especificada”。表示系统找不到指定的路径。