convert Class — pytorch Architecture
Architecture documentation for the convert class in vec_bfloat16.h from the pytorch codebase.
Entity Profile
Source Code
aten/src/ATen/cpu/vec/sve/vec_bfloat16.h lines 555–579
template <>
inline void convert(const BFloat16* src, BFloat16* dst, int64_t n) {
const int64_t fraction = n % Vectorized<BFloat16>::size();
#pragma unroll
for (int64_t i = 0; i < n - fraction; i += Vectorized<BFloat16>::size()) {
svst1_bf16(
ptrue,
const_cast<bfloat16_t*>(reinterpret_cast<const bfloat16_t*>(dst)) + i,
svldnt1_bf16(
ptrue,
const_cast<bfloat16_t*>(reinterpret_cast<const bfloat16_t*>(src)) +
i));
}
#pragma unroll
for (int64_t i = n - fraction; i < n; i += Vectorized<BFloat16>::size()) {
svbool_t pg = svwhilelt_b16(i, n);
svst1_bf16(
pg,
const_cast<bfloat16_t*>(reinterpret_cast<const bfloat16_t*>(dst)) + i,
svldnt1_bf16(
pg,
const_cast<bfloat16_t*>(reinterpret_cast<const bfloat16_t*>(src)) +
i));
}
}
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free