Home / Class/ cpu_serial_kernel_vec Class — pytorch Architecture

cpu_serial_kernel_vec Class — pytorch Architecture

Architecture documentation for the cpu_serial_kernel_vec class in Loops.h from the pytorch codebase.

Entity Profile

Source Code

aten/src/ATen/native/cpu/Loops.h lines 377–388

template <typename func_t, typename vec_func_t>
void cpu_serial_kernel_vec(TensorIteratorBase& iter, func_t&& op, vec_func_t&& vop, const Range& range) {
  using traits = function_traits<func_t>;
  // this could be extended to work with void return types
  TORCH_INTERNAL_ASSERT(iter.ninputs() == traits::arity);
  TORCH_INTERNAL_ASSERT(iter.noutputs() == 1);
  // dynamic casting not currently supported on CPU
  TORCH_INTERNAL_ASSERT(!needs_dynamic_casting<func_t>::check(iter));

  iter.serial_for_each(make_vectorized_loop2d(std::forward<func_t>(op), std::forward<vec_func_t>(vop)), range);
  iter.cast_outputs();
}

Analyze Your Own Codebase

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

Try Supermodel Free