code: def get_edgelist(self, fetch=False):
      seed = 42
      if self._edgelist is None:
          self._edgelist = rmat(
              self._scale,
              (2**self._scale) * self._edgefactor,
              0.57,  # from Graph500
              0.19,  # from Graph500
              0.19,  # from Graph500
              seed or 42,
              clip_and_flip=False,
              scramble_vertex_ids=True,
              create_using=None,  # return edgelist instead of Graph instance
              mg=self.mg,
          )
          rng = np.random.default_rng(seed)
          if self.mg:
              self._edgelist["weight"] = self._edgelist.map_partitions(
                  lambda df: rng.random(size=len(df))
              )
          else:
              self._edgelist["weight"] = rng.random(
                  size=len(self._edgelist)
              )
  
      return self._edgelist
  
imports: import pytest
  import numpy
  import pytest_benchmark
  import rmm
  import dask_cudf
  from pylibcugraph.testing import gen_fixture_params_product
  import cugraph
  import cugraph.dask
  from cugraph.structure.number_map import NumberMap
  from cugraph.generators import rmat
  from cugraph.testing import utils, mg_utils
  from cugraph.utilities.utils import is_device_version_less_than
  from cugraph_benchmarking.params import directed_datasets, undirected_datasets, managed_memory, pool_allocator
label_desc: Use image node_id 3 for calling the RmatDataset obj's underlying member method code with example usage: obj.get_edgelist(fetch) and returns: self