scalar_pow_tensor Class — pytorch Architecture
Architecture documentation for the scalar_pow_tensor class in pow_test.cpp from the pytorch codebase.
Entity Profile
Source Code
aten/src/ATen/test/pow_test.cpp lines 163–191
template<typename Vals, typename Pows>
void scalar_pow_tensor(const Vals vals, c10::ScalarType vals_dtype, const Pows pows, c10::ScalarType pows_dtype) {
using T = typename Pows::value_type;
const auto pow_tensor = torch::tensor(pows, pows_dtype);
for (const auto val : vals) {
const auto actual_pow = torch::pow(val, pow_tensor);
auto actual_pow_out1 = torch::empty_like(actual_pow);
const auto actual_pow_out2 =
torch::pow_out(actual_pow_out1, val, pow_tensor);
int i = 0;
for (const auto pow : pows) {
const auto exp = typed_pow(static_cast<T>(val), T(pow));
const auto act_pow = actual_pow[i].template item<T>();
assert_eq<T>(val, act_pow, exp);
const auto act_pow_out1 = actual_pow_out1[i].template item<T>();
assert_eq<T>(val, act_pow_out1, exp);
const auto act_pow_out2 = actual_pow_out2[i].template item<T>();
assert_eq<T>(val, act_pow_out2, exp);
i++;
}
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free