Skip to content

Commit

Permalink
Ported the version at branch slurm-scsf-sim-v14 to SLURM 17.11
Browse files Browse the repository at this point in the history
  • Loading branch information
Ana Jokanovic committed Jan 22, 2018
1 parent a25dedc commit 04c20d5
Show file tree
Hide file tree
Showing 3,574 changed files with 896,945 additions and 249,842 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
Binary file added .DS_Store
Binary file not shown.
48 changes: 2 additions & 46 deletions AUTHORS
Original file line number Diff line number Diff line change
@@ -1,46 +1,2 @@
Don Albert <Don.Albert(at)bull.com>
Ernest Artiaga <ernest.artiaga(at)bsc.es>
Danny Auble <auble1(at)llnl.gov>
Susanne Balle <susanne.balle(at)hp.com>
Anton Blanchard <anton(at)samba.org>
Hongjia Cao <hjcao(at)nudt.edu.cn>
Chuck Clouston <Chuck.Clouston(at)bull.com>
Daniel Christians <Daniel.Christians(at)hp.com>
Gilles Civario <gilles.civario(at)bull.net>
Chris Dunlap <cdunlap(at)llnl.gov>
Joey Ekstrom <ekstrom1(at)llnl.gov>
Kent Engstrom <kent(at>snc.liu.se>
Jim Garlick <garlick(at)llnl.gov>
Didier Gazen <gazdi(at)aero.obs-mip.fr>
Mark Grondona <mgrondona(at)llnl.gov>
Takao Hatazaki <takao.hatazaki(at)hp.com>
Matthieu Hautreux <matthieu.hautreux(at)cea.fr>
David Hoppner <0xffea(at)googlemail.com>
Christopher Holmes <cholmes(at)hp.com>
Nathan Huff <nhuff(at)geekshanty.com>
David Jackson <jacksond(at)clusterresources.com>
Greg Johnson <gjohnson(at)lanl.gov>
Morris Jette <jette1(at)llnl.gov>
Jason King <king49(at)llnl.gov>
Nancy Kritkausky <Nancy.Kritkausky(at)bull.com>
Eric Lin <Eric.Lin(at)bull.com>
Bernard Li <bli(at)bcgsc.ca>
Puenlap Lee <Puen-Lap.Lee(at)bull.com>
Steven McDougall <smcdougall(at)sicortex.com>
Donna Mecozzi <mecozzi1(at)llnl.gov>
Chris Morrone <morrone2(at)llnl.gov>
Bryan O'Sullivan <bos(at)pathscale.com>
Gennaro Oliva <oliva.g(at)na.icar.cnr.it>
Daniel Palermo <dan.palermo(at)hp.com>
Dan Phung <phung4(at)llnl.gov>
Ashley Pitman <ashley(at)quadrics.com>
Vijay Ramasubramanian <vram0@umd.edu>
Andy Riebs <Andy.Riebs(at)hp.com>
Asier Roa <asier.roa(at)bsc.es>
Miguel Ros <miguel.ros(at)bsc.es>
Federico Sacerdoti <Federico.Sacerdoti(at)deshaw.com>
Jeff Squyres <jsquyres(at)lam-mpi.org>
Keven Tew <tew1(at)llnl.gov>
Prashanth Tamraparni <prashanth.tamraparni(at)hp.com>
Jay Windley <jwindley(at)lnxi.com>
Ann-Marie Wunderlin<Anne-Marie.Wunderlin(at)Bull.com>
The Slurm authors are documented in doc/html/team.shtml,
which is accessible at <https://slurm.schedmd.com/team.html>.
36 changes: 21 additions & 15 deletions BUILD.NOTES
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
This information is meant primarily for the Slurm developers.
System administrators should read the instructions at
http://www.llnl.gov/linux/slurm/quickstart_admin.html
https://slurm.schedmd.com/quickstart_admin.html
(also found in the file doc/html/quickstart_admin.shtml).
The "INSTALL" file contains generic Linux build instructions.

Expand All @@ -21,9 +21,9 @@ and libtool installed):
./autogen.sh
then check-in the new Makefile.am and Makefile.in files

