我使用icc和-mmic选项编译了GMP,但无法在MIC上安装。我应该如何安装? 我写了一个演示程序,用icc编译。它说找不到gmp.h. 我应该如何在MIC上安装GMP库以及放置gmp.h的位置?任何人在Xeon Phi上使用GMP?
回答
虽然我对Xeon Phi甚至ICC没有任何专业知识,但是如果您在类Unix环境中运行,那么您可以尝试通过正常的指向ICC编译器的GMP源代码的configure/make过程,而不是为了默认GCC到构建静态和/或共享库与产生gmp.h头一起,你可以再与您的应用程序链接。你可能想看到GMP documentation。下面是一些建议,我走到尝试编译它NVIDIA CUDA:与CC
- 供应的./configure和CFLAGS变量指向所需的编译器和要
- 确保其无论选择您的主机与Xeon Phi设备之间不存在ABI不兼容问题,特别是在32位与64位体系结构之间。
- 考虑加入
--disable-assembly
选项生成“纯C”版本(我不熟悉的至强融核组装和IF /它是如何与86 compatibile) - 不要忘了(与
-j
参数可能)运行make check
在您编译GMP以检查测试是否通过之后,如果您想将其用于某些专业目的,这是非常重要的一步。
的库安装OS通过make install
命令,默认下/usr/local
目录(如果你想在别的地方您可以添加--prefix
选项),具体如下:
/usr/local/include
为gmp.h头文件/usr/local/lib
用于静态和/或共享libgmp二进制
您也可以尝试使用mini-gmp程序包编译您的应用程序,该程序包包含在GMP源代码中(它位于mini-gmp目录下)。它的mpz_*
和mpn_*
程序,而不是复杂的和快速的正常GMP(它不拥有尽可能多的严峻考验覆盖)的子集,但它可以使您的工作与占地面积小(它包含在一个头,做C源文件)。对于这样的选项,一定要获取GMP的最新版本(甚至可以从他们的仓库获取)。
非常感谢您的回答。我在Xeon之前使用gcc编译并安装GMP,并且它是成功的。我想在Xeon phi上使用GMP而不是Intel MKL,所以我有这个问题。 – user3346400
针对Xeon phi的编译成功,CC = icc CFLAGS = -mmic。我从你的答案中发现了一些我没有注意到的东西 – user3346400
构建GMP与英特尔编译:
cd /home/
wget https://gmplib.org/download/gmp/gmp-6.0.0.tar.bz2
tar -xf gmp-6.0.0.tar.bz2
rm -f gmp-6.0.0.tar.bz2
cd gmp-6.0.0
mkdir mic
cd mic
../configure CC=icc CFLAGS="-mmic" --host=x86_64 --disable-assembly --prefix /home/gmp-6.0.0/mic/
make
make install
使用英特尔编译器环境变量麦克风发展:
GMP_INCDIR=/home/gmp-6.0.0/mic/include
GMP_LIBDIR=/home/gmp-6.0.0/mic/lib
- 1. 在Xeon-Phi上运行Haskell
- 2. 是否可以使用std :: thread在Intel Xeon Phi上并行化?
- 3. xeon phi计时器分辨率
- 4. 获取特定型号的Xeon phi
- 5. Xeon Phi中的分散/聚集
- 6. 如何禁用intel xeon phi协处理器?
- 7. 在windows上使用GMP
- 8. 我们如何知道Intel Xeon Phi协处理器是否存在
- 9. 适用于Xeon-phi多内核体系结构的应用程序
- 10. 任何人在Mac上使用libvlc?
- 11. 如何将我的工作绑定到intel xeon phi协处理器?
- 12. 如何使用GMP
- 13. GMP使用gmp4osx
- 14. 在KNC(Xeon Phi)中查找矢量数组中的数字实例
- 15. x86兼容的加速器Intel Xeon Phi中是否存在SIMD(SSE/AVX)指令?
- 16. 使用Xcode在MacOS X上安装GMP
- 17. 在CentOs 5.3上使用gmp 5
- 18. 如何在freebsd上启用GMP?
- 19. 使用GMP载体
- 20. 在C++ GMP中使用ceil
- 21. 使用OpenMP在i7和Xeon上出现意外的结果
- 22. 在Windows上编译GMP库
- 23. 是否有任何GMP对数函数?
- 24. 如何在OSX 10.10上安装php-gmp
- 25. 任何人使用IronJS?
- 26. 任何人使用.netTiers?
- 27. 任何使用CouchDB的人?
- 28. 任何人使用EmpireDB?
- 29. 任何人都使用SvnMapper?
- 30. GMP内置GMP吗?
你是什么操作系统,在那里你编译GMP? –
RedHat Enterprise 6.3。我使用CC = icc CFLAGS = -mmic编译CPU。但我不知道如何安装到至强phi – user3346400
“无法安装”:什么失败? “找不到gmp.h”:你知道'-I'标志吗?只要你告诉编译器在哪里找到它,放置'gmp.h'并不重要。您可以在命令行中添加'-v'来查看编译器在默认情况下查找哪些内容。 –