code: def test_shape_1_1(ctx):
      a = [torch.rand(9), torch.rand(10), torch.rand(11)]
      b = [torch.rand(9), torch.rand(10), torch.rand(11)]
      da = make_dist(ctx, a)
      db = make_dist(ctx, b)
      la = torch.concat(a)
      lb = torch.concat(b)
      # distributed
      assert torch.allclose(torch.matmul(da, db), torch.matmul(la, lb))
      assert torch.allclose(
          torch.rmatmul_f(da, db), torch.rmatmul_f(la, lb)
      )
      # local
      assert torch.allclose(torch.matmul(da, lb), torch.matmul(la, lb))
      assert torch.allclose(
          torch.rmatmul_f(da, lb), torch.rmatmul_f(la, lb)
      )
  
file_path: FATE/python/fate/test/test_matmul.py
imports: import torch
  from fate.arch.computing.backends.standalone import CSession
  from fate.arch.context import Context
  from fate.arch.federation.backends.standalone import StandaloneFederation
  from fate.arch.tensor import DTensor
  from pytest import fixture
label_desc: Use image node_id 6 for calling a global function with example usage: test_shape_1_1(ctx) without return types