增长了一个新知识分享一下:
之前在Compute Canada submit job的时候,喜欢用sbatch job.sh
昨晚跟老师meeting时候,学到了一个新的方式interactive jobs
交互式 "控制台工具",如R和iPython
重要的软件开发、调试或编译
可以用salloc在一个计算节点上启动一个交互式会话
在下面的例子中,请求两个任务,对应于两个CPU核心,时间为一小时。
salloc --time=1:0:0 --ntasks=2 --account=def-someuser
time= 输入自己需要的时长
ntasks= 任务数
account= 账户名
然后系统会为我们申请资源
申请到了以后我们就可以使用R 或者module load r 进R的界面了(python类似)
退出当前交互界面只需要命令:exit
补充一下并行计算在sbatch时候的命令
step1: R Script文件中添加
args <- commandArgs(trailingOnly = TRUE) # 此时 输入的第一个参数就是程序的第一个参数
ss <- as.numeric(args[1])# 参数名ss
step2: 在终端登录computecanada账号
for ii in {1..100}; do sbatch job.sh $ii; done
这样就把1:100传递给R中的ss
注意save的时候给一个ss参数(不然会覆盖先运行出来的结果)
写在后面:
统计专业 科研人的成长之路
记录自己科研过程中遇到的各种r语言bug
欢迎交流~
email:18920927551@163.com