diff --git a/mlx/einsum.cpp b/mlx/einsum.cpp index 62908877..b683733d 100644 --- a/mlx/einsum.cpp +++ b/mlx/einsum.cpp @@ -800,7 +800,7 @@ std::pair, PathInfo> einsum_path_helper( max_size = std::max(max_size, term_size(in, dim_map)); } - PathInfo path_info; + PathInfo path_info{}; // Get the full naive cost std::tie(path_info.naive_cost, path_info.naive_scaling) = @@ -813,6 +813,8 @@ std::pair, PathInfo> einsum_path_helper( std::iota(positions.begin(), positions.end(), 0); path.emplace_back( std::move(inputs), std::move(output), std::move(positions)); + path_info.optimized_cost = path_info.naive_cost; + path_info.optimized_scaling = path_info.naive_scaling; } else { std::tie(path, path_info.optimized_cost, path_info.optimized_scaling) = greedy_path(inputs, output, dim_map, path_info.naive_cost, max_size);