code: def csr_row_normalize_l2(X, inplace=True):
      """Row normalize for csr matrix using the l2 norm"""
      if not inplace:
          X = X.copy()
  
      kernel = _map_l2_norm_kernel(
          (X.dtype, X.indices.dtype, X.indptr.dtype)
      )
      kernel(
          (math.ceil(X.shape[0] / 32),),
          (32,),
          (X.data, X.indices, X.indptr, X.shape[0]),
      )
  
      return X
  
file_path: cuml/python/cuml/common/sparsefuncs.py
imports: import math
  import cuml
  from cuml.internals.input_utils import input_to_cuml_array, input_to_cupy_array
  from cuml.internals.memory_utils import with_cupy_rmm
  from cuml.internals.import_utils import has_scipy
  from cuml.common.kernel_utils import cuda_kernel_factory
  from cuml.internals.safe_imports import cpu_only_import
  from cuml.internals.safe_imports import gpu_only_import
  from cuml.internals.safe_imports import gpu_only_import_from
label_desc: Use image node_id 4 for calling a global function with example usage: csr_row_normalize_l2(X, inplace) and returns: X