使用Elasticluster在Google Compute Engine上指定并行环境

时间:2016-02-01 21:34:33

标签: multithreading google-app-engine parallel-processing google-cloud-platform google-genomics

我最近使用Elasticluster(http://googlegenomics.readthedocs.org/en/latest/use_cases/setup_gridengine_cluster_on_compute_engine/index.html)在Compute Engine上创建了一个Grid Engine集群。

我想知道在运行Grid Engine的Compute Engine虚拟机群集上运行共享内存多线程批处理作业的适当命令是什么。

换句话说,Grid Engine并行环境的名称(即pe_name)是什么。

让我们说我想在1个节点上运行一个请求4个cpus的作业,那将是正确的qsub命令。

到目前为止,我尝试了以下命令:

qsub -cwd -l h_vmem = 800G -pe smp 6 run.sh 无法运行作业:拒绝作业:请求的并行环境" smp"不存在。

qsub -cwd -l h_vmem = 800G -pe omp 6 run.sh 无法运行工作:拒绝工作:请求的并行环境" omp"不存在。

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我不相信Elasticluster的Ansible剧本包含一个并行环境。您可以在此处查看主服务器上运行的主要配置:

https://github.com/gc3-uzh-ch/elasticluster/blob/master/elasticluster/providers/ansible-playbooks/roles/gridengine/tasks/master.yml

我相信你可以简单地连接到主人并发出"添加平行环境"命令:

$ qconf -ap smp

并编写如下配置文件:

ps

然后修改all.q的队列配置:

$ qconf -mq all.q

pe_name         smp
slots           9999
user_lists      NONE
xuser_lists     NONE
start_proc_args /bin/true
stop_proc_args  /bin/true
allocation_rule $fill_up
control_slaves  FALSE
job_is_first_task  FALSE
urgency_slots   min
accounting_summary FALSE

我还建议在这里提交Elasticluster的问题:

https://github.com/gc3-uzh-ch/elasticluster/issues

我希望有人已经在Elasticluster的一个分支中完成了这个,并且可以向主分叉提供拉取请求。

希望有所帮助。

-Matt