| 查看: 2402 | 回复: 19 | |||
[交流]
[软件编译交流]如下的编译问题你了解多少?
|
|||
|
在linux下的计算,第一步就是需要编译相应的计算软件(或许师兄师姐已经帮助编译好了),然后才是用来做具体的计算。关于软件编译,大家了解到什么程度?对于下面这几个问题,大家来测试一下吧。回答问题有金币奖励哦~欢迎补充相关问题,欢迎补充相应的答案~ 推荐一本关于makefile的文档《跟我一起写 Makefile》,大家有空看以看看,链接如下:http://www.chinaunix.net/jh/23/408225.html 一、关于ifort 1. FFLAGS = -FR -lowercase -assume byterecl -heap-arrays 上述编译选项分别代表什么意义?有什么用途?(每个选项10个金币) 2. OFLAG的选项O1, O2, O3等三个优化选项分别有什么优势和劣势?怎样针对自己的体系进行选择?(每个选项10个金币) 二、关于mkl 1.对于intel64而言,下列这几个选项分别代表什么意义?起什么作用? -lmkl_intel_lp64 -lmkl_sequential -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64 -lmkl_lapack95_lp64 -lmkl_core -lrt -lsvml -limf -lm(每个选项10个金币) 2.对于em64t而言 , 下列这几个选项分别代表什么意义?起什么作用?(每个选项10个金币) -lmkl_em64t -lguide -lpthread -limp -lm 三、关于mpif90 下列这几个选项分别代表什么意义?起什么作用?需要赋值的选项分别赋多大值合适?(每个选项10个金币) -DCACHE_SIZE=4000 -DPGF90 -Davoidalloc -DMPI_BLOCK=8000 [ Last edited by uuv2010 on 2012-2-11 at 15:16 ] |
» 猜你喜欢
孩子确诊有中度注意力缺陷
已经有12人回复
2025冷门绝学什么时候出结果
已经有3人回复
天津工业大学郑柳春团队欢迎化学化工、高分子化学或有机合成方向的博士生和硕士生加入
已经有4人回复
康复大学泰山学者周祺惠团队招收博士研究生
已经有6人回复
AI论文写作工具:是科研加速器还是学术作弊器?
已经有3人回复
2026博士申请-功能高分子,水凝胶方向
已经有6人回复
论文投稿,期刊推荐
已经有4人回复
硕士和导师闹得不愉快
已经有13人回复
请问2026国家基金面上项目会启动申2停1吗
已经有5人回复
同一篇文章,用不同账号投稿对编辑决定是否送审有没有影响?
已经有3人回复
» 本主题相关价值贴推荐,对您同样有帮助:
Fortran 编译问题
已经有9人回复
vsap 5.2 环境和编译问题
已经有14人回复
cp2k并行编译出错
已经有3人回复
求助:UDF模型的编译问题
已经有15人回复
【求助】vasp编译问题,请自己动手安装成功的人回复!
已经有9人回复
【求助】f90子程序怎么编译错误?请大家帮忙,谢谢
已经有3人回复
【求助】vasp安装与编译问题(100金币)
已经有10人回复
【讨论】求助cpmd的编译问题
已经有4人回复
【其他】在线答疑:VASP的问题
已经有314人回复
» 抢金币啦!回帖就可以得到:
双一流大学湘潭大学“化工过程模拟与强化”国家地方联合工程研究中心招收各类博士生
+1/100
中国科学技术大学 精准智能化学重点实验室 武建昌课题组招聘博士后
+1/82
华中科技大学2026级申请考核制博士生1名-新型共轭MOF/COF合成及其超电应用方向
+1/79
同济大学 物理科学与工程学院 陈振跃(国家高层次青年人才) 课题组招聘博士后
+1/77
双一流大学湘潭大学“化工过程模拟与强化”国家地方联合工程研究中心招收各类博士生
+1/49
国家青年人才叶立群教授课题组招收2026级博士研究生
+1/36
北京理工大学国家杰青梁军教授课题组招聘2026级博士研究生
+1/31
华北电力大学(北京)(第一性原理计算)博士招生——学博,专博各1人
+2/28
华北电力大学(北京)(第一性原理计算)博士招生——学博,专博各1人
+2/20
荷兰Utrecht University超快太赫兹光谱王海教授课题招收2026 CSC博士生
+1/11
美国圣母大学张艳良教授诚招全奖博士生
+2/10
外资企业招资深现场服务工程师
+1/9
湘潭大学2026年招收 力学 博士研究生2名(“申请-考核制”、硕博连读)
+1/7
南京大学蔡亮课题组诚招2026年申请-考核制博士生2-3名(电解水制氢,XAFS谱学等)
+1/6
浙江大学-化工学院刘平伟课题组-二维材料/功能聚合物开发
+1/6
欢迎报考中山大学课题组,提供2025-2026级硕士研究生名额
+1/6
山东大学集成电路学院太赫兹团队博士招生
+1/4
中国科学技术大学 精准智能化学重点实验室 武建昌课题组招聘博士,博士后
+1/3
香港科技大学高寒宇课题组博士后招聘
+1/3
鲜样可以直接检测吗?
+1/1
2楼2012-02-11 15:11:37
3楼2012-02-11 15:34:05
4楼2012-02-11 15:35:24
5楼2012-02-11 15:37:45
6楼2012-02-11 15:41:53
8楼2012-02-11 17:05:49
11楼2012-02-13 09:07:15
★ ★
zzy870720z(金币+2): 鼓励交流,不错哦 2012-03-03 08:31:52
zzy870720z(金币+2): 鼓励交流,不错哦 2012-03-03 08:31:52
|
关于O1、O2、O3等参数,ifort的help文档是如下说明的: -O1 optimize for maximum speed, but disable some optimizations which increase code size for a small speed benefit. (最大速度的优化) -O2 enable optimizations (DEFAULT) (增强优化,这个是默认选项) -O3 enable -O2 plus more aggressive optimizations that may not improve performance for all programs -O0 disable optimizations (不优化) -O same as -O2 (默认选项,同O2) [ Last edited by uuv2010 on 2012-2-13 at 09:30 ] |
12楼2012-02-13 09:27:24
13楼2012-02-13 20:40:38
★
小木虫(金币+0.5):给个红包,谢谢回帖
uuv2010(金币+10): 赞! 2012-02-13 21:30:51
小木虫(金币+0.5):给个红包,谢谢回帖
uuv2010(金币+10): 赞! 2012-02-13 21:30:51
| Intel的EM64T技术,EM64T技术官方全名是Extended Memory 64 Tenchnology 中文解释就是扩展64bit内存技术。现在的32位奔腾 4 CPU都是采用IA-32指令集,EM64T其实就是在这个指令集的基础上进行扩展,我们将它命名为IA32e。Intel这种实现64位的方法其实和AMD的x86-64技术有异曲同工之妙,都是通过64位扩展指令来实现兼容32位和64位的运算。另外不同的是Intel的EM64T技术设定了IA-32和IA-32e两种模式的激活程序,就是说EM64T需要满足特定条件才会激活。 |
14楼2012-02-13 20:52:04
★ ★
zzy870720z(金币+2): 鼓励交流,但好像有点文不对题吧,呵呵 2012-03-03 08:33:12
zzy870720z(金币+2): 鼓励交流,但好像有点文不对题吧,呵呵 2012-03-03 08:33:12
|
下面是一个使用Intel MKL 进行矩阵计算的例子。 通过的这个例子,我们可以了解如何使用Intel MKL 的函数库: 1>程序说明:下面的matrix.c 文件分别调用 C 代码,Intel MKL BLAS Level 1 函数 (ddot), BLAS Level 2 函数(dgemv) 与 BLAS Level 3的函数(DGEMM)完成矩阵计算: roll_your_own_multiply 是 C 源代码,它直接依赖编译器生成优化代码。Ddot_Multiply,Dgemv_multiply使用Intel MKL 函数实现部分矩阵运算。Dgemm_multiply 直接调用MKL 的矩阵计算函数。 2>程序编译与链接: 下面是在Linux 32 的系统上,使用Intel Compiler编译该程序并链接Intel MKL 10.0的例子: > source /opt/intel/cc/10.x.xxx/bin/iccvars.sh #设置Intel Compiler 环境变量 > icl –o matrix –I/opt/intel/mkl/10.0.xxxxx/include/ matrix.c-L/opt/intel/mkl/10.0.xxxx/lib/32/ -lmkl_intel_c -lmkl_intel_thread -lmkl_core -lguide40.lib –lpthread 其他的链接的方式,大家可以查看下面的帖子:http://support.intel.com/support ... ls/sb/CS-028699.htm 3> 程序执行: > source /opt/intel/mkl/10.0.xxxxx/tools/environment/mklvars32.sh #程序使用动态方式链接MKL函数时,设置MKL的环境变量。 >./matrix 4> 设置多线程运行:在Intel MKL 10.0 使用OpenMP* 实现多线程。 OpenMP*程序可以通过环境变量 OMP_NUM_THREADS 去控制线程的数目。 > export OMP_NUM_THRADS=4 #设置程序的线程为 4 > ./matrix #DGEMM在执行的时候使用4个线程。 注意:在MKL 10.0 中, 如果OMP_NUM_THREADS没有定义,MKL函数可能会根据数据的大小,以及其他的变量来设置线程数目, 缺省时,可能运行多个线程运行。 源程序下载的URL: http://download355.mediafire.com ... hflsx1md/testcode.c |
15楼2012-02-13 20:53:56
★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖
zzy870720z(金币+2): 谢谢分享,呵呵 2012-03-03 08:33:26
小木虫(金币+0.5):给个红包,谢谢回帖
zzy870720z(金币+2): 谢谢分享,呵呵 2012-03-03 08:33:26
|
安装icc和ifort: 在Intel网站下载9.1.047版icc(我是没安装,可以不装)和9.1.043版ifort,然后按网站要求申请许可证,并按提示进行安装即可,我都是全部安装的。基本上10版本的ifort安装很方便就完成的。重 要一点就是必须先建立ifort的安装目录,并且把lincese文件复制进入对应目录里。 1、 把icc和ifort的路径加入到环境变量中: 把安装目录下bin文 件夹中的iccvars.sh和ifortvars.sh拷贝到/etc/profile.d中。 这个很重要,作了就可以进行下面的MPI的配置和MAKE了,否则死都过不去! 2、 卸载 按照说明说的介绍,PDF里有介绍如何卸载的 第四 品 配置ssh: 1、 安装ssh 本来是可以不要的, 不过操作起来很简单,就顺手都给安装上了 yum install openssh openssh-server openssh-clients openssh-askpass 2、 编辑/etc/hosts, 这一步我觉得单机并行似乎可以不要,不过以前这么做的,没有问题,所以 现在还这么做 加入一行:127.0.0.1 node01 c.启动sshd并自动生成密钥: /etc/rc.d/init.d/sshd start 加入启动服务: chkconfig --level 5 sshd on d.限制其它人连接:两种做法:a.设置iptables,b.编辑/etc/hosts.deny和/etc/hosts.allow, 这两个文件的格式忘掉了,有需要的同学可以查一下。 |
16楼2012-02-13 20:54:48
17楼2012-03-02 14:43:54
18楼2012-03-02 14:52:00
19楼2012-08-23 10:34:04
20楼2014-12-08 10:49:33
简单回复
2012-02-11 15:55
回复
2012-02-11 17:29
回复

uuv201010楼
2012-02-11 18:49
回复














回复此楼
怎么都是ifort的啊,并且这些都是编译VASP时重要的编译参数~
俺是说让版主补充问题,最好还能顺便提供答案……