Permalink
Browse files

This commit was manufactured by cvs2svn to create tag

'slurm-0-4-14-1'.
  • Loading branch information...
1 parent 5ab7088 commit c6d81694e25f6004720a2fcd0863841810d8199e no author committed Mar 23, 2005
View
@@ -9,8 +9,8 @@
Name: slurm
Major: 0
Minor: 4
- Micro: 6
- Version: 0.4.6
+ Micro: 14
+ Version: 0.4.14
Release: 1
API_CURRENT: 6
API_AGE: 4
View
@@ -1,9 +1,42 @@
This file describes changes in recent versions of SLURM. It primarily
documents those changes that are of interest to users and admins.
+* Changes in SLURM 0.4.14
+========================
+ -- job state is kept on warm start of slurm
+
+* Changes in SLURM 0.4.13
+========================
+ -- epilog fix for bgl plugin
+
+* Changes in SLURM 0.4.12
+========================
+ -- bug shot for new api calls.
+ -- added BridgeAPILogFile as an option for bluegene.conf file
+
+* Changes in SLURM 0.4.11
+========================
+ -- changed as many rm_get_partition() to rm_get_partitions_info as we could
+ for time saving.
+
+* Changes in SLURM 0.4.10
+========================
+ -- redesign for BGL external wiring.
+ -- smap display bug fix for smaller systems.
+
+* Changes in SLURM 0.4.9
+========================
+ -- setpnum works now, have to include this in bluegene.conf
+
+* Changes in SLURM 0.4.8
+========================
+ -- Changed the prolog and the epilog to use the env var MPIRUN_PARTITION
+ instead of BGL_PARTITION_ID
+
* Changes in SLURM 0.4.7
========================
- -- Remove some BGL specific headers that IBM now distributes.
+ -- Remove some BGL specific headers that IBM now distributes, NOTE
+ BGL driver 080 or greater required.
-- Change autogen.sh to deal with problems running autoconf on one
system and configure on another with different software versions.
View
@@ -33,7 +33,7 @@ AC_DEFUN([X_AC_BGL],
fi
have_bgl_ar=yes
- bgl_ldflags="$bgl_ldflags -Wl,-rpath $bgl_dir/lib -Wl,-L$bgl_dir/lib -Wl,-whole-archive -Wl,-lbglbridge -Wl,-no-whole-archive $bgl_dir/lib/bglbootload.a $bgl_dir/lib/bglsp440supt.a -lbgldb -lbglmachine -ltableapi -lexpat -lbglsp"
+ bgl_ldflags="$bgl_ldflags -Wl,-rpath $bgl_dir/lib -Wl,-L$bgl_dir/lib -Wl,-whole-archive -Wl,-lbglbridge -Wl,-no-whole-archive $bgl_dir/lib/bglbootload.a $bgl_dir/lib/bglsp440supt.a -lsaymessage -lbgldb -lbglmachine -ltableapi -lexpat -lbglsp"
fi
# Search for required DB2 library in the directory
@@ -99,7 +99,7 @@
The script that you submit to SLURM can contain multiple invocations of mpirun as
well as any desired commands for pre- and post-processing.
The mpirun command will get its <i>bglblock</i> or BGL partition information from the
-<i>BGL_PARTITION_ID</i> as set by SLURM. A sample script is shown below.
+<i>MPIRUN_PARTITION</i> as set by SLURM. A sample script is shown below.
<pre>
#!/bin/bash
# pre-processing
@@ -185,11 +185,11 @@
and interfaces.
The value of <i>SchedulerType</i> should be set to "sched/builtin".
The value of <i>Prolog</i> should be set to a program that will delay
-execution until the bglblock identified by the BGL_PARTITION_ID environment
+execution until the bglblock identified by the MPIRUN_PARTITION environment
variable is ready for use. It is recommended that you construct a script
that serves this function and calls the supplied program <i>slurm_prolog</i>.
The value of <i>Epilog</i> should be set to a program that will wait
-until the bglblock identified by the BGL_PARTITION_ID environment
+until the bglblock identified by the MPIRUN_PARTITION environment
variable has been freed. It is recommended that you construct a script
that serves this function and calls the supplied program <i>slurm_epilog</i>.
The prolog and epilog programs are used to insure proper synchronization
@@ -15,7 +15,9 @@ BlrtsImage=/bgl/BlueLight/ppcfloor/bglsys/bin/rts_hw.rts
LinuxImage=/bgl/BlueLight/ppcfloor/bglsys/bin/zImage.elf
MloaderImage=/bgl/BlueLight/ppcfloor/bglsys/bin/mmcs-mloader.rts
RamDiskImage=/bgl/BlueLight/ppcfloor/bglsys/bin/ramdisk.elf
-#ChangeNumpsets=/etc/slurm/change_numpsets
+BridgeAPILogFile=/var/log/slurm/bridgeapi.log
+Numpsets=8
+BridgeAPIVerbose=0
#
# Define the static partitions (bglblocks)
@@ -16,7 +16,7 @@ INCLUDES = -I$(top_srcdir) $(BGL_INCLUDES)
# $(top_builddir)/src/api/libslurm.la
# partition_allocator_LDFLAGS = -export-dynamic -lm $(CMD_LDFLAGS) $(BGL_LDFLAGS)
-# CPPFLAGS = -DBUILD_EXE
+# CPPFLAGS = -DBUILD_EXE
# making a .la
noinst_LTLIBRARIES = libpartition_allocator.la
@@ -92,8 +92,7 @@ static void _switch_config(pa_node_t* source, pa_node_t* target, int dim,
int port_src, int port_tar);
/* */
static void _set_external_wires(int dim, int count, pa_node_t* source,
- pa_node_t* target_1, pa_node_t* target_2,
- pa_node_t* target_first, pa_node_t* target_second);
+ pa_node_t* target_1, pa_node_t* target_2);
/* */
static char *_set_internal_wires(List nodes, int size, int conn_type);
@@ -474,7 +473,7 @@ void pa_init(node_info_msg_t *node_info_ptr)
_create_pa_system();
pa_system_ptr->fill_in_value = (pa_node_t *)
- xmalloc(sizeof(pa_node_t) * pa_system_ptr->num_of_proc);
+ xmalloc(sizeof(pa_node_t) * 128);
init_grid(node_info_ptr);
@@ -985,7 +984,7 @@ static int _create_config_even(pa_node_t *grid)
#if HAVE_BGL
int y,z;
- pa_node_t *target_2, *target_first, *target_second;
+ pa_node_t *target_2;
for(x=0;x<DIM_SIZE[X];x++) {
for(y=0;y<DIM_SIZE[Y];y++) {
for(z=0;z<DIM_SIZE[Z];z++) {
@@ -999,31 +998,23 @@ static int _create_config_even(pa_node_t *grid)
target_2 = &grid[x+2][y][z];
else
target_2 = target_1;
- target_first = &grid[0][y][z];
- if (DIM_SIZE[X] > 1)
- target_second = &grid[1][y][z];
- else
- target_second = target_first;
_set_external_wires(X, x, source,
- target_1, target_2,
- target_first, target_second);
+ target_1, target_2);
if(y<(DIM_SIZE[Y]-1))
target_1 = &grid[x][y+1][z];
else
target_1 = &grid[x][0][z];
_set_external_wires(Y, y, source,
- target_1, NULL,
- NULL, NULL);
+ target_1, NULL);
if(z<(DIM_SIZE[Z]-1))
target_1 = &grid[x][y][z+1];
else
target_1 = &grid[x][y][0];
_set_external_wires(Z, z, source,
- target_1, NULL,
- NULL, NULL);
+ target_1, NULL);
}
}
}
@@ -1051,8 +1042,7 @@ static int _create_config_even(pa_node_t *grid)
target_1 = &grid[x+1];
_set_external_wires(X, x, source,
- target_1, NULL,
- NULL, NULL);
+ target_1, NULL);
}
#endif
return 1;
@@ -1434,8 +1424,7 @@ static void _switch_config(pa_node_t* source, pa_node_t* target, int dim,
}
static void _set_external_wires(int dim, int count, pa_node_t* source,
- pa_node_t* target_1, pa_node_t* target_2,
- pa_node_t* target_first, pa_node_t* target_second)
+ pa_node_t* target_1, pa_node_t* target_2)
{
_switch_config(source, source, dim, 0, 0);
_switch_config(source, source, dim, 1, 1);
@@ -1445,47 +1434,46 @@ static void _set_external_wires(int dim, int count, pa_node_t* source,
_switch_config(source, source, dim, 4, 4);
return;
}
+
if(count==0) {
- /* First Node */
+ /* First Even Node */
/* 4->3 of next */
_switch_config(source, target_1, dim, 4, 3);
- /* 2->5 of next */
- _switch_config(source, target_1, dim, 2, 5);
- /* 3->4 of next even */
- _switch_config(source, target_2, dim, 3, 4);
- if(DIM_SIZE[dim]<4) {
- /* 5->2 of next even */
- _switch_config(source, target_2, dim, 5, 2);
-
- }
-
+ /* 5->2 of next */
+ _switch_config(source, target_1, dim, 5, 2);
+ /* 2->5 of next even */
+ _switch_config(source, target_2, dim, 2, 5);
+
} else if(!(count%2)) {
if(count<DIM_SIZE[dim]-2) {
/* Not Last Even Node */
- /* 3->4 of next even */
- _switch_config(source, target_2, dim, 3, 4);
- /* 2->5 of next */
- _switch_config(source, target_1, dim, 2, 5);
- /* 5->2 of next */
- _switch_config(source, target_1, dim, 5, 2);
+ /* 3->4 of next */
+ _switch_config(source, target_1, dim, 3, 4);
+ /* 4->3 of next */
+ _switch_config(source, target_1, dim, 4, 3);
+ /* 2->5 of next even */
+ _switch_config(source, target_2, dim, 2, 5);
+ /* 5->2 of next even */
+ _switch_config(source, target_2, dim, 5, 2);
+
} else {
/* Last Even Node */
/* 3->4 of next */
_switch_config(source, target_1, dim, 3, 4);
- /* 5->2 of next */
- _switch_config(source, target_1, dim, 5, 2);
- /* 2->5 of first */
- _switch_config(source, target_first, dim, 2, 5);
+ /* 2->5 of previous */
+ /********** fix me: on the full system this is needed ******/
+ //_switch_config(source, target_1, dim, 2, 5);
+ /********** fix me: not this ******/
+ _switch_config(source, target_1, dim, 4, 3);
}
} else {
if(count<DIM_SIZE[dim]-2) {
/* Not Last Odd Node */
- /* 4->3 of next odd */
- _switch_config(source, target_2, dim, 4, 3);
+ /* 5->2 of next odd */
+ _switch_config(source, target_2, dim, 5, 2);
} else {
/* Last Odd Node */
- /* 5->2 of second */
- _switch_config(source, target_second, dim, 5, 2);
+ /* nothing */
}
}
}
@@ -1891,42 +1879,33 @@ int main(int argc, char** argv)
List results;
// List results2;
// int i,j;
- DIM_SIZE[X]=8;
+ DIM_SIZE[X]=4;
DIM_SIZE[Y]=1;
DIM_SIZE[Z]=1;
pa_init(NULL);
- loc = find_bp_loc("R171");
- printf("The loc is %d%d%d\n",loc[X],loc[Y],loc[Z]);
- if((loc = find_bp_loc("R178")))
- printf("The loc is %d%d%d\n",loc[X],loc[Y],loc[Z]);
- else
- printf("This doesn't exsist!\n");
- exit(0);
-/* request->rotate = true; */
-/* request->elongate = true; */
-/* request->force_contig = true; */
-/* request->co_proc = true; */
-/* request->geometry[0]=-1; */
-
- results = list_create(NULL);
- request->geometry[0] = -1;
- request->size = 1; //atoi(argv[1]);
- request->conn_type = TORUS;
- new_pa_request(request);
- print_pa_request(request);
- allocate_part(request, results);
+
results = list_create(NULL);
- request->geometry[0] = 5;
+ request->geometry[0] = 4;
request->geometry[1] = 1;
request->geometry[2] = 1;
- request->size = -1; //atoi(argv[1]);
- request->conn_type = MESH;
+ request->size = 4;
+ request->conn_type = TORUS;
new_pa_request(request);
print_pa_request(request);
allocate_part(request, results);
+ /* results = list_create(NULL); */
+/* request->geometry[0] = 5; */
+/* request->geometry[1] = 1; */
+/* request->geometry[2] = 1; */
+/* request->size = -1; //atoi(argv[1]); */
+/* request->conn_type = MESH; */
+/* new_pa_request(request); */
+/* print_pa_request(request); */
+/* allocate_part(request, results); */
+
int dim,j;
int x,y,z;
int startx=0;
@@ -1955,11 +1934,11 @@ int main(int argc, char** argv)
}
}
}
- list_destroy(results);
+ /* list_destroy(results); */
- pa_fini();
+/* pa_fini(); */
- delete_pa_request(request);
+/* delete_pa_request(request); */
return 0;
}
Oops, something went wrong.

0 comments on commit c6d8169

Please sign in to comment.