Home / Class/ _geometry_is_contiguous Class — pytorch Architecture

_geometry_is_contiguous Class — pytorch Architecture

Architecture documentation for the _geometry_is_contiguous class in TensorGeometry.cpp from the pytorch codebase.

Entity Profile

Source Code

aten/src/ATen/TensorGeometry.cpp lines 7–25

template <typename T>
static bool _geometry_is_contiguous(ArrayRef<T> sizes, ArrayRef<T> strides) {
  assert(!overflows<std::int64_t>(sizes.size()));
  auto dim = static_cast<std::int64_t>(sizes.size());
  T expected_stride = 1;
  bool contig_if_nonempty = true;
  for (int64_t i = dim - 1; i >= 0; i--) {
    if (sizes[i] == 0) {
      return true;
    }
    if (contig_if_nonempty) {
      if (sizes[i] != 1 && strides[i] != expected_stride) {
        contig_if_nonempty = false;
      }
      expected_stride *= sizes[i];
    }
  }
  return contig_if_nonempty;
}

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free