code: def plot_rss(cm, t1, t2, t3):
      """Plot the memory profile."""
      f = plt.figure(figsize=(8, 6))
      plt.plot(range(cm.cpu.shape[0]), cm.rss / 1000000)
      plt.axvline(
          t1 - 3,
          color="darkcyan",
          linestyle="--",
          linewidth=1.0,
          label="load data",
      )
      plt.axvline(
          t2,
          color="blue",
          linestyle="--",
          linewidth=1.0,
          label="fit start",
      )
      plt.axvline(
          t3,
          color="blue",
          linestyle="-.",
          linewidth=1.0,
          label="fit end",
      )
      plt.xticks(
          [i for i in [0, 50, 100, 150, 200, 250]],
          [i for i in [0, 5, 10, 15, 20, 25]],
      )
      #    plt.ylim(120, 240)
      plt.title("ML-Ensemble memory profile (working set)")
      plt.ylabel("Working set memory (MB)")
      plt.xlabel("Time (s)")
      plt.legend()
      plt.show()
  
      if PRINT:
          try:
              f.savefig("dev/img/memory_profile.png", dpi=600)
          except:
              f.savefig("memory_profile.png", dpi=600)
  
file_path: mlens/benchmarks/memory_cpu_profile.py
imports: import numpy
  from mlens.utils.dummy import LayerGenerator
  from mlens.utils.utils import CMLog
  from time import sleep, perf_counter
  from sklearn.datasets import make_friedman1
  import matplotlib.pyplot
  from seaborn import set_palette
label_desc: Use image node_id 2 for calling a global function with example usage: plot_rss(cm, t1, t2, t3) without return types