- 06 Jan, 2014 6 commits
-
-
Morris Jette authored
-
Morris Jette authored
Conflicts: src/slurmctld/job_mgr.c
-
Morris Jette authored
If a job is explicitly suspended, its priority is set to zero. This resets the priority when requeued and also documents that if the job is requeued (e.g. due to a node failure), then it is placed in a held state.
-
Morris Jette authored
Without this patch, the job's RunTime includes its RunTime from before it's prior suspend (i.e. the job's full RunTime rather than just the RunTime of the requeued job).
-
Morris Jette authored
-
Morris Jette authored
-
- 04 Jan, 2014 1 commit
-
-
David Bigagli authored
params section from the ini file.
-
- 03 Jan, 2014 4 commits
-
-
Morris Jette authored
-
Morris Jette authored
-
David Bigagli authored
-
David Bigagli authored
-
- 31 Dec, 2013 3 commits
-
-
Nathan Yee authored
Avoid leaving any vestigial files after running test suite except in cases of tests failing
-
David Bigagli authored
-
David Bigagli authored
then in parallel.
-
- 30 Dec, 2013 1 commit
-
-
David Bigagli authored
Shut down clusters after test done. USe logger instead of print.
-
- 27 Dec, 2013 5 commits
-
-
Morris Jette authored
Rename "Exclusive OR" to "Matching OR" which better describes how it works.
-
Morris Jette authored
-
Filip Skalski authored
Hello, I think I found another bug in the code (I'm using 2.6.3 but I checked the 2.6.5 and 14.03 versions and it's the same there). In file sched/backfill/backfill.c: 1) _add_reservation function, from lines 1172: if (placed == true) { j = node_space[j].next; if (j && (end_reserve < node_space[j].end_time)) { /* insert end entry record */ i = *node_space_recs; node_space[i].begin_time = end_reserve; node_space[i].end_time = node_space[j].end_time; node_space[j].end_time = end_reserve; node_space[i].avail_bitmap = bit_copy(node_space[j].avail_bitmap); node_space[i].next = node_space[j].next; node_space[j].next = i; (*node_space_recs)++; } break; } I draw a picture with `node_space` state after 2 iterations (see attachment). In case where the new reservation is fully inside another reservation, then everything is OK. But if the new reservation spans multiple existing reservations then the `end entry record` is not created. This is because only the newly created `start entry record` is checked. Easy fix would be to change the if into a loop, for example: if (placed == true) { while((j = node_space[j].next) > 0) { if (end_reserve < node_space[j].end_time) { //same as above break; } } break; } 2) You could also change line 612: node_space = xmalloc(sizeof(node_space_map_t) * (max_backfill_job_cnt + 3)); To `(max_backfill_job_cnt * 2 + 1)` , since each reservation can add at most two entries (check at line 982 should never execute). At the moment, in a worst case scenario this only checks half of the max_backfill_job_cnt. NOTE: However this is all based on the assumption, that it is not done on purpose to speed up the calculations and trading some of the accuracy (especially point 2). Best regards, Filip Skalski
-
Morris Jette authored
-
Danny Auble authored
-
- 26 Dec, 2013 1 commit
-
-
David Bigagli authored
-
- 25 Dec, 2013 1 commit
-
-
David Bigagli authored
-
- 24 Dec, 2013 2 commits
-
-
David Bigagli authored
-
David Bigagli authored
-
- 23 Dec, 2013 8 commits
-
-
Morris Jette authored
-
Morris Jette authored
-
Morris Jette authored
Conflicts: NEWS
-
Morris Jette authored
-
Morris Jette authored
-
Morris Jette authored
Conflicts: META
-
Morris Jette authored
-
David Bigagli authored
-
- 21 Dec, 2013 4 commits
-
-
Danny Auble authored
-
Danny Auble authored
-
Danny Auble authored
-
Danny Auble authored
-
- 20 Dec, 2013 4 commits
-
-
Danny Auble authored
-
Danny Auble authored
-
Danny Auble authored
-
Danny Auble authored
-