未验证 提交 89600fa1 编写于 作者: L Leo Chen 提交者: GitHub

[SemiAuto] move ut of auto_parallel (#55217)

* move ut of auto_parallel

* fix ut
上级 c5a191bb
......@@ -6,5 +6,3 @@ cc_library(
DEPS phi auto_parallel_proto proto_desc)
cc_library(auto_parallel DEPS op_dist_attr spmd_rules)
add_subdirectory(test)
......@@ -96,8 +96,8 @@ LayerNormSPMDRule::InferForward(const std::vector<DistTensorSpec>& input_specs,
std::string mean_axes;
std::string variance_axes;
if (begin_norm_axis > 1) {
mean_axes = "x";
variance_axes = "x";
mean_axes = "z";
variance_axes = "z";
} else {
mean_axes = "j";
variance_axes = "j";
......@@ -109,9 +109,8 @@ LayerNormSPMDRule::InferForward(const std::vector<DistTensorSpec>& input_specs,
<< x_axes << "," << scale_axes << "," << bias_axes << " --> "
<< out_axes << "," << mean_axes << "," << variance_axes
<< "](begin_norm_axis:" << begin_norm_axis
<< ",x=" << x_axes.substr(0, begin_norm_axis)
<< ",y=" << x_axes.substr(begin_norm_axis, x_ndim - begin_norm_axis)
<< ").";
<< ",z=" << x_axes.substr(0, begin_norm_axis) << ").";
// step2: Sharding Propogation
TensorDistAttr output_dist_attr_dst =
......
add_subdirectory(auto_parallel)
add_subdirectory(phi)
add_subdirectory(jit)
add_subdirectory(new_executor)
......
cc_test(device_mesh_test SRCS device_mesh_test.cc)
cc_test(process_mesh_test SRCS process_mesh_test.cc)
cc_test(dist_attr_test SRCS dist_attr_test.cc)
cc_test_old(dist_mapper_test SRCS dist_mapper_test.cc DEPS phi)
cc_test_old(spmd_rule_test SRCS spmd_rule_test.cc DEPS spmd_rules)
......@@ -236,7 +236,8 @@ TEST(LayerNormSPMDRule, Ctor) {
SPMDRuleBase* layer_norm_rule = SPMDRuleMap::Instance().Get("layer_norm");
// ijk[1, -1, -1],k[-1],k[-1] --> ijk[1, -1, -1] partial[1]
// ijk[1, -1, -1], k[-1], k[-1] --> ijk[1, -1, -1], z[1], z[1], z=ij,
// begin_norm_axis=2
std::pair<std::vector<TensorDistAttr>, std::vector<TensorDistAttr>>
infered_dist_attrs = layer_norm_rule->InferForward(
{x_dist_tensor_spec, scale_dist_tensor_spec, bias_dist_tensor_spec},
......@@ -261,7 +262,7 @@ TEST(LayerNormSPMDRule, Ctor) {
std::vector<int64_t>({1}));
VLOG(4) << "test1 done.";
// ijk[1, 0, -1],k[0],k[0] --> ijk[1, 0, -1]
// ijk[1, 0, -1],k[0],k[0] --> error, begin_norm_axis=2
x_dist_tensor_spec.set_dims_mapping({1, 0, -1});
scale_dist_tensor_spec.set_dims_mapping({0});
bias_dist_tensor_spec.set_dims_mapping({0});
......@@ -271,7 +272,8 @@ TEST(LayerNormSPMDRule, Ctor) {
attrs););
VLOG(4) << "test2 done.";
// ijk[0, -1, -1],z[-1],z[1] --> ijk[0, 1, -1, -1], z=jk
// ijk[0, -1, -1],y[-1],y[1] --> ijk[0, 1, -1], i[0], i[0], y=jk,
// begin_norm_axis=1
x_dist_tensor_spec.set_dims_mapping({0, -1, -1});
scale_dist_tensor_spec.set_dims_mapping({-1});
bias_dist_tensor_spec.set_dims_mapping({1});
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册