Skip to content

Commit dd2dba8

Browse files
committed
Refactor
1 parent dd60dcb commit dd2dba8

File tree

2 files changed

+21
-9
lines changed

2 files changed

+21
-9
lines changed

src/CraneCtld/TaskScheduler.cpp

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1853,7 +1853,6 @@ void MinLoadFirst::CalculateNodeSelectionInfoOfPartition_(
18531853
// Sort all running task in this node by ending time.
18541854
std::vector<std::pair<absl::Time, uint32_t>> end_time_task_id_vec;
18551855

1856-
std::vector<std::string> running_task_ids_str;
18571856
for (const auto& [task_id, res] : craned_meta->running_task_resource_map) {
18581857
const auto& task = running_tasks.at(task_id);
18591858

@@ -1867,8 +1866,14 @@ void MinLoadFirst::CalculateNodeSelectionInfoOfPartition_(
18671866
absl::Time end_time = std::max(task->StartTime() + task->time_limit,
18681867
now + absl::Seconds(1));
18691868
end_time_task_id_vec.emplace_back(end_time, task_id);
1869+
}
18701870

1871-
running_task_ids_str.emplace_back(std::to_string(task_id));
1871+
if constexpr (kAlgoTraceOutput) {
1872+
std::string running_task_ids_str;
1873+
for (const auto& [end_time, task_id] : end_time_task_id_vec)
1874+
running_task_ids_str.append(fmt::format("{}, ", task_id));
1875+
CRANE_TRACE("Craned node {} has running tasks: {}", craned_id,
1876+
running_task_ids_str);
18721877
}
18731878

18741879
std::sort(
@@ -1888,8 +1893,8 @@ void MinLoadFirst::CalculateNodeSelectionInfoOfPartition_(
18881893
}
18891894
}
18901895

1891-
// Calculate delta resources at [now, first task end,
1892-
// second task end, ...] in this node.
1896+
// Calculate how many resources are available at [now, first task end,
1897+
// second task end, ...] in this node.
18931898
auto& time_avail_res_map =
18941899
node_selection_info_ref.node_time_avail_res_map[craned_id];
18951900
node_selection_info_ref.node_res_total_map[craned_id] =
@@ -1927,6 +1932,16 @@ void MinLoadFirst::CalculateNodeSelectionInfoOfPartition_(
19271932
*/
19281933
std::tie(cur_time_iter, ok) =
19291934
time_avail_res_map.emplace(end_time, cur_time_iter->second);
1935+
1936+
if constexpr (kAlgoTraceOutput) {
1937+
CRANE_TRACE(
1938+
"Insert duration [now+{}s, inf) with resource: "
1939+
"cpu: {}, mem: {}, gres: {}",
1940+
absl::ToInt64Seconds(end_time - now),
1941+
craned_meta->res_avail.allocatable_res.cpu_count,
1942+
craned_meta->res_avail.allocatable_res.memory_bytes,
1943+
util::ReadableDresInNode(craned_meta->res_avail));
1944+
}
19301945
}
19311946

19321947
/**
@@ -2454,8 +2469,7 @@ CraneErr TaskScheduler::AcquireTaskAttributes(TaskInCtld* task) {
24542469
task_mem_per_cpu = part_meta.default_mem_per_cpu;
24552470
} else if (part_meta.max_mem_per_cpu != 0) {
24562471
// If a task sets its memory bytes,
2457-
// check if memory/core ratio is greater than the partition's maximum
2458-
// value.
2472+
// check if memory/core ratio is greater than the partition's maximum value.
24592473
task_mem_per_cpu =
24602474
std::min(task_mem_per_cpu, (double)part_meta.max_mem_per_cpu);
24612475
}

src/CraneCtld/TaskScheduler.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,6 @@ class MinLoadFirst : public INodeSelectionAlgo {
153153
* In time interval [y, z-1], the amount of available resources is b.
154154
* In time interval [z, ...], the amount of available resources is c.
155155
*/
156-
157156
using TimeAvailResMap = std::map<absl::Time, ResourceInNode>;
158157
struct TimeAvailResTracker {
159158
const CranedId craned_id;
@@ -337,8 +336,7 @@ class TaskScheduler {
337336

338337
void TerminateTasksOnCraned(const CranedId& craned_id, uint32_t exit_code);
339338

340-
// Temporary inconsistency may happen. If 'false' is returned, just ignore
341-
// it.
339+
// Temporary inconsistency may happen. If 'false' is returned, just ignore it.
342340
void QueryTasksInRam(const crane::grpc::QueryTasksInfoRequest* request,
343341
crane::grpc::QueryTasksInfoReply* response);
344342

0 commit comments

Comments
 (0)