code: def run(task, stop):
      # Draw a seed, so both jobs converge in an equal amount of iterations
      seed = np.random.randint(np.iinfo(np.int32).max)
      baseline = 0
  
      for n_jobs in range(1, stop + 1):
          print(f"Starting runs on {n_jobs} core(s)")
          t_start = time.time()
          task(K, stop, n_jobs, seed)
          runtime = time.time() - t_start
  
          if n_jobs == 1:
              baseline = runtime
              print(
                  f"Finished {stop} runs on 1 core in {runtime:.2f} seconds"
              )
          else:
              print(
                  f"Finished {stop} runs on {n_jobs} cores in {runtime:.2f} seconds, "
                  f"a {baseline / runtime:.1f}x speed-up"
              )
  
imports: import time
  import numpy
  from kmodes.kmodes import KModes
  from kmodes.kprototypes import KPrototypes
label_desc: Use image node_id 3 for calling a global function with example usage: run(task, stop) without return types