Skip to content

Commit 64abf5b

Browse files
committed
correctly maange the process map
1 parent 50fedf5 commit 64abf5b

File tree

1 file changed

+3
-10
lines changed

1 file changed

+3
-10
lines changed

ipykernel/kernelbase.py

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -957,13 +957,7 @@ async def debug_request(self, stream, ident, parent):
957957

958958
def get_process_metric_value(self, process, name, attribute=None):
959959
try:
960-
# psutil.Process methods will either return...
961-
pid = process.pid
962-
p = self.processes.get(pid, None)
963-
if not p:
964-
self.processes[pid] = process
965-
p = self.processes.get(pid)
966-
metric_value = getattr(p, name)()
960+
metric_value = getattr(process, name)()
967961
if attribute is not None: # ... a named tuple
968962
return getattr(metric_value, attribute)
969963
else: # ... or a number
@@ -979,15 +973,14 @@ async def usage_request(self, stream, ident, parent):
979973
all_processes = [current_process] + current_process.children(recursive=True)
980974
# Ensure 1) self.processes is updated to only current subprocesses
981975
# and 2) we reuse processes when possible (needed for accurate CPU)
982-
self.processes = {process.pid: self.processes.get(process.pid, process) for process in all_processes}
983976
self.processes = {
984977
process.pid: self.processes.get(process.pid, process) for process in all_processes
985978
}
986979
reply_content["kernel_cpu"] = sum(
987-
[self.get_process_metric_value(process, "cpu_percent", None) for process in all_processes]
980+
[self.get_process_metric_value(process, "cpu_percent", None) for process in self.processes.values()]
988981
)
989982
reply_content["kernel_memory"] = sum(
990-
[self.get_process_metric_value(process, "memory_info", "rss") for process in all_processes]
983+
[self.get_process_metric_value(process, "memory_info", "rss") for process in self.processes.values()]
991984
)
992985
host_cpu_percent = psutil.cpu_percent()
993986
# https://psutil.readthedocs.io/en/latest/index.html?highlight=cpu#psutil.cpu_percent

0 commit comments

Comments
 (0)