| 查看: 2844 | 回复: 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 ] |
» 猜你喜欢
化工学硕294分,求导师收留
已经有37人回复
求调剂
已经有11人回复
260求调剂
已经有4人回复
一志愿华中农业071010,320求调剂
已经有19人回复
304求调剂
已经有7人回复
求博导|生物质基多孔碳/超级电容方向,已有相关成果,寻能源材料/碳材料方向老师
已经有3人回复
二苯甲酮酸类衍生物
已经有6人回复
接受任何调剂
已经有4人回复
一志愿中科大材料与化工,353分还有调剂学校吗
已经有12人回复
320求调剂
已经有4人回复
» 本主题相关价值贴推荐,对您同样有帮助:
Fortran 编译问题
已经有9人回复
vsap 5.2 环境和编译问题
已经有14人回复
cp2k并行编译出错
已经有3人回复
求助:UDF模型的编译问题
已经有15人回复
【求助】vasp编译问题,请自己动手安装成功的人回复!
已经有9人回复
【求助】f90子程序怎么编译错误?请大家帮忙,谢谢
已经有3人回复
【求助】vasp安装与编译问题(100金币)
已经有10人回复
【讨论】求助cpmd的编译问题
已经有4人回复
【其他】在线答疑:VASP的问题
已经有314人回复
» 抢金币啦!回帖就可以得到:
欧洲“CO2捕集与加氢催化转化”博士招聘(捷克-德国-斯洛文尼亚三国项目)
+1/90
江西科技师范大学086生物与医药
+1/40
上海海事大学博导招26级全日制管理学博士
+1/37
江西科技师范大学086生物与医药
+1/37
大连海洋大学资源与环境专硕(0857)接收调剂学生
+1/14
贵州师范大学山地环境重点实验室调剂生态学5名,时间4月18日0点——4月19日10点
+1/13
香港城市大学机械系张冏博士课题组招聘博士后
+1/13
上海交通大学材料成形(塑性加工)常年招聘硕士研究生、博士研究生和博士后
+1/10
北京理工大学(珠海)招收智能科学与技术方向26级博士
+1/10
省重点实验室招收调剂生,海洋生物专业名额充足
+1/9
北化大学材料科学与工程学院研究生调剂
+1/8
西安工业大学材料与化工专业先进电子材料与器件课题组专业博士招生
+1/8
湖南理工大学 化学、化工调剂指标充足,录取率高,调剂系统最后一次开放
+1/8
省重点实验室招收07专业调剂生,海洋生物专业名额充足
+1/7
材料与化工专业还有大量指标,欢迎大家调剂,调剂系统已经开放
+1/7
求英文文献
+1/5
福建理工大学学硕08开头还有调剂名额
+1/2
广东以色列理工学院机械系姜又华课题组招收全奖研究生
+1/2
高纯氢纯度分级应用指南:5N/7N/9N 应用场景解析
+1/2
南方科技大学(同位素)化学及应用方向博士后招聘(2名)
+1/2
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时重要的编译参数~
俺是说让版主补充问题,最好还能顺便提供答案……