From d2b28739d389d7b08a31ea0564579d447c632234 Mon Sep 17 00:00:00 2001 From: Jeff Ohrstrom <johrstrom@hotmail.com> Date: Mon, 16 Nov 2020 15:29:24 -0500 Subject: [PATCH] add owens-slurm cluster to begin migratio to slurm --- form.yml | 10 ++++++---- submit.yml.erb | 29 ++++++++++++++++++++++++----- 2 files changed, 30 insertions(+), 9 deletions(-) diff --git a/form.yml b/form.yml index b40739a..9f5da48 100644 --- a/form.yml +++ b/form.yml @@ -1,5 +1,7 @@ --- -cluster: "owens" +cluster: +- "owens" +- "owens-slurm" form: - version - bc_account @@ -41,9 +43,9 @@ attributes: running in the background. This utilizes the GPU for hardware accelerated 3D visualization. There are 160 of these nodes on Owens. options: - - [ "any", "" ] - - [ "hugemem", ":hugemem" ] - - [ "vis", ":vis:gpus=1" ] + - "any" + - "hugemem" + - "vis" version: widget: select label: "MATLAB version" diff --git a/submit.yml.erb b/submit.yml.erb index 1ced835..4adeaa3 100644 --- a/submit.yml.erb +++ b/submit.yml.erb @@ -1,13 +1,32 @@ <%- -ppn = num_cores.blank? ? 28 : num_cores.to_i -if node_type == ':hugemem' - ppn = 48 -end + ppn = num_cores.blank? ? 28 : num_cores.to_i + nodes = bc_num_slots.blank? ? 1 : bc_num_slots.to_i + torque_cluster = OodAppkit.clusters[cluster].job_config[:adapter] == 'torque' + + case node_type + when "hugemem" + ppn = 48 + partition = bc_num_slots.to_i > 1 ? "hugemem-parallel" : "hugemem" + slurm_args = [ "--nodes", "#{nodes}", "--ntasks-per-node", "#{ppn}", "--partition", partition ] + torque_args = "#{nodes}:ppn=#{ppn}:#{node_type}" + when "vis" + slurm_args = ["--nodes", "#{nodes}", "--ntasks-per-node", "#{ppn}", "--gpus-per-node", "1", "--gres", "vis" ] + torque_args = "#{nodes}:ppn=#{ppn}:#{node_type}:gpus=1" + else + slurm_args = ["--nodes", "#{nodes}", "--ntasks-per-node", "#{ppn}" ] + torque_args = "#{nodes}:ppn=#{ppn}" + end %> --- batch_connect: template: vnc script: native: + <%- if torque_cluster %> resources: - nodes: "<%= bc_num_slots.blank? ? "1" : bc_num_slots.to_i %>:ppn=<%= ppn %><%= node_type %>" + nodes: "<%= torque_args %>" + <%- else %> + <%- slurm_args.each do |arg| %> + - "<%= arg %>" + <%- end %> + <%- end %> -- GitLab