Skip to content

Commit fbf7c75

Browse files
committed
BSD support for track-memory: improve code and add comment
Signed-off-by: Laurent Cheylus <foxy@free.fr>
1 parent 3ee3efc commit fbf7c75

File tree

3 files changed

+11
-14
lines changed

3 files changed

+11
-14
lines changed

pyperf/_psutil_memory.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ def __init__(self):
2222

2323
def get(self):
2424
if BSD:
25+
# uss (Unique Set Size) not supported on BSD, uses rss (Resident Set Size) instead
2526
usage = self.process.memory_info().rss
2627
else:
2728
usage = self.process.memory_full_info().uss

pyperf/_runner.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,10 @@
1212
set_highest_priority)
1313
from pyperf._formatter import format_timedelta
1414
from pyperf._hooks import get_hook_names
15-
from pyperf._utils import (MS_WINDOWS, MAC_OS, BSD, abs_executable,
15+
from pyperf._utils import (MS_WINDOWS, abs_executable,
1616
WritePipe, get_python_names,
1717
merge_profile_stats)
18+
from pyperf._system import OS_LINUX
1819
from pyperf._worker import WorkerProcessTask
1920

2021

@@ -346,12 +347,10 @@ def _process_args_impl(self):
346347
if args.track_memory:
347348
if MS_WINDOWS:
348349
from pyperf._win_memory import check_tracking_memory
349-
elif MAC_OS:
350-
from pyperf._psutil_memory import check_tracking_memory
351-
elif BSD:
352-
from pyperf._psutil_memory import check_tracking_memory
353-
else:
350+
elif OS_LINUX:
354351
from pyperf._linux_memory import check_tracking_memory
352+
else:
353+
from pyperf._psutil_memory import check_tracking_memory
355354
err_msg = check_tracking_memory()
356355
if err_msg:
357356
raise CLIError("unable to track the memory usage "

pyperf/_worker.py

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@
77
from pyperf._formatter import (format_number, format_value, format_values,
88
format_timedelta)
99
from pyperf._hooks import instantiate_selected_hooks
10-
from pyperf._utils import MS_WINDOWS, MAC_OS, BSD, percentile, median_abs_dev
10+
from pyperf._utils import MS_WINDOWS, percentile, median_abs_dev
11+
from pyperf._system import OS_LINUX
1112

1213

1314
MAX_LOOPS = 2 ** 32
@@ -327,16 +328,12 @@ def start(self):
327328
if MS_WINDOWS:
328329
from pyperf._win_memory import get_peak_pagefile_usage
329330
self.get_peak_profile_usage = get_peak_pagefile_usage
330-
elif MAC_OS:
331-
from pyperf._psutil_memory import PeakMemoryUsageThread
332-
self.mem_thread = PeakMemoryUsageThread()
333-
self.mem_thread.start()
334-
elif BSD:
335-
from pyperf._psutil_memory import PeakMemoryUsageThread
331+
elif OS_LINUX:
332+
from pyperf._linux_memory import PeakMemoryUsageThread
336333
self.mem_thread = PeakMemoryUsageThread()
337334
self.mem_thread.start()
338335
else:
339-
from pyperf._linux_memory import PeakMemoryUsageThread
336+
from pyperf._psutil_memory import PeakMemoryUsageThread
340337
self.mem_thread = PeakMemoryUsageThread()
341338
self.mem_thread.start()
342339

0 commit comments

Comments
 (0)