/external/tensorflow/tensorflow/compiler/tf2xla/ |
D | shape_util.cc | 50 xla::StatusOr<bool> MakeLayout(absl::Span<const int64> minor_to_major, in MakeLayout() argument 52 if (std::all_of(minor_to_major.begin(), minor_to_major.end(), in MakeLayout() 56 std::vector<bool> dim_present(minor_to_major.size(), false); in MakeLayout() 57 for (auto dim : minor_to_major) { in MakeLayout() 58 const int minor_to_major_size = minor_to_major.size(); in MakeLayout() 61 " rank=", minor_to_major.size()); in MakeLayout() 68 *layout = xla::LayoutUtil::MakeLayout(minor_to_major); in MakeLayout() 73 absl::Span<const int64> minor_to_major, in AssignLayout() argument 77 TF_ASSIGN_OR_RETURN(bool has_layout, MakeLayout(minor_to_major, &layout)); in AssignLayout() 174 const xla::Shape& input_shape, absl::Span<const int64> minor_to_major, in GetShapeWithLayout() argument [all …]
|
D | shape_util.h | 73 const xla::Shape& input_shape, absl::Span<const int64> minor_to_major,
|
/external/tensorflow/tensorflow/compiler/xla/ |
D | layout_util.cc | 46 void SetDefaultLayoutToContainer(T* minor_to_major) { in SetDefaultLayoutToContainer() argument 50 const int64 size = minor_to_major->size(); in SetDefaultLayoutToContainer() 52 (*minor_to_major)[i] = size - 1 - i; in SetDefaultLayoutToContainer() 59 absl::Span<const int64> minor_to_major, absl::Span<const Tile> tiles, in MakeLayout() argument 63 for (int64 dimension_number : minor_to_major) { in MakeLayout() 109 auto* minor_to_major = layout.mutable_minor_to_major(); in CreateDefaultLayoutForRank() local 110 minor_to_major->resize(rank, 0); in CreateDefaultLayoutForRank() 111 SetDefaultLayoutToContainer(minor_to_major); in CreateDefaultLayoutForRank() 153 auto* minor_to_major = shape->mutable_layout()->mutable_minor_to_major(); in SetToDefaultLayout() local 154 minor_to_major->resize(shape->dimensions_size(), 0); in SetToDefaultLayout() [all …]
|
D | layout.h | 87 explicit Layout(absl::Span<const int64> minor_to_major) in Layout() argument 89 minor_to_major_(minor_to_major.begin(), minor_to_major.end()) {} in Layout() 93 Layout(absl::Span<const int64> minor_to_major, absl::Span<const Tile> tiles, 96 minor_to_major_(minor_to_major.begin(), minor_to_major.end()), in format_() 173 int64 minor_to_major(int index) const { return minor_to_major_.at(index); } in minor_to_major() function 186 absl::Span<const int64> minor_to_major() const { return minor_to_major_; } in minor_to_major() function
|
D | layout.cc | 52 for (const int64 dimension : proto.minor_to_major()) { in CreateFromProto() 67 for (const int64 dimension : minor_to_major()) { in ToProto() 90 return absl::StrCat("{", absl::StrJoin(minor_to_major(), ","), in ToString() 102 if (lhs.format() == DENSE && lhs.minor_to_major() != rhs.minor_to_major()) { in operator ()()
|
D | shape.cc | 105 for (int64 i = 0; i < layout_.minor_to_major().size();) { in DeleteDimension() 106 if (layout_.minor_to_major(i) == dim_to_delete) { in DeleteDimension() 111 if (layout_.minor_to_major(i) > dim_to_delete) { in DeleteDimension()
|
D | shape_util.cc | 122 absl::Span<const int64> minor_to_major, absl::Span<const Tile> tiles, in MakeShapeWithLayoutInternal() argument 124 if (dimensions.size() != minor_to_major.size()) { in MakeShapeWithLayoutInternal() 126 dimensions.size(), minor_to_major.size()); in MakeShapeWithLayoutInternal() 140 minor_to_major, tiles, element_size_in_bits, memory_space); in MakeShapeWithLayoutInternal() 225 auto* minor_to_major = layout->mutable_minor_to_major(); in FillNewShape() local 237 minor_to_major->push_back(ndims - 1 - i); in FillNewShape() 311 absl::Span<const int64> minor_to_major, absl::Span<const Tile> tiles, in MakeShapeWithLayout() argument 314 MakeShapeWithLayoutInternal(element_type, dimensions, minor_to_major, in MakeShapeWithLayout() 1104 inv_permutation, AsInt64Slice(shape.layout().minor_to_major()))) { in PermuteDimensions() 1252 AsInt64Slice(output_shape.layout().minor_to_major())), in TransposeIsBitcast() [all …]
|
D | layout_util.h | 39 static Layout MakeLayout(absl::Span<const int64> minor_to_major,
|
/external/tensorflow/tensorflow/compiler/mlir/xla/tests/translate/ |
D | simple.hlo | 14 minor_to_major: 0 30 minor_to_major: 0 47 minor_to_major: 0 82 minor_to_major: 0 91 minor_to_major: 0 113 minor_to_major: 0 122 minor_to_major: 0
|
D | layouts_and_names.mlir | 23 minor_to_major = dense<[ 1, 3, 2, 0 ]> : tensor<4xindex>, 31 …%cst_1 = "std.constant"() {value = dense<[[42]]> : tensor<1x1xi32>, minor_to_major = dense<[0, 1]>…
|
D | layouts_and_names.hlotxt | 9 …// %0 = "mhlo.convolution"{{.*}}minor_to_major = dense<[1, 3, 2, 0]> : tensor<4xindex>{{.*}} loc("…
|
/external/tensorflow/tensorflow/compiler/xla/python/ |
D | dlpack.cc | 172 for (int i : shape.layout().minor_to_major()) { in StridesForShape() 182 std::vector<int64> minor_to_major(dims.size()); in StridesToLayout() local 183 std::iota(minor_to_major.begin(), minor_to_major.end(), 0); in StridesToLayout() 184 absl::c_sort(minor_to_major, [&](int a, int b) { in StridesToLayout() 194 for (int64 d : minor_to_major) { in StridesToLayout() 205 return minor_to_major; in StridesToLayout() 340 std::vector<int64> minor_to_major; in DLPackManagedTensorToBuffer() local 346 TF_ASSIGN_OR_RETURN(minor_to_major, StridesToLayout(dimensions, strides)); in DLPackManagedTensorToBuffer() 348 minor_to_major.resize(dlmt->dl_tensor.ndim); in DLPackManagedTensorToBuffer() 349 std::iota(minor_to_major.rbegin(), minor_to_major.rend(), 0); in DLPackManagedTensorToBuffer() [all …]
|
/external/tensorflow/tensorflow/compiler/xla/service/ |
D | layout_assignment_test.cc | 63 auto minor_to_major = in LayoutOf() local 64 FindInstruction(m, name)->shape().layout().minor_to_major(); in LayoutOf() 65 return std::vector<int64>(minor_to_major.begin(), minor_to_major.end()); in LayoutOf() 69 absl::Span<const int64> minor_to_major) { in ExpectLayoutIs() argument 70 const Layout expected = LayoutUtil::MakeLayout(minor_to_major); in ExpectLayoutIs() 79 for (const absl::Span<const int64> minor_to_major : minor_to_majors) { in ExpectTupleLayoutIs() local 80 const Layout expected = LayoutUtil::MakeLayout(minor_to_major); in ExpectTupleLayoutIs() 94 for (auto& minor_to_major : minor_to_majors) { in TEST_F() local 106 Layout layout = LayoutUtil::MakeLayout(minor_to_major); in TEST_F() 163 for (auto& minor_to_major : minor_to_majors) { in TEST_F() local [all …]
|
/external/tensorflow/tensorflow/compiler/xla/tests/ |
D | client_library_test_base.cc | 195 std::vector<int64> minor_to_major(expected.shape().rank()); in ComputeAndCompareLiteralWithAllOutputLayouts() local 196 std::iota(minor_to_major.begin(), minor_to_major.end(), 0); in ComputeAndCompareLiteralWithAllOutputLayouts() 200 AsInt64Slice(expected.shape().dimensions()), minor_to_major); in ComputeAndCompareLiteralWithAllOutputLayouts() 206 } while (std::next_permutation(minor_to_major.begin(), minor_to_major.end())); in ComputeAndCompareLiteralWithAllOutputLayouts() 238 std::vector<int64> minor_to_major(literal.shape().rank()); in ComputeAndCompareLiteralWithAllInputLayouts() local 239 std::iota(minor_to_major.begin(), minor_to_major.end(), 0); in ComputeAndCompareLiteralWithAllInputLayouts() 242 literal.Relayout(LayoutUtil::MakeLayout(minor_to_major)); in ComputeAndCompareLiteralWithAllInputLayouts() 252 std::next_permutation(minor_to_major.begin(), minor_to_major.end())); in ComputeAndCompareLiteralWithAllInputLayouts()
|
D | matrix_ops_simple_test.cc | 191 auto minor_to_major = [](bool row_major) -> std::vector<int64> { in TestImpl() local 204 lhs, LayoutUtil::MakeLayout(minor_to_major(row_major))))); in TestImpl() 208 rhs, LayoutUtil::MakeLayout(minor_to_major(row_major))))); in TestImpl()
|
D | broadcast_simple_test.cc | 57 absl::Span<const int64> minor_to_major, in MakeR3Data() argument 61 *r3_shape = ShapeUtil::MakeShapeWithLayout(F32, bounds, minor_to_major); in MakeR3Data() 64 LayoutUtil::MakeLayout(minor_to_major)); in MakeR3Data() 71 absl::Span<const int64> minor_to_major, in MakeR2Data() argument 75 *r2_shape = ShapeUtil::MakeShapeWithLayout(F32, bounds, minor_to_major); in MakeR2Data() 78 LayoutUtil::MakeLayout(minor_to_major)); in MakeR2Data()
|
D | copy_test.cc | 138 literal_layout->minor_to_major(1), literal_layout->minor_to_major(0)}; in XLA_TEST_F()
|
/external/tensorflow/tensorflow/core/tpu/kernels/ |
D | infeed_ops.cc | 83 permutation[i] = xla_shape.layout().minor_to_major(rank - 1 - i); in TransposeTensor() 116 std::vector<int64>* minor_to_major) { in GetLayoutOverride() argument 120 TF_RETURN_IF_ERROR(ctx->GetAttr(attrn_name, minor_to_major)); in GetLayoutOverride() 121 return !minor_to_major->empty(); in GetLayoutOverride() 128 std::vector<int64> minor_to_major; in GetInfeedShapeWithLayout() local 130 GetLayoutOverride(ctx, attrn_name, &minor_to_major)); in GetInfeedShapeWithLayout() 150 return GetShapeWithLayout(input_shape, minor_to_major, layout_func, in GetInfeedShapeWithLayout()
|
/external/tensorflow/tensorflow/stream_executor/tpu/ |
D | c_api_conversions.cc | 272 CopyVector(layout.minor_to_major(), &c_layout->minor_to_major); in ToC() 279 absl::Span<const typename tensorflow::int64> minor_to_major = in FromC() local 280 MakeSpan(c_layout->minor_to_major); in FromC() 288 return xla::Layout(minor_to_major, tiles, c_layout->element_size_in_bits, in FromC() 293 if (c_layout->minor_to_major.size > TPU_C_API_MAX_INLINED) { in Free() 294 delete[] c_layout->minor_to_major.heap; in Free()
|
/external/tensorflow/tensorflow/compiler/mlir/xla/ |
D | type_to_shape.cc | 145 llvm::SmallVector<int64, 4> minor_to_major; in TypeToShape() local 148 minor_to_major.push_back(pr.second); in TypeToShape() 160 minor_to_major); in TypeToShape()
|
D | hlo_function_importer.cc | 389 absl::Span<const int64> minor_to_major = l.minor_to_major(); in ImportInstructionImpl() local 391 for (int64 i : minor_to_major) { in ImportInstructionImpl() 852 !instruction->shape().layout().minor_to_major().empty() && in ImportInstruction() 992 llvm::SmallVector<int64_t, 4> minor_to_major( in SetLayoutForMlir() local 993 shape.layout().minor_to_major().begin(), in SetLayoutForMlir() 994 shape.layout().minor_to_major().end()); in SetLayoutForMlir() 997 mlir::Builder(op->getContext()).getIndexTensorAttr(minor_to_major)); in SetLayoutForMlir()
|
/external/tensorflow/tensorflow/compiler/xla/g3doc/ |
D | shapes.md | 63 repeated int64 minor_to_major = 1; 71 The only required field is `minor_to_major`. This field describes the 73 `minor_to_major` are an ordering of the dimensions of the array (`0` to `N-1` 87 `minor_to_major` field in the layout is `[0, 1]` then dimension `0` is the 99 On the other hand, if the `minor_to_major` field in the layout is `[1, 0]` then
|
/external/tensorflow/tensorflow/compiler/xla/service/cpu/ |
D | shape_partition.cc | 30 const int64 dimension = shape_.layout().minor_to_major(i); in Run() 108 dimensions_[i] = shape_.layout().minor_to_major( in ShapePartitionIterator()
|
/external/tensorflow/tensorflow/compiler/mlir/xla/transforms/ |
D | mhlo_to_lhlo_with_xla.cc | 466 llvm::SmallVector<int64_t, 4> minor_to_major( in RewriteFusionOperand() local 467 shape.layout().minor_to_major().begin(), in RewriteFusionOperand() 468 shape.layout().minor_to_major().end()); in RewriteFusionOperand() 734 std::vector<int64_t> minor_to_major(layout.minor_to_major_size()); in EmitDnnConvolution() local 735 absl::c_transform(layout.minor_to_major(), minor_to_major.begin(), in EmitDnnConvolution() 737 return builder_.getI64ArrayAttr(minor_to_major); in EmitDnnConvolution() 1324 llvm::SmallVector<int64_t, 4> minor_to_major(layout.minor_to_major().begin(), in GetLayoutAttribute() local 1325 layout.minor_to_major().end()); in GetLayoutAttribute() 1326 return builder->getIndexTensorAttr(minor_to_major); in GetLayoutAttribute()
|
/external/tensorflow/tensorflow/compiler/xla/python_api/ |
D | xla_shape.py | 69 self.message.layout.minor_to_major.extend(layout)
|