Skip to content

analysis/tasks: Compute all task_states dataframes at once

Created by: valschneider

This was benchmarked against a 400MB trace::

  %%time
  df = trace.analysis.tasks.df_tasks_states()

  CPU times: user 1.18 s, sys: 100 ms, total: 1.28 s
  Wall time: 1.28 s

This gave me a DataFrame with 807089 rows weighing a total of ~45MB.

Note that adding the next_state column costed me ~0.25s extra (compared to only computing the deltas). It simplifies the stringification of the multi & single tasks dataframes, but I could move it to be done only for single task dataframes.

Merge request reports