code: def fused_gather_scatter(
      x, edge_index, reduce=["sum", "mean", "max"]
  ):
      row, col = edge_index
      x_j = x[row]
      outs = [
          scatter(x_j, col, dim_size=x.size(0), reduce=r)
          for r in reduce
      ]
      return torch.cat(outs, dim=-1)
  
file_path: pytorch_geometric/test/nn/test_compile_basic.py
imports: import torch
  from torch_geometric.profile import benchmark
  from torch_geometric.testing import onlyFullTest, onlyLinux, withCUDA, withPackage
  from torch_geometric.utils import scatter
label_desc: Use image node_id 5 for calling a global function with example usage: fused_gather_scatter(x, edge_index, reduce) and returns: torch