conan30112的个人博客分享 http://blog.sciencenet.cn/u/conan30112

博文

COSMOMC安装及其细节注意事项

已有 7871 次阅读 2015-2-11 23:42 |个人分类:程序包安装|系统分类:科研笔记| Linux, cosmomc, 程序包安装

cosmomc是宇宙学和天体物理研究中经常用到的一款重要的程序包,想必只要接触它的人就一定知道它的重要性,但是想要掌握它的使用方法却不是易事。从它的安装开始这个程序包就非常的难伺候,如果没有前辈或者有经验的人来帮你一步步来弄,自己对着网络上少的可怜的安装教程折腾一个星期都是有可能的,我也是这么被折磨过来的,因此趁着假期有空我觉得有必要至少将安装过程整理一下,以为后人铺路,方便大家将精力放在以后更重要的程序修改和应用上,而不是这些无聊但却费事费力的安装过程上,也算铺路了~

cosmomc资源截至到博文写作时为止已经发布了2015 Feb(http://cosmologist.info/cosmomc/private_DONTLINK_downs/),获取最新的程序包你需要登录点击这个链接,然后按照它的提示一步步来,正常来说是需要一个邮箱注册的,然后如果程序包有更新的话代码作者会群发邮件通知,邮件中就会附上上面的那个最新版代码包的现在链接,点击后download即可。

当然安装时哪个版本都一样,至少Jun 2014和Feb 2015没啥区别在安装过程上,即便有小的区别我会在下面说一下。下面我就按部就班的将我安装的过程综合叙述一下,切记这是我按装的过程,是否保证100%正确我不敢打保票,只能说安装上后运行无压力,至今没有什么异常就是了~

首先大家可以参考这篇文章http://arxiv.org/abs/1409.1354v3,我的安装步骤基本上就是按照它的指导一步步来的,所以大家可以按照文章中的步骤来安装,但是文章中也有一些细节没有说清楚,所以我会在竭力回忆我的安装过程后将应该注意的一些细节补上,以防大家走弯路,要知道这个安装过程如果真的卡在一个细节而又没人帮忙真的能卡死你……

下面的步骤基本就是按照上面我说的那篇文章来的,如果没有什么需要提示的我回直接说按照文章的步骤来就可以。让我们开始:

1   首先就是你需要有一个linux系统,当然什么的都可以,我最开始用的ubuntu kylin14.04,当然那时候饥不择食,随便一个linux 就凑合着用了,后来用的是scitific linux7.0,其实俩除了命令行略有不同对于cosmomc没啥不同的影响。因此这部略过,怎么装linux系统这就自己解决吧……

PS:进入安装cosmomc前我建议各位先配置g++,matlib,numpy,pgplot,python2.7+这些程序包,因为后面可能会用到。把它们安装上或者升级到最新的,会省掉很多麻烦事……

2   进入正题,安装Inter fortran compiler

14以上版本,如上面文章中所说的l fcompxe 2013 sp1.3.174就挺好使,而且文章中给了激活码,可以用到本年的七月份。如果不想用它,可以用Intel® Parallel Studio XE 2015
它里面也有fortran编辑器,同时网上也可以找到它的lic文件,激活后所有安装和文件配置都和文章中的2013 SP1一样,没有区别。所以安装fortran编辑器这部就按照上面文章中所说来做就好,没有啥要多说的。切记这部一定是要装ifort这款编辑器,什么gfortran啥的最新的这两版cosmomc已经不支持了,所以现在cosmomc也非常挑软硬件了……

3    安装openmpi  

这个是必须要做的一个步骤,按照上面文章中所给的步骤按部就班的下载安装就好,这个哪个版本无所谓,我用的是1.8.4版本的,也就是最新的。这里有一点需要注意下:在ubuntu系统下,安装过程中可能会报错,是因为你的g++没有升级到最新,或者系统中没有g++,因此用户需要安装或者升级一下。之后就是按部就班的安装,之后等待,安装完成按照文章中提及的测试方法来检测是否安装成功。

4    安装CFITSIO

这步相对来说简单,但是它却极其重要,因此务必不能出错。按照文章中所给的步骤一步步安装就好,基本不会出现什么差错,至少我在ubuntu和scitific linux下安装都没有出现异样,相对来说这一步是最顺利的,也没什么好提示的,所以就此打住。

5    安装   HEALPix

这一步是最折磨人的,如果对于linux或者编译器不熟悉的人这一步足以折磨你一天甚至好几天,或者直接会让你卡死在这。文章中给出的步骤没错,但是太多细节没有说清楚,因此我觉得很有必要点明其中几个细节步骤。

按照文章中所说的到./configure这部都没有问题,问题就是之后出现options,首先是让你选择fortran编译器,你需要按照文章中所说填写ifort,之后文章就再也没有细说了,初次接触cosmomc的人肯定多半已经不知所措了,所以到这里不清楚怎么玩的筒子们看这里:

下面会出现让你填写c或者C++编译器,这部你要略过不填,就是直接回车就好,之后出现的步骤比如让你填写suffix,选择编译器后缀神马的这些都不要填,就是一路回车,直到它提示你填写cfitsio安装路径时,(这里我应该事先截个图就好了,这样大家可以看的更明白一些……我记得有些模糊了,是让你填写安装路径还是lib所在的路径,但是这一步肯定是有cfitsio的字样没错了,所以这一步就直接填写你cfitsio所在的路径就100%没错~)这一步过后就没有什么大问题了,下面该回车回车,该填N或者No的就找我说的填就对了;所说的填N或者No的地方是让你选择是否按照安装PGPlot的模式来继续安装,这里一定选N,否则下面安装完make过不去,会报错。同理这一步完成后继续安装出现的提示只要是有N或者No的就选,有默认选项的就按照提示的默认选择就没有问题。只有这样安装完成make的时候才不会有错,否则必然出错。make完了再make test一下,出现文章中的相同字样就说明这一步安全上垒,前半部分最要命的一关就过去了……

6   安装   WMAP LIKELIHOOD DATA

这一步问题也不大,所以只要按照文章中给出的步骤按部就班的安装就好,有一点注意下就是虽然64位系统现在大行其道,但是免不了还有拿32位来安装的,32位的linux在这步怎么设置我还真不知道,我用老机器曾经试过,但是没有过一步安装,所以我建议大家这一步还是在64位系统下进行,免得出麻烦。按照文章的步骤装完,更改完makefile以后make all一下这步就算完成

7    安装  Planck data

这一步也大体上是按照上面文章中的步骤来,但是有一点需要注意下,文章中提示你更改makefile,其中有一步是更改MKLROOT和LAPACKLIBPATHMKL,我个人建议这两项还是keep empty比较好,文章中也说了空着还是填写都没问题,到了后面的一步都有相应措施。但是在scitific linux7.0下安装是,这两步我填写后再执行下面的命令就会一直报错,因此我索性将这两项空着,直接进行文章中下面的操作,这里还需要注意./waf configure和./waf install 这两步在输入命令后反应会比较慢,因此需要耐心等待,不要乱动。其中可能会出现提示例如说你的cfitsio没有安装,然后它会再下载安装等等,这些你都别管,按照它的提示让它自动安装去就好,最终会顺利完成这部安装,这也算是cosmomc安装后期中的一个坎儿,过去了就说明前戏已经全部完成,高潮即将来临……

8   安装cosmomc

前戏完成后,就要进入最后的正题,安装cosmomc,按照上面文章中的步骤按部就班的更改makefile,然后编译就可以。这里有一点需要注意下:Feb 2015版本的cosmomc在makefile中少了

ifeq ($(COSMOHOST), darwin)

WMAP = /home/limh/workspace/wmap likelihood v5

cfitsio = /home/limh/Programs/cfitsioendif

这项,因此如果用最新版的cosmomc需要注意下,没有它也可以过,没有大影响。但是最新版本之前的版本都有这一项,所以用旧版的还是按照文章中那么改就好。

这个过程也不是像想得那样一帆风顺,可能会遇到以下一些小问题,在按照上面文章的步骤安装完make后,可能会出现报错,提示你某些变量的数据类型有问题,这个问题曾经在scitific linux下安装的过程中出现过,那个时候我编译器用的是intel parallel studio2015,cosmomc用的是Jun 2014版,可能是老版cosmomc对于2015.0.090版本的ifort支持不好,如果出现问题大家可以将问题copy下来到cosmocoffee.info/viewforum.php?f=11提问或者搜索,一般这一步出现的问题大多数网友都遇到过,所以很可能会有解决方案。之后我又在ifort 2013 SP1和Feb 2015 cosmomc的情况下重新编译cosmomc时碰到过数据类型的错误,后来就没有解决,之后一怒之下降级回了cosmomc Jun 2014,其实至少在2015年三月末以前新版和次新版的cosmomc没有多大的不同,毕竟最重要的likelihood code还没有公布,因此如果不是作BICEP2 数据需求方面的模拟两个版本没啥区别,当然三月末以后还是最好用最新版的 COSMOMC。

如果你RP爆棚,一路顺利毫无差错的过完这些步骤,那么恭喜你这该死的cosmomc安装就彻底结束了。你只需要再试一次rm cosmomc && make clean && make来确定毫无差错就可以彻彻底底的放心用cosmomc干正事了。

PS:还有一个重要的地方必须要说明一下,就是如果你忽略了likelihood code的话你使用cosmomc跑模拟的时候第一次会提示error,那是因为没有把相应的data导入。截止到博文完成为止,2015年的likelihood还没有相应的数据,所以还是在沿用2013年的,大家可以去Planck官网下载,然后解压到plc-1.0文件夹下即可。

当然如果不是很着急我会尽快在方便的时候把这个安装过程中所用到的所有程序包和数据打包上传到网盘,大家可以去网盘下载,届时我会更新链接,方便大家。

以上就是自己独自一人在摸爬滚打了一个学期多次反复安装cosmomc后总结出来的安装步骤和细节注意事项,如果大家还有不太懂的地方或者出现了新的问题或者在cosmomc使用过程中出现了什么新情况都(虽然我使用的领域也很小就是了)可以随时联系我,回复此博文或者敲Q(695466527)都可以,大家共同探讨,让更多宝贵的时间花在有价值的地方而不是这些安装过程上~




https://blog.sciencenet.cn/blog-117654-867425.html


收藏 IP: 221.200.133.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (5 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-4 12:25

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部