/
vuron
/
adept
Обзор
Документация
Войти
/
vuron
/
adept
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/backends/cpu/transpose.hpp
21 строка
637 B
kolkir
Make OpenBLASS local dependency
02 мар 2025, 14:28
02 мар 2025, 14:28
4e8ae16
Код
Авторство
О чём код?
#pragma once #include <cblas.h> #include <adept/tensor_props.hpp> namespace adept { template <typename DataType> void transpose_mat(index_t m, index_t n, const DataType* src, DataType* dst) { if constexpr (std::is_same_v<DataType, float32_t>) { cblas_somatcopy(CblasRowMajor, CblasTrans, m, n, 1.0f, src, n, dst, m); } else if constexpr (std::is_same_v<DataType, float64_t>) { cblas_domatcopy(CblasRowMajor, CblasTrans, m, n, 1.0f, src, n, dst, m); } else { // We don't use static_assert to make code compilable THROW_ERROR("transpose_mat doesn't support {}", to_dtype<DataType>()); } } } // namespace adept