code: def do_computation(self):
      def heavy_foo(x):
          for i in range(1 << 18):
              x = 1  # noqa: F841
  
      rdd = self.sc.parallelize(range(100))
      rdd.foreach(heavy_foo)
  
imports: import os
  import sys
  import tempfile
  import unittest
  from io import StringIO
  from pyspark import SparkConf, SparkContext, BasicProfiler
  from pyspark.profiler import has_memory_profiler
  from pyspark.sql import SparkSession
  from pyspark.sql.functions import udf
  from pyspark.errors import PythonException, PySparkRuntimeError
  from pyspark.testing.utils import PySparkTestCase, PySparkErrorTestUtils
label_desc: Use image node_id 4 for calling the ProfilerTests obj's underlying member method code with example usage: obj.do_computation() without return types