def METHOD_NAME():
    P = dace.symbol('P', dace.int32)
    @dace.program
    def pgrid_bcast(A: dace.int32[10]):
        pgrid = dace.comm.Cart_create([1, P])
        dace.comm.Bcast(A, grid=pgrid)
    from mpi4py import MPI
    commworld = MPI.COMM_WORLD
    rank = commworld.Get_rank()
    size = commworld.Get_size()
    if size < 2:
        raise ValueError("Please run this test with at least two processes.")
    sdfg = None
    if rank == 0:
        sdfg = pgrid_bcast.to_sdfg()
    func = utils.distributed_compile(sdfg, commworld)
    if rank == 0:
        A = np.arange(10, dtype=np.int32)
    else:
        A = np.zeros((10, ), dtype=np.int32)
    func(A=A, P=size)
    assert (np.array_equal(A, np.arange(10, dtype=np.int32)))