mirror of
https://gitlab.com/libeigen/eigen.git
synced 2026-04-10 11:34:33 +08:00
Adding TensorIndexTuple and TensorTupleReduceOP backend (ArgMax/Min) for sycl; fixing the address space issue for const TensorMap; converting all discard_write to write due to data missmatch.
This commit is contained in:
@@ -32,6 +32,8 @@ struct MakeLocalPointer {
|
||||
|
||||
|
||||
namespace Eigen {
|
||||
template<typename StrideDims, typename XprType> class TensorTupleReducerDeviceOp;
|
||||
template<typename StrideDims, typename ArgType> struct TensorEvaluator<const TensorTupleReducerDeviceOp<StrideDims, ArgType>, SyclKernelDevice>;
|
||||
namespace TensorSycl {
|
||||
namespace internal {
|
||||
|
||||
@@ -48,6 +50,13 @@ template<typename T> struct GetType<false, T>{
|
||||
typedef T Type;
|
||||
};
|
||||
|
||||
template <bool Conds, size_t X , size_t Y > struct ValueCondition {
|
||||
static const size_t Res =X;
|
||||
};
|
||||
template<size_t X, size_t Y> struct ValueCondition<false, X , Y> {
|
||||
static const size_t Res =Y;
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -80,6 +89,9 @@ template<typename T> struct GetType<false, T>{
|
||||
/// this is used for extracting tensor reduction
|
||||
#include "TensorReductionSycl.h"
|
||||
|
||||
// TensorArgMaxSycl.h
|
||||
#include "TensorArgMaxSycl.h"
|
||||
|
||||
/// this is used for extracting tensor convolution
|
||||
#include "TensorConvolutionSycl.h"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user