3#include "lamppp/tensor/cpu/kernels.hpp"
4#include "lamppp/tensor/cpu/meta_handler.hpp"
5#include "lamppp/tensor/cpu/offset_util.hpp"
6#include "lamppp/tensor/cpu/ptr_pack.hpp"
7#include "lamppp/tensor/tensor_impl.hpp"
11constexpr size_t kNArgs = BinaryMetaHandler::kNumElem;
14template <
typename PtrList,
typename OpFn>
15void vectorized_binary_kernel(PtrList ptr_, OpFn fn_,
size_t i);
17template <
typename PtrList,
typename OpFn>
18void binary_kernel_launcher(PtrList ptr_, OpFn fn_,
size_t size);
22template <
template <
typename>
class OpFunctor,
typename... Args>
27extern template void binary_dispatch_handler<SubFunctor>(BinaryMetaHandler&);
28extern template void binary_dispatch_handler<MulFunctor>(BinaryMetaHandler&);
29extern template void binary_dispatch_handler<DivFunctor>(BinaryMetaHandler&);
30extern template void binary_dispatch_handler<PowFunctor>(BinaryMetaHandler&);
31extern template void binary_dispatch_handler<EqFunctor>(BinaryMetaHandler&);
32extern template void binary_dispatch_handler<NeFunctor>(BinaryMetaHandler&);
33extern template void binary_dispatch_handler<GeFunctor>(BinaryMetaHandler&);
34extern template void binary_dispatch_handler<GtFunctor>(BinaryMetaHandler&);
35extern template void binary_dispatch_handler<LeFunctor>(BinaryMetaHandler&);
36extern template void binary_dispatch_handler<LtFunctor>(BinaryMetaHandler&);
template void binary_dispatch_handler< AddFunctor >(BinaryMetaHandler &)
void binary_dispatch_handler(BinaryMetaHandler &meta, Args &&... args)
Definition binary.cpp:21