code: def bench_cugraph_dgl_uniform_neighbor_sample(
      benchmark, graph_objs, batch_size, fanout, with_replacement
  ):
      G = graph_objs
      uns_args = get_uniform_neighbor_sample_args(
          G, _seed, batch_size, fanout, with_replacement
      )
  
      # Reverse to match cugraph
      # DGL does from dst to src
      fanout_val = uns_args["fanout"]
      fanout_val.reverse()
      sampler = dgl.dataloading.NeighborSampler(uns_args["fanout"])
      sampler_f = sampler.sample_blocks
  
      # Warmup
      _ = sampler_f(g=G, seed_nodes=uns_args["seed_nodes"])
      # print(f"\n{uns_args}")
      result_seed_nodes, output_nodes, blocks = benchmark(
          sampler_f,
          g=G,
          seed_nodes=uns_args["seed_nodes"],
      )
      dt = str(result_seed_nodes.dtype)
      llen = len(result_seed_nodes)
      print(f"\nresult list len: {llen} , dtype={dt}")
  
imports: from dask_cuda import LocalCUDACluster
  from dask.distributed import Client
  import dask_cudf
  import time
  import os
  import pytest
  import numpy
  import cupy
  import pytest_benchmark
  from cugraph.generators import rmat
  from cugraph.experimental import datasets
  from cugraph_benchmarking import params
  from cugraph_dgl import CuGraphStorage
  from cugraph.dask.comms import comms
  import dgl
  import torch
  import rmm
label_desc: Use image node_id 5 for calling a global function with example usage: bench_cugraph_dgl_uniform_neighbor_sample(benchmark, graph_objs, batch_size, fanout, with_replacement) without return types