问题标签 [offloading]
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.
parallel-processing - 如何跨多个设备并行化简单操作?
我使用 Android Studio 工具编写了一些简单的代码。我编写的代码支持以下四个简单操作:
- 添加两个数字
- 从另一个数字中减去一个数字
- 将两个数字相乘
- 将两个数字相除
我想在不同的移动设备上并行化和运行这些操作。假设我有 4 个移动设备通过无线连接到我的 PC 所连接的同一网络。所以,我想卸载加法在移动设备 A 上运行,减法在移动设备 B 上运行,乘法在移动设备 C 上运行,除法在移动设备 D 上运行。
我怎样才能完成这项任务?我已经阅读了有关多线程、异步任务和附近 API 的信息,但由于我对 Android Studio 的了解有限,我没有找到确切的实现方法。
我想知道是否有人遇到过这样的事情?或任何可以指导我正确方向的建议。
gpu - OpenMP 卸载
我有一个结构 A 数组,其中包含数组和 int 变量。如何将它们映射到目标
但是,这不起作用。传递arrayA的最佳方法是什么?
我正在使用 gcc 8.3
python - pyMIC 卸载 MLPACK 代码 -> 错误:无法在设备 0 上加载库
我们正在尝试编译一些使用 mlpack 和 Armadillo c++ 库的代码(修改后的 mlpack knn_example.cpp)。编译成功,但是在运行 pymic 代码时出现错误:pymic.offload_error.OffloadError: Could not load library 'knn.so' on device 0`
修改后的c++代码为:
我们正在使用以下命令编译它:
并在 knn.py 中使用这个 python 代码运行它:
输出OFFLOAD_REPORT=3
如下:
将不胜感激任何帮助。
c++ - 如何在 pyMIC 中为 Xeon Phi 编译 knn
我正在尝试为 Xeon Phi Knights Corner 编译一个修改后的 mlpack knn_example.cpp示例。它使用 mlpack 库和 Armadillo c++ 库。它似乎编译成功,但是当我运行 pymic 代码时,它会引发以下错误:
修改后的c++代码为:
编译参数如下:
并在 knn.py 中使用这个 python 代码运行它:
OFFLOAD_REPORT=3 的输出如下:
如果有人能让我走上正确的道路,我将不胜感激。
openmp - 在 llvm-8.0.0 中使用 OpenMP 目标卸载
尝试通过 llvm 使用 openmp 目标卸载时出现以下错误
.
我在 LLVM_PATH 的系统中安装了 llvm-8.0.0。我从 llvm下载页面下载了 openmp-8.0.0 源代码。为了构建 openmp,我使用了以下命令:
OpenMP 的构建没有给出任何错误。但是当尝试通过 OpenMP 使用目标卸载时,我得到了上面提到的致命错误。我在 3 台不同的机器上尝试了这个,结果相同。
我可以使用 nvcc 在我的系统上构建和运行 CUDA 示例。
问候,
阿洛克
c++ - 英特尔 19.0.4 OpenMP 5.0 卸载时找不到 libcoi_device.so.0 编译错误
我刚刚安装了适用于 Linux* 2019 的英特尔® Parallel Studio XE 集群版,并尝试使用 OpenMP 卸载到 Xeon Phi 加速器。我正在使用带有标志的 cmake
这设置了一切,没有任何问题。但是,当我运行 make 时,出现以下错误:
经过进一步检查,我发现 intel 编译器的 /opt 和 ~/intel 安装libioffload_target.so.5
都丢失了libcoi_device.so.0 => not found
。
关于为什么会这样的任何想法?
fortran - 卸载的 Fortran 并行循环中的私有变量
我正在使用 OpenMP 4.5 将代码卸载到 GPU。到目前为止,一切都在 GPU 上运行,除非我尝试使用在卸载之前分配的私有变量创建并行部分。
我正在使用 gcc 7.2.0 和 cuda 9.2.88。我在 CentOS 7 上运行并使用
gfortran ./testCode.F90 -fopenmp -o ./test
这是一个示例代码:
这无法编译
如果我将私有更改为共享,它工作正常。我对 fortran 并不陌生,但知道如何用 C/C++ 和 python 编程。任何意见,将不胜感激!
python - 调试 OpenMP Python C 扩展卸载
我正在使用建模工具箱Anuga,并将其设置为在并行支持下运行。据我目前所知,背后的机制是 Numpy 正在由 C 中的模块扩展,这些模块通过以下方式暴露给 OpenMP
extra_args = ['-fopenmp']
我已经开发并测试了一个脚本来运行mpirun -np 4 python <myscript.py>
并且它可以工作。由于模型越来越大,我的兴趣是通过 OpenMP 以 NVIDIA GPU 的物理形式将一些处理转移到 GPU。我读到这被称为卸载。我已经安装了 Quadro K2000
所以我
安装
gcc-offload-nvptx
在我的 Ubuntu 19.04 上,它读取 gcc 的第 8 版。我那时将编译器标志更改为
extra_args = ['-fopenmp', '-fstack-protector']
和
- 通过编译安装
python setup.py build
。这将为目标模块返回以下消息,cg_ext.c
而不会出现任何进一步的错误:
x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv - O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2.7-rzpqx3/python2.7-2.7.16=。-fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fdebug-prefix-map=/build/python2. 7-rzpqx3/python2.7-2.7.16=。-fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/anuga/utilities/cg_ext.o -Lbuild/temp.linux-x86_64-2.7 -o build/lib.linux-x86_64 -2.7/anuga/utilities/cg_ext.so -fopenmp -fstack-protector
什么时候
- 我检查编译的库,
ldd
我得到
build/lib.linux-x86_64-2.7/anuga/utilities/cg_ext.so linux-vdso.so.1 (0x00007fff7a9fa000) libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007f0650502000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f0650317000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f0650311000 )
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f06502f0000)
/lib64/ld-linux-x86-64.so.2 (0x00007f0650606000)
所以我认为一切都已正确设置。我现在继续
- 改变一个例程的 pragma 注释如下:
前:
后:
然后我重新编译安装并运行我的脚本,希望得到分析信息:
这将返回消息
所以总而言之,我知道编译器可以理解编译指示,但没有段发送到 GPU。非常感谢任何有关如何进一步调试的提示。
此致
塞巴斯蒂安
azure - Azure App Gateway SSL 卸载到数据中心服务器?
因此,我正在考虑使用 Azure App Gateway 来克服一组不支持 TLS 1.2 的旧版服务器 (Win2003),因此到 2020 年 3 月 + 时,客户端浏览器将无法访问该站点。
所以我的问题是我可以使用 AZ App Gateway 来终止 SSL 并将流量路由到我们数据中心中的一组 Windows 负载平衡服务器吗?
有没有人这样做过?
performance - Tomcat MAX 线程 VS 会话
我们正在使用protocol="org.apache.coyote.http11.Http11NioProtocol"
,我有一个问题是 Tomcat 可以处理的最大并发会话数是多少?
据我了解 http11.Http11NioProtocol Tomcat 可以处理 200 个线程的 10000 个连接。
看看下面,我可以认为我的 Tomcat 一次可以处理大约 70000 个会话吗?