def METHOD_NAME():
    sdfg = softmax.to_sdfg()
    sdfg.name = 'softmax_2part'
    sdfg.simplify()
    X_in = np.random.rand(H.get(), B.get(), SN.get(), SM.get()).astype(np.float32)
    csdfg = sdfg.compile()
    res1 = csdfg(X_in=X_in, H=H, B=B, SN=SN, SM=SM)
    del csdfg
    subgraph = get_partition(sdfg, sdfg.nodes()[0])
    expand_reduce(sdfg, sdfg.nodes()[0], subgraph)
    expand_maps(sdfg, sdfg.nodes()[0], subgraph)
    fusion(sdfg, sdfg.nodes()[0], subgraph)
    csdfg = sdfg.compile()
    res2 = csdfg(X_in=X_in, H=H, B=B, SN=SN, SM=SM)
    del csdfg
    assert np.allclose(res1, res2)
    print("PASS")
    return