作者为:левский Уильямс
一、准备工作
在配置安装的时候,没有load任何的Module。
如果在此之前有导入过任何的模块(用module list
查看已导入的模块),请全部卸载。
保证gcc是4.8.5版本的。
需要下载如下的工具:
- fftw-3.3.9 (点击下载)
- pgplot5.2 (点击下载,有点慢)
- tempo (点击下载)
- cfitsio-4.0.0 (点击下载) (注意其大小只有4M左右,如果不是4M左右肯定是下错了)
- presto (点击下载)
数据集下载如下:
GBT_Lband_PSR.fil
注:如果想自己下载,可以参考下面的链接
fftw-3.3.9
pgplot:
tempo:
cfitsio
presto
网络方面的问题请自己想办法(ง •_•)ง
需要会的基本命令与操作
二、正式安装
再强调一遍,在配置安装的时候,没有load任何的Module。
如果在此之前有导入过任何的模块(用module list
查看已导入的模块),请全部卸载。
在正式安装之前,我建议把源码目录和安装目录分开,像下面这样的一个文件树是比较推荐的。
之后所有的指令都是基于下面这个文件结构来的。
也就是说,需要在用户根目录下(~
)新建3个文件夹:Data
、Downloads
、Program_Files
相。
新建完之后,需要在安装目录里(Program_Files
)新建5个文件夹。
在上面这个文件目录下,需要添加的环境变量如下:(如果看不懂没关系,那就先跳到下面正式安装部分)
注: 直接加在~/.bashrc
里有风险,可以参考: bashrc改不改?
1.fftw安装
fftw.第1步:安装
进入fftw的源码根目录,然后依次执行如下命令:(如果不知道源码根目录在哪里,看看上面。)
通常来说,第1个安装包的安装都是顺利的。
有几点需要说明:
- 此处用
make -j4
可能会报错。如果执行make报错,就执行一下make clean
,清理掉编译错误的文件之后再执行make
fftw.第2步:添加环境变量
加入环境变量
直接在终端里执行下面的指令,仅当前shell有效,退出或者重连之后就失效。
而我们需要环境变量一直存在,因此把下面的指令追加到~/.bashrc
文件末尾 note
然后再重新载入.bashrc
(重新载入需要在终端里执行source ~/.bashrc
)
具体来说,就是:
2.pgplot的安装
pgplot.第1步:移动1个文件到安装目录
现在请切换到pgplot的源码根目录(~/Downloads/pgplot
)
执行下面的命令以备份相关文件
pgplot.第2步:修改3个文件
用vim打开安装目录下~/Program_Files/pgplot
下面的drivers.list
文件,也就是执行vim drivers.list
,然后把下面这几行前面的!
去掉
然后保存并退出——:wq
用vim打开~/Downloads/pgplot/src/grpckg1.inc
文件,然后对第29行作如下修改
然后保存并退出——:wq
用vim打开~/Downloads/pgplot/src/pgplot.inc
文件,然后对第7行作如下修改
然后保存并退出——:wq
pgplot.第3步:安装前的配置
现在请切换到pgplot的安装目录(~/Program_Files/pgplot
)
在安装目录运行位于源码目录里的makemake
,并执行2遍。
注:
上面的命令是可以正常执行的。不要看见makemake
前面有一堆路径就觉得这个写的有问题。
只需要把对应文件的路径换成你自己的路径。
如果报错说Permission denied
,说明你的makemake
没有可执行权限。执行下面的指令以加上:
如遇其它文件没有权限,类似处理。
执行完毕之后安装目录下会出现如下的文件:(如果你安装文件夹和我开头写的是一样的结构的话)
然后更改makefile
文件的第25和第26行
pgplot.第4步,安装
如果make
报错,make clean
之后再运行一次试试。
注: 如果需要编译pgplot.html
,需要更改~/Downloads/pgplot/makehtml
文件。只需要把第1行替换为这个:
然后:
pgplot.第5步,添加环境变量
注:
pgplot有一些demo可以运行。只需要切换到安装目录,运行./pgdemo1
,弹出如下信息可说明pgplot正常安装
3.Tempo安装
tempo.第1步:安装前的准备
现在请切换到Tempo的源码根目录(~/Downloads/tempo
)
可以尝试运行源码根目录下的prepare
,像这样:
如果可以正常工作,就跳到下一步,否则就别执行那个prepare了,改成执行如下的操作:
另外需要把./src/get_version_id.sh
加上执行权限,并把它的file format改成Unix。(用下面的dos2unix
,服务器上自带)
tempo.第2步:正式安装
注:
如果之间那步没有把configure.ac
转换成unix格式,configure之后会报错,此时重新运行configure是没有用的,需要按如下方法运行
之后再继续make
和make install
即可
tempo.第3步:添加环境
4.cfitsio安装
cfitsio.第1步:安装
现在请切换到cfitsio的源码根目录(~/Downloads/cfitsio
)
cfitsio.第2步:添加环境变量
5.安装PRESTO
presto.第1步:添加安装用的环境变量
presto.第2步:修改1个文件
现在请切换到presto下的src目录(~/Downloads/presto/src
)
打开./realfft.c
,编辑第70行,
presto.第3步:安装
保持在presto下的src目录(~/Downloads/presto/src
)
presto.第4步:添加环境变量
到目前为止,你应该正确安装了presto。下面我们进行一些验证。输入readfile --help
,应该有如下的输出
如果有这些输出,就说明是成功安装了
三、跑数据集
跑数据集的第1步:预处理
在数据目录(~/Data/
)下执行如下指令
跑数据集的第2步:写脚本
编写如下的脚本,注意保存的后缀需要是*.slurm
(可以取名为run.slurm
):
然后,我们可以先在本地试试脚本能不能正常运行。在终端里输入如下:
如果run.err
大小为0b
,0K
,说明没有问题,那么就放心提交作业吧!
注:命令含义解释
1>run.out
表示把脚本的执行的正常输出写到run.out文件,尖括号左右不要有空格
2>run.err
表示把脚本的执行的错误输出写到run.err文件,尖括号左右不要有空格
跑数据集的第3步:提交
如果在上面你脚本里Lband_topo_DM0.00.dat
用的是绝对路径,那么在这一步你的slurm脚本就可以随便放。
在你放脚本的地方执行如下指令:
如果正常提交,会有如下的结果:
至于运行的结果,则需要在run.out
和run.err
里面看了。(对应你slurm脚本的#SBATCH -o run.out
和#SBATCH -e run.err
)
至于其它的问题,请自己解决吧,因为我也没有解决(笑
参考文献
CentOS 7 安装 pgplot
PRESTO指导手册中文版
脉冲星PRESTO部署文档