Skip to content
Snippets Groups Projects
Commit 7c0e6794 authored by Danny Auble's avatar Danny Auble
Browse files

smap and squeue display correct info for jobs in bluegene mode

parent 95003b75
No related branches found
No related tags found
No related merge requests found
...@@ -6,6 +6,7 @@ documents those changes that are of interest to users and admins. ...@@ -6,6 +6,7 @@ documents those changes that are of interest to users and admins.
-- Enhanced performance and debugging for slurmctld reconfiguration. -- Enhanced performance and debugging for slurmctld reconfiguration.
-- Add "scontrol update Jobid=# Nice=#" support. -- Add "scontrol update Jobid=# Nice=#" support.
-- Basic slurmctld and tool functionality validated to 16k nodes. -- Basic slurmctld and tool functionality validated to 16k nodes.
-- squeue and smap now display correct info for jobs in bluegene enviornment.
* Changes in SLURM 0.7.0-pre4 * Changes in SLURM 0.7.0-pre4
============================= =============================
......
...@@ -205,7 +205,7 @@ static void _print_header_job(void) ...@@ -205,7 +205,7 @@ static void _print_header_job(void)
printf("JOBID "); printf("JOBID ");
printf("PARTITION "); printf("PARTITION ");
#ifdef HAVE_BG #ifdef HAVE_BG
printf(" BG_BLOCK "); printf(" BG_BLOCK ");
#endif #endif
printf(" USER "); printf(" USER ");
printf(" NAME "); printf(" NAME ");
...@@ -331,7 +331,17 @@ static int _print_text_job(job_info_t * job_ptr) ...@@ -331,7 +331,17 @@ static int _print_text_job(job_info_t * job_ptr)
printf("%8.8s ", time_buf); printf("%8.8s ", time_buf);
printf("%5d ", job_ptr->num_nodes); printf("%5d ", job_ptr->num_nodes);
printf("%s\n", job_ptr->nodes); printf("%s", job_ptr->nodes);
#ifdef HAVE_BG
select_g_get_jobinfo(job_ptr->select_jobinfo,
SELECT_DATA_QUARTER,
&quarter);
if(quarter != -1) {
printf(".%d",quarter);
}
#endif
printf("\n");
#
} }
return printed; return printed;
} }
...@@ -536,6 +536,9 @@ int _print_job_nodes(job_info_t * job, int width, bool right, char* suffix) ...@@ -536,6 +536,9 @@ int _print_job_nodes(job_info_t * job, int width, bool right, char* suffix)
int _print_job_reason_list(job_info_t * job, int width, bool right, int _print_job_reason_list(job_info_t * job, int width, bool right,
char* suffix) char* suffix)
{ {
int quarter = -1;
char tmp_char[3];
if (job == NULL) /* Print the Header instead */ if (job == NULL) /* Print the Header instead */
_print_str("NODELIST(REASON)", width, right, false); _print_str("NODELIST(REASON)", width, right, false);
else if (job->job_state == JOB_PENDING) { else if (job->job_state == JOB_PENDING) {
...@@ -543,9 +546,19 @@ int _print_job_reason_list(job_info_t * job, int width, bool right, ...@@ -543,9 +546,19 @@ int _print_job_reason_list(job_info_t * job, int width, bool right,
snprintf(id, FORMAT_STRING_SIZE, "(%s)", snprintf(id, FORMAT_STRING_SIZE, "(%s)",
job_reason_string(job->wait_reason)); job_reason_string(job->wait_reason));
_print_str(id, width, right, true); _print_str(id, width, right, true);
} else } else {
#ifdef HAVE_BG
select_g_get_jobinfo(job->select_jobinfo,
SELECT_DATA_QUARTER,
&quarter);
#endif
_print_nodes(job->nodes, width, right, false); _print_nodes(job->nodes, width, right, false);
if(quarter != -1) {
sprintf(tmp_char,"\.%d\0",quarter);
_print_str(tmp_char, width, right, false);
}
}
if (suffix) if (suffix)
printf("%s", suffix); printf("%s", suffix);
return SLURM_SUCCESS; return SLURM_SUCCESS;
...@@ -586,10 +599,22 @@ int _print_job_num_procs(job_info_t * job, int width, bool right, char* suffix) ...@@ -586,10 +599,22 @@ int _print_job_num_procs(job_info_t * job, int width, bool right, char* suffix)
int _print_job_num_nodes(job_info_t * job, int width, bool right_justify, int _print_job_num_nodes(job_info_t * job, int width, bool right_justify,
char* suffix) char* suffix)
{ {
int quarter = -1;
if (job == NULL) /* Print the Header instead */ if (job == NULL) /* Print the Header instead */
_print_str("NODES", width, right_justify, true); _print_str("NODES", width, right_justify, true);
else else {
_print_int(_get_node_cnt(job), width, right_justify, true); #ifdef HAVE_BG
select_g_get_jobinfo(job->select_jobinfo,
SELECT_DATA_QUARTER,
&quarter);
#endif
if(quarter != -1)
_print_str("0.25", width, right_justify, true);
else
_print_int(_get_node_cnt(job), width,
right_justify, true);
}
if (suffix) if (suffix)
printf("%s", suffix); printf("%s", suffix);
return SLURM_SUCCESS; return SLURM_SUCCESS;
...@@ -981,7 +1006,7 @@ int _print_step_nodes(job_step_info_t * step, int width, bool right, ...@@ -981,7 +1006,7 @@ int _print_step_nodes(job_step_info_t * step, int width, bool right,
{ {
if (step == NULL) /* Print the Header instead */ if (step == NULL) /* Print the Header instead */
_print_str("NODELIST", width, right, false); _print_str("NODELIST", width, right, false);
else else
_print_nodes(step->nodes, width, right, false); _print_nodes(step->nodes, width, right, false);
if (suffix) if (suffix)
printf("%s", suffix); printf("%s", suffix);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment