rocm configure clang
rocm configure clang
当我们采用下面方式配置rocm3.9的环境变量
module load compiler/rocm/3.3
export | grep "rocm-3\.3" > tmp.sh
sed -i "s#/public/software/compiler/rocm/rocm-3.3.0#$HOME/rocm/rocm-3.9.0#g" tmp.sh
source tmp.sh
命令行输入clang然后按Tab 自动补全,会自动补全为clang-ocl,执行这个命令,会返回
clang-ocl: line 52: /opt/rocm-3.9.0/llvm/bin/clang: No such file or directory |
我们的rocm3.9 安装在$HOME/rocm路径,所以返回这里的clang路径显然找不到
sed -i "s#/opt/rocm-3.9.0#$HOME/rocm/rocm-3.9.0#g" $HOME/rocm/rocm-3.9.0/bin/clang-ocl
重新执行会返回
clang-12: error: no input files |
这说明我们的clang-12已经可以开始使用了,命令行输入clang-ocl -v
clang version 12.0.0 (/data/jenkins_workspace/centos_pipeline_job_3.9/rocm-rel-3.9/rocm-3.9-17-20201021/7.7/external/llvm-project/clang 60f39e2924d51c1e8606f2135f95e9047fb1da5d) Target: amdgcn-amd-amdhsa Thread model: posix InstalledDir: /public/home/suyuexinghen/rocm/rocm-3.9.0/llvm/bin Found HIP installation: /opt/rocm, version 2.8.19361-cbe6b65e ... |
注意到返回信息里的HIP安装路径是/opt/rocm,并没有找到自己安装的rocm3.9,这说明我们的hip-clang的配置仍然不对,需要进一步勘察。笔者试了配置ROCM_PATH, HIP_PATH, HIP_HOME等可能相关的系统变量,均未见效,也检索了hip/bin路径下的脚本,没有发现哪里会指向"/opt/rocm",于是推断,"/opt/rocm"可能是在编译时指定的默认rocm路径,现在验证
grep -a "/opt/rocm" $HOME/rocm/rocm-3.9.0/llvm/bin/clang-12
Linker-Bshareable/lib/ld-ananas.socrtbeginS.ocrtend.ocrtendS.ocrtn.old.lldamdgpu::Linker HIP_VERSION_MAJORHIP_VERSION_PATCHHIP_VERSION_MINORFound HIP installation: , version cuda_wrappers-wavefrontsize16-wavefrontsize32/opt/rocm/.hipVersion.amdgcn.bcoclc... |
可以看出绿色部分正是之前输出的Found HIP installation: /opt/rocm, version , 但这里/opt/rocm对应的地方为空,由此我们可以猜测,这是个被传入的变量值。
clang-ocl --help| grep rocm
--rocm-device-lib-path=<value> ROCm device library path. Alternative to rocm-path. --rocm-path=<value> ROCm installation path, used for finding and automatically linking required bitcode libraries. |
因此,我们尝试执行
clang-ocl -v --rocm-path=$HOME/rocm/rocm-3.9.0
clang version 12.0.0 (/data/jenkins_workspace/centos_pipeline_job_3.9/rocm-rel-3.9/rocm-3.9-17-20201021/7.7/external/llvm-project/clang 60f39e2924d51c1e8606f2135f95e9047fb1da5d) Target: amdgcn-amd-amdhsa Thread model: posix InstalledDir: /public/home/suyuexinghen/rocm/rocm-3.9.0/llvm/bin Found HIP installation:/public/home/suyuexinghen/rocm/rocm-3.9.0, version 3.5.0 ... |
把rocm-path的配置加在$HOME/rocm/rocm-3.9.0/bin/clang-ocl的80行
${CLANG} \
--rocm-path=$HOME/rocm/rocm-3.9.0 \
-target $TRIPLE \
-O3 \
-m64 \
rocm configure clang相关推荐
- ROCm环境下安装tvm
ROCm环境下安装tvm主要是为了构建libtvm.so.libtvm_runtime.so共享库 配置cmake环境,建议3.14版本以上 配置python环境,建议python3版本以上 配置gc ...
- non-root install ROCm
ROCm Install ROCm3.9 Packages Configure Relink Shared Libraries Install ROCm3.9 Packages 首先爬取网页,并提取p ...
- nwchem (ROCM版)编译 -最终目标
参考网址 安装rocm下的openmpi和ucx https://github.com/openucx/ucx/wiki/Build-and-run-ROCM-UCX-OpenMPI 1.测试显卡是否 ...
- java调用clang编译的so_写Java这么久,JDK源码编译过没?编译JDK源码踩坑纪实
好奇害死羊 很多小伙伴们做Java开发,天天写Java代码,肯定离不开Java基础环境:JDK,毕竟我们写好的Java代码也是跑在JVM虚拟机上. 一般来说,我们学Java之前,第一步就是安装JDK环 ...
- 在CentOS 6.6 64bit上编译安装LLVM3.7,Clang,Libc++和libc++abi
一.简介 LLVM LLVM(之前称为低级虚拟机Low Level Virtual Machine)是一种非常强大的编译器基础架构框架,专门为使用您喜爱的编程语言编写的程序的编译时.链接时和运行时优化 ...
- c 各种编译器(gcc clang)
很多时候,出现一些类似GNU,GCC,CLANG,LLVM等与编译器有关的名词的时候,都不太清楚它到底是干嘛的,理解这些东西后, 对于xcode中很多配置型的需求修改起来都会得心应手,因此有必要了解透 ...
- clang 搭建和编译boost 和zero ICE库 (Ubuntu10 64)
相关介绍资料如下: Boost编译 http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz/downl ...
- ARM 之七 主流编译器(armcc、iar、gcc for arm、LLVM(clang))详细介绍
必备 在讲解各编译器之前,必须先了解一下以下这些文件.这些文件在编译器目录下或者编译生成目标平台的可执行程序时经常见到.此外,还需要注意区分 Windows 平台 和 Linux 平台的文件. . ...
- centos安装llvm_Linux CentOS上编译并安装Clang教程
如何在Linux CentOS上编译并安装Clang?下面小编为大家具体的介绍一下,解决你在安装Clang遇到的一系列问题. 一.Minimal版CentOS安装Clang前的环境准备 1,安装gcc ...
最新文章
- 计算机网络教会我们什么,日久见人心现实教会了我们什么叫人心的说说
- windows 下 sublime Text3 做 Python 编辑器
- 使用ASP.NET 2.0提供的WebResource管理资源
- scrum回顾_133. 你最重要:2020版Scrum指南解读
- 苹果4s怎么越狱_只有老外有空去玩这些,在苹果手机上刷入了安卓系统
- matlab使用webcam获取摄像头图像,camList = webcamlist
- svn up出现类似svn: Error converting entry in directory ‘.‘ to UTF-8问题解决
- native2ascii
- 打火机与公主裙剧中的爱心
- 1969年图灵奖得主 – 马文·闵斯基 (Marvin Minsky)
- LAMP架构集成ownCloud搭建私有云盘日记
- 硬盘的S.M.A.R.T.是什么?如何看懂它
- 无刷电调--BLHELI_S的焊接问题与固件烧录
- 高性能专业上网行为管理设备WSG-500E开箱评测
- csgo国内国服饰品皮肤开箱网站大全
- intersect 相交 范围_空间关系分类及接口方法
- 植入「电子神经」,瘫痪小鼠也能踢球,鲍哲南团队成果登Nature子刊
- Busybox制作x86文件系统(最便捷版)
- VC操作EXCEL(1)
- 张牧之老师 零售银行实战营销教练