code: def benchmark(size, provider):
      x = torch.rand(size, device="cuda", dtype=torch.float32)
      y = torch.rand(size, device="cuda", dtype=torch.float32)
      quantiles = [0.5, 0.2, 0.8]
      if provider == "torch":
          ms, min_ms, max_ms = triton.testing.do_bench(
              lambda: x + y, quantiles=quantiles
          )
      if provider == "triton":
          ms, min_ms, max_ms = triton.testing.do_bench(
              lambda: add(x, y), quantiles=quantiles
          )
      gbps = lambda ms: 12 * size / ms * 1e-6
      return gbps(ms), gbps(max_ms), gbps(min_ms)
  
imports: import torch
  import triton
  import triton.language
label_desc: Use image node_id 3 for calling a global function with example usage: benchmark(size, provider) and returns: gbps,  gbps,  gbps