From 0823fb9d17df1f2a084a42c4aadaadac0181f6e4 Mon Sep 17 00:00:00 2001 From: Matt Bhagat-Conway Date: Tue, 16 Nov 2021 18:44:07 -0500 Subject: [PATCH] don't place cookie in command --- src/slurmmanager.jl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/slurmmanager.jl b/src/slurmmanager.jl index f8dd719..a01ad4f 100644 --- a/src/slurmmanager.jl +++ b/src/slurmmanager.jl @@ -49,8 +49,12 @@ function launch(manager::SlurmManager, params::Dict, instances_arr::Array, c::Co exename = params[:exename] exeflags = params[:exeflags] - srun_cmd = `srun -D $exehome $exename $exeflags --worker=$(cluster_cookie())` - manager.srun_proc = open(srun_cmd) + # Pass cookie as stdin to srun; srun forwards stdin to process + # This way the cookie won't be visible in ps, top, etc on the compute node + srun_cmd = `srun -D $exehome $exename $exeflags --worker` + manager.srun_proc = open(srun_cmd, write=true, read=true) + write(manager.srun_proc, cluster_cookie()) + write(manager.srun_proc, "\n") t = @async for i in 1:manager.ntasks manager.verbose && println("connecting to worker $i out of $(manager.ntasks)")