1
1

plm/slurm: add support for cray native slurm

Cray has added plugins to slurm to support
the Cray programming env (alpslli, cray pmi, etc).
Some of the workarounds needed with plm/alps
to avoid issues with Cray PMI getting mixed up
with orte launch system are also required in
a cray native slurm environment.

Signed-off-by: Howard Pritchard <howardp@lanl.gov>
Этот коммит содержится в:
Howard Pritchard 2015-12-08 10:56:25 -06:00
родитель 9548b8a9e8
Коммит cb7c26ce96
2 изменённых файлов: 22 добавлений и 2 удалений

Просмотреть файл

@ -11,7 +11,7 @@
# Copyright (c) 2004-2005 The Regents of the University of California.
# All rights reserved.
# Copyright (c) 2009-2010 Cisco Systems, Inc. All rights reserved.
# Copyright (c) 2011-2013 Los Alamos National Security, LLC.
# Copyright (c) 2011-2015 Los Alamos National Security, LLC.
# All rights reserved.
# $COPYRIGHT$
#
@ -37,4 +37,11 @@ AC_DEFUN([MCA_orte_plm_slurm_CONFIG],[
AC_SUBST([plm_slurm_CPPFLAGS])
AC_SUBST([plm_slurm_LDFLAGS])
AC_SUBST([plm_slurm_LIBS])
# check to see if this is a Cray nativized slurm env.
ORTE_CHECK_ALPS([plm_slurm_cray],
[AC_DEFINE_UNQUOTED([SLURM_CRAY_ENV],[1],
[defined to 1 if slurm cray env, 0 otherwise])])
])dnl

Просмотреть файл

@ -10,7 +10,7 @@
* Copyright (c) 2004-2005 The Regents of the University of California.
* All rights reserved.
* Copyright (c) 2006-2014 Cisco Systems, Inc. All rights reserved.
* Copyright (c) 2007-2012 Los Alamos National Security, LLC. All rights
* Copyright (c) 2007-2015 Los Alamos National Security, LLC. All rights
* reserved.
* Copyright (c) 2014 Intel Corporation. All rights reserved.
* $COPYRIGHT$
@ -27,6 +27,7 @@
*/
#include "orte_config.h"
#include "orte/runtime/orte_globals.h"
#include <string.h>
#include <sys/types.h>
@ -275,6 +276,18 @@ static void launch_daemons(int fd, short args, void *cbdata)
*/
opal_argv_append(&argc, &argv, "--cpu_bind=none");
#if SLURM_CRAY_ENV
/*
* If in a SLURM/Cray env. make sure that Cray PMI is not pulled in,
* neither as a constructor run when orteds start, nor selected
* when pmix components are registered
*/
opal_setenv("PMI_NO_PREINITIALIZE", "1", false, &orte_launch_environ);
opal_setenv("PMI_NO_FORK", "1", false, &orte_launch_environ);
opal_setenv("OMPI_NO_USE_CRAY_PMI", "1", false, &orte_launch_environ);
#endif
/* Append user defined arguments to srun */
if ( NULL != mca_plm_slurm_component.custom_args ) {
custom_strings = opal_argv_split(mca_plm_slurm_component.custom_args, ' ');