Here is a step-by-step HOWTO for creating a new release of SLURM on a
Here is a step-by-step HOWTO for creating a new release of Slurm on a
Linux cluster (See BlueGene and AIX specific notes below for some differences).
0. Get current copies of SLURM and buildfarm
0. Get current copies of Slurm and buildfarm
> git clone https://<user_name>@github.com/chaos/slurm.git
> svn co https://eris.llnl.gov/svn/chaos/private/buildfarm/trunk buildfarm
place the buildfarm directory in your search path
Expand All @@ -49,7 +49,6 @@ Linux cluster (See BlueGene and AIX specific notes below for some differences).
%_slurm_sysconfdir /etc/slurm
%_with_debug 1
%_with_sgijob 1
%_with_elan 1 (ONLY ON SYSTEMS WITH ELAN SWITCH)
NOTE: build will make a tar-ball based upon ALL of the files in your current
local directory. If that includes scratch files, everyone will get those
files in the tar-ball. For that reason, it is a good idea to clone a clean
Expand Down Expand Up @@ -86,7 +85,7 @@ BlueGene build notes:
/usr/src/packages/RPMS/ppc64

To build and run on AIX:
0. Get current copies of SLURM and buildfarm
0. Get current copies of Slurm and buildfarm
> git clone https://<user_name>@github.com/chaos/slurm.git
> svn co https://eris.llnl.gov/svn/chaos/private/buildfarm/trunk buildfarm
put the buildfarm directory in your search path
Expand Down Expand Up @@ -116,7 +115,7 @@ To build and run on AIX:
3. To build RPMs (NOTE: GNU tools early in PATH as described above in #0):
Create a .rpmmacros file specifying system specific files:
#
# RPM Macros for use with SLURM on AIX
# RPM Macros for use with Slurm on AIX
# The system-wide macros for RPM are in /usr/lib/rpm/macros
# and this overrides a few of them
#
Expand All @@ -142,7 +141,7 @@ To build and run on AIX:
--nosnapshot will name the tar-ball and RPMs based upon the META file
--snapshot will name the tar-ball and RPMs based upon the META file plus a
timestamp. Do this to make a tar-ball for a non-tagged release.
4. Test POE after telling POE where to find SLURM's LoadLeveler wrapper.
4. Test POE after telling POE where to find Slurm's LoadLeveler wrapper.
> export MP_RMLIB=./slurm_ll_api.so
> export CHECKPOINT=yes
5. > poe hostname -rmpool debug
Expand Down Expand Up @@ -182,8 +181,8 @@ BlueGene bglblock boot problem diagnosis
- Execute /admin/bglscripts/fatalras
This will produce a list of failures including Rack and Midplane number
<date> R<rack> M<midplane> <failure details>
- Translate the Rack and Midplane to SLURM node id: smap -R r<rack><midplane>
- Drain only the bad SLURM node, return others to service using scontrol
- Translate the Rack and Midplane to Slurm node id: smap -R r<rack><midplane>
- Drain only the bad Slurm node, return others to service using scontrol

Configuration file update procedures:
- cd /usr/bgl/dist/slurm (on bgli)
Expand All @@ -199,7 +198,7 @@ Some RPM commands:
rpm -e slurm-1.1.8-1 (erase an rpm)
rpm --upgrade slurm-1.1.9-1.rpm (replace existing rpm with new version)
rpm -i --ignoresize slurm-1.1.9-1.rpm (install a new rpm)
For main SLURM plugin installation on BGL service node:
For main Slurm plugin installation on BGL service node:
rpm -i --force --nodeps --ignoresize slurm-1.1.9-1.rpm
rpm -U --force --nodeps --ignoresize slurm-1.1.9-1.rpm (upgrade option)

Expand Down Expand Up @@ -233,6 +232,8 @@ For memory leaks (for AIX use zerofault, zf; for linux use valgrind)
./slurmctld -Dc >valg.ctld.out 2>&1
- valgrind --tool=memcheck --leak-check=yes --num-callers=8 --leak-resolution=med \
./slurmd -Dc >valg.slurmd.out 2>&1 (Probably only one one node of cluster)
- valgrind --tool=memcheck --leak-check=yes --num-callers=8 --leak-resolution=med \
./slurmdbd -D >valg.dbd.out 2>&1
- Run the regression test. In the globals.local file include:
"set enable_memory_leak_debug 1"
- Shutdown the daemons using "scontrol shutdown"
Expand All @@ -243,24 +244,29 @@ For memory leaks (for AIX use zerofault, zf; for linux use valgrind)
valgrind backtrace after shutdown. Rebuilding the daemons without the
configure option of "--enable-memory-leak-debug" typically prevents the
plugin from being unloaded so the symbols will be properly reported. However
many memory leaks will be reported due to not unloading plugins.
many memory leaks will be reported due to not unloading plugins. You will
need to match the call sequence from the first log (with
"--enable-memory-leak-debug") to the second log (without
"--enable-memory-leak-debug" and ignore memory leaks reported that are not
real leaks in the second log) to identify the full code path through plugins.

Job profiling:
- "export CFLAGS=-pg", then run "configure" and "make install" as usual.
- Run the slurm daemons through a stress test and exit normally
- Run "gprof [executable-file] >outfile"

Before new major release:
- Test on ia64, i386, x86_64, BGL, AIX, OSX, XCPU
- Test on ia64, i386, x86_64, BGQ, NRT/POE, Cray
- Test on Elan and IB switches
- Test fail-over of slurmctld
- Test pam_slurm and pam_slurm_adopt.
- Test for memory leaks in slurmctld, slurmd and slurmdbd with various plugins
- Change API version number
- Review and release web pages
- Review and release code
- Run "make check"
- Run "make check" (requires "dejagnu" package)
- Test that the prolog and epilog run
- Run the test suite with SlurmUser NOT being self
- Test for errors reported by CLANG tool:
NOTE: Run "configure" with "--enable-developer" option so assert functions
take effect.
scan-build -k -v make >m.sb.out 2>&1
# and look for output in /tmp/scan-build-<DATE>
65 changes: 65 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
NOTES FOR GITHUB DEVELOPERS
---------------------------

The official issue tracker for Slurm is at
https://bugs.schedmd.com/

We welcome code contributions and patches, but **we do not accept Pull Requests
through Github at this time.** Please submit patches as attachments to new
bugs under "Contributions" category.

CODING GUIDELINES
-----------------
Slurm loosely follows the Linux Kernel style guidelines
(https://www.kernel.org/doc/html/latest/process/coding-style.html).
If in doubt, please follow their example.

A brief overview, with some notable exceptions:
- Tabs not spaces, tabs are 8-spaces wide.
- Lines should be less than 80-characters wide.
- Use K&R style for braces.
- Slurm does use typedef's for certain types, ignore Chapter 5 of the kernel
guidelines.
- Comments can be in either C-style `/* comment */` or C++ style `// comment`
formats. Follow the rest of Chapter 8's recommendations for multi-line
comments though.

BUILD SYSTEM CHANGES
--------------------
Please submit changes to `Makefile.am`, but not to `Makefile.in`. We will
regenerate those files to minimize the differences in the commit. We want to
avoid noise generated by differences in libtool installations.

Changes to `configure.ac` or `auxdir/*` will take additional time to review -
Slurm is built on a wide variety of distributions and architectures, and even
minor differences can cause unintended consequences.

PATCH SUBMISSION
----------------
An entry in `NEWS` should describe the change or new functionality.

Please break patches up into logically separate chunks, while ensuring that
each patch can still be compiled. (Anticipate that a developer using `git
bisect` may pick any intermediate commit at some point.)

If you decided to reformat a file, please submit non-functional changes
(spelling corrections, formatting discrepancies) in a separate patch. This
makes reviewing substantially easier, and allows us to focus our attention on
the functional differences.

If you make an automated change (changing a function name, fixing a pervasive
spelling mistake), please send the command/regex used to generate the changes
along with the patch, or note it in the commit message.

While not required, we encourage use of `git format-patch` to geneate the
patch. This ensures the relevant author line and commit message stay attached.
Plain `diff`'d output is also okay. In either case, please attach them to the
bug for us to review. Spelling corrections or documentation improvements can be
suggested without attaching the patch as long as you describe their location.

LEGAL
-----

We ask that a contributor licensing agreement be signed for all substantial
contributions. Please see https://slurm.schedmd.com/contributor.html for
details.
Empty file removed ChangeLog
Empty file.
6 changes: 3 additions & 3 deletions DISCLAIMER
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@ with various organizations.

Copyright (C) 2012-2013 Los Alamos National Security, LLC.
Copyright (C) 2011 Trinity Centre for High Performance Computing
Copyright (C) 2010-2013 SchedMD LLC
Copyright (C) 2010-2015 SchedMD LLC
Copyright (C) 2009-2013 CEA/DAM/DIF
Copyright (C) 2009-2011 Centro Svizzero di Calcolo Scientifico (CSCS)
Copyright (C) 2008-2011 Lawrence Livermore National Security
Copyright (C) 2008 Vijay Ramasubramanian
Copyright (C) 2007-2008 Red Hat, Inc.
Copyright (C) 2007-2013 National University of Defense Technology, China
Copyright (C) 2007-2013 Bull
Copyright (C) 2007-2015 Bull
Copyright (C) 2005-2008 Hewlett-Packard Development Company, L.P.
Copyright (C) 2004-2009, Marcus Holland-Moritz
Copyright (C) 2002-2007 The Regents of the University of California
Expand Down Expand Up @@ -111,7 +111,7 @@ Anne-Marie Wunderlin (Bull)
CODE-OCEC-09-009. All rights reserved.

This file is part of SLURM, a resource management program.
For details, see <http://slurm.schedmd.com/>.
For details, see <https://slurm.schedmd.com/>.
Please also read the supplied file: DISCLAIMER.

SLURM is free software; you can redistribute it and/or modify it under
Expand Down
4 changes: 2 additions & 2 deletions INSTALL
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ Basic Installation
==================

These are generic Linux installation instructions. Build instructions
specific to SLURM are available at
http://www.llnl.gov/linux/slurm/quickstart_admin.html
specific to Slurm are available at
https://slurm.schedmd.com/quickstart_admin.html
(also found in the file doc/html/quickstart_admin.shtml).

The `configure' shell script attempts to guess correct values for
Expand Down
4 changes: 2 additions & 2 deletions LICENSE.OpenSSL
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston,
* MA 02111-1307, USA.
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301 USA.
*
* In addition, as a special exception, the copyright holders give
* permission to link the code of portions of this program with the
Expand Down
26 changes: 14 additions & 12 deletions META
Original file line number Diff line number Diff line change
@@ -1,31 +1,33 @@
##
# $Id$
##
# Metadata for RPM/TAR makefile targets
##
# See src/api/Makefile.am for guidance on setting API_ values
##
Meta: 1
Name: slurm
Major: 14
Minor: 03
Micro: 8
Version: 14.03.8
Major: 17
Minor: 11
Micro: 2
Version: 17.11.2
Release: 1

##
# When changing API_CURRENT update src/common/slurm_protocol_common.h
# When making a new Major/Minor version update
# src/common/slurm_protocol_common.h
# with a new SLURM_PROTOCOL_VERSION signifing the old one and the version
# it was so the slurmdbd can continue to send the old protocol version.
# In src/common/slurm_protocol_util.c check_header_version(),
# and _get_slurm_version()
# need to be updated also when changes are added also.
# In src/plugins/slurmctld/nonstop/msg.c needs to have version_string updated.
# The META of libsmd needs to reflect this version and API_CURRENT as well.
#
# NOTE: The API version can not be the same as the Slurm version above. The
# version in the code is referenced as a uint16_t which if 1312 was the
# version in the code is referenced as a uint16_t which if 1403 was the
# API_CURRENT it would go over the limit. So keep is a relatively
# small number.
#
# NOTE: The values below are used to set up environment variables in
# the config.h file that may be used throughout Slurm, so don't remove
# them.
##
API_CURRENT: 27
API_CURRENT: 32
API_AGE: 0
API_REVISION: 0
Loading

0 comments on commit 04c20d5

Please sign in to comment.