我想做的事:
我正在开发一个面向所有platforms(IOS/Android/Windows(mobile/desktop)/Mac/Linux)的C/c++代码。
到目前为止我做了什么:
是的,有许多在线链接讨论OpenMp与不同处理器和操作系统的兼容性,但很难从它们得出合理的结论,因为许多是老文章或文章,特别是wrt到移动目标。
参考文献:链接
根据我的分析,是的,openMp可以与所有桌面操作系统(Windows/Linux)一起工作,现在几乎所有的计算机都有多核处理器。所以根本不会有任何问题。
有人能帮我找到以下问题的答案吗?
发布于 2015-02-05 15:40:25
我不能回答1,因为我没有任何ios设备,也没有开发环境。
是的,所有高端android设备都有一个以上的核心。实际上,即使是只有一个核心的低端android设备也很难找到。但并不是所有的安卓设备都是基于arm的,还有双核和四核x86和x86_64设备以及arm64-v8a设备。
NDK支持所有这些体系结构,自其第9个版本以来也支持openmp。使用gcc (默认情况下它是编译器),并在-fopenmp
Makefile中将Android.mk添加到NDK模块的CFLAGS和LDFLAGS中:
include $(CLEAR_VARS)
LOCAL_MODULE := yourmodule
LOCAL_SRC_FILES := yourmodule.c
LOCAL_CFLAGS += -fopenmp
LOCAL_LDFLAGS += -fopenmp
include $(BUILD_SHARED_LIBRARY)
发布于 2020-02-12 01:29:21
xcode clang不包含openmp。但是您可以自己构建,使用-Xpreprocessor -fopenmp。
https://stackoverflow.com/questions/28338425
复制相似问题