|
11 | 11 | from collections import defaultdict |
12 | 12 | from argparse import ArgumentParser, ArgumentError, REMAINDER, RawTextHelpFormatter |
13 | 13 |
|
14 | | -import memory_profiler as mp |
| 14 | +import importlib |
| 15 | +mp = importlib.import_module("memory_profiler", __file__) |
| 16 | +# import memory_profiler as mp |
15 | 17 |
|
16 | 18 | ALL_ACTIONS = ("run", "rm", "clean", "list", "plot") |
17 | 19 | help_msg = """ |
@@ -202,7 +204,7 @@ def run_action(): |
202 | 204 | 'Option 4: (--python flag present) "<PYTHON_MODULE> <ARG1> <ARG2>..." - profile python module\n' |
203 | 205 | ) |
204 | 206 | args = parser.parse_args() |
205 | | - |
| 207 | + |
206 | 208 | if len(args.program) == 0: |
207 | 209 | print("A program to run must be provided. Use -h for help") |
208 | 210 | sys.exit(1) |
@@ -329,8 +331,12 @@ def read_mprofile_file(filename): |
329 | 331 | values = value.split(' ') |
330 | 332 | f_name, mem_start, start, mem_end, end = values[:5] |
331 | 333 | ts = func_ts.get(f_name, []) |
332 | | - ts.append([float(start), float(end), |
333 | | - float(mem_start), float(mem_end)]) |
| 334 | + to_append = [float(start), float(end), float(mem_start), float(mem_end)] |
| 335 | + if len(values) >= 6: |
| 336 | + # There is a stack level field |
| 337 | + stack_level = values[5] |
| 338 | + to_append.append(int(stack_level)) |
| 339 | + ts.append(to_append) |
334 | 340 | func_ts[f_name] = ts |
335 | 341 |
|
336 | 342 | elif field == "CHLD": |
|
0 commit comments