Modify reservation resource selection to optimize placement
When a new reservation is created, the code tries first with current idle nodes: /* First: Try to reserve nodes that are currently IDLE */ if (bit_overlap(avail_bitmap, idle_node_bitmap) >= node_cnt) { bit_and(avail_bitmap, idle_node_bitmap); ret_bitmap = select_g_resv_test(avail_bitmap, node_cnt, resv_desc_ptr->core_cnt, core_bitmap); if (ret_bitmap) goto fini; } /* Second: Try to reserve nodes that are will be IDLE */ I guess there's a reason for this behaviour: performance. However, I think it should be always the second option. Creating a new reservation is not a usual task, so the best effort should prevail versus performance at creation time.
Please register or sign in to comment