code: def gather_weight_scatter(x, edge_index, edge_weight, reduce="sum"):
      row, col = edge_index
      x_j = x[row] * edge_weight.view(-1, 1)
      return scatter(x_j, col, dim_size=x.size(0), reduce=reduce)
  
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 3 for calling a global function with example usage: gather_weight_scatter(x, edge_index, edge_weight, reduce) and returns: scatter