code: def forward(
      ctx,
      input,
      weight,
      bias,
      running_mean,
      running_variance,
      minibatch_mean,
      minibatch_inv_var,
      momentum,
      eps,
      group_size,
      group_rank,
      fwd_buffers,
      bwd_buffers,
  ):
      ctx.save_for_backward(
          input, weight, minibatch_mean, minibatch_inv_var
      )
      ctx.eps = eps
      ctx.bn_group = group_size
      ctx.rank_id = group_rank
      ctx.peer_buffers = bwd_buffers
      return cudnn_gbn_lib.forward(
          input,
          weight,
          bias,
          running_mean,
          running_variance,
          minibatch_mean,
          minibatch_inv_var,
          momentum,
          eps,
          group_size,
          group_rank,
          fwd_buffers,
      )
  
file_path: apex/apex/contrib/cudnn_gbn/batch_norm.py
imports: import torch
  from torch.nn.modules.batchnorm import _BatchNorm
  from torch.nn import functional
  from torch import Tensor
  import peer_memory_cuda
  import cudnn_gbn_lib
  from torch.cuda.amp import custom_fwd, custom_bwd
label_desc: Use image node_id 1 for calling the _GroupBatchNorm2d obj's underlying member method code with example usage: obj.forward(ctx, input, weight, bias, running_mean, running_variance, minibatch_mean, minibatch_inv_var, momentum, eps, group_size, group_rank, fwd_buffers, bwd_buffers) and returns: cudnn_gbn_lib