Skip to content
Snippets Groups Projects
Commit 9a0248f6 authored by Olivier BICHLER's avatar Olivier BICHLER
Browse files

Unified parameters

parent ba9ba4b7
No related branches found
No related tags found
2 merge requests!10Unified interface for attributes,!6Tensor setter getter
Pipeline #32211 failed
This commit is part of merge request !10. Comments created here will be created in the context of that merge request.
Showing
with 27 additions and 27 deletions
...@@ -29,11 +29,11 @@ namespace Aidge { ...@@ -29,11 +29,11 @@ namespace Aidge {
class AvgPoolingImpl2DForward_cpu class AvgPoolingImpl2DForward_cpu
: public Registrable<AvgPoolingImpl2DForward_cpu, : public Registrable<AvgPoolingImpl2DForward_cpu,
std::tuple<DataType, DataType>, std::tuple<DataType, DataType>,
void(const AvgPooling_Op<2>::Parameters &, const std::array<DimSize_t, 4> &, const void *, void *)> {}; void(const AvgPooling_Op<2>::Params &, const std::array<DimSize_t, 4> &, const void *, void *)> {};
class AvgPoolingImpl2DBackward_cpu class AvgPoolingImpl2DBackward_cpu
: public Registrable<AvgPoolingImpl2DBackward_cpu, : public Registrable<AvgPoolingImpl2DBackward_cpu,
std::tuple<DataType, DataType>, std::tuple<DataType, DataType>,
void(const AvgPooling_Op<2>::Parameters &, const std::array<DimSize_t, 4> &, const void *, void *)> {}; void(const AvgPooling_Op<2>::Params &, const std::array<DimSize_t, 4> &, const void *, void *)> {};
class AvgPoolingImpl2D_cpu : public OperatorImpl { class AvgPoolingImpl2D_cpu : public OperatorImpl {
private: private:
......
...@@ -32,7 +32,7 @@ namespace Aidge { ...@@ -32,7 +32,7 @@ namespace Aidge {
* @param output_ Output Tensor. * @param output_ Output Tensor.
*/ */
template <class I, class O> template <class I, class O>
void AvgPoolingImpl2D_cpu_forward_kernel(const AvgPooling_Op<2>::Parameters &params, void AvgPoolingImpl2D_cpu_forward_kernel(const AvgPooling_Op<2>::Params &params,
const std::array<DimSize_t, 4> &dims, const std::array<DimSize_t, 4> &dims,
const void *input_, const void *input_,
void *output_) { void *output_) {
......
...@@ -29,7 +29,7 @@ namespace Aidge { ...@@ -29,7 +29,7 @@ namespace Aidge {
class BatchNormImpl2DForward_cpu class BatchNormImpl2DForward_cpu
: public Registrable<BatchNormImpl2DForward_cpu, : public Registrable<BatchNormImpl2DForward_cpu,
std::tuple<DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType>,
void(const BatchNorm_Op<2>::Parameters &, void(const BatchNorm_Op<2>::Params &,
const std::array<DimSize_t, 4> &, const std::array<DimSize_t, 4> &,
const void *, const void *,
const void *, const void *,
...@@ -41,7 +41,7 @@ class BatchNormImpl2DForward_cpu ...@@ -41,7 +41,7 @@ class BatchNormImpl2DForward_cpu
class BatchNormImpl2DBackward_cpu class BatchNormImpl2DBackward_cpu
: public Registrable<BatchNormImpl2DBackward_cpu, : public Registrable<BatchNormImpl2DBackward_cpu,
std::tuple<DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType>,
void(const BatchNorm_Op<2>::Parameters &, void(const BatchNorm_Op<2>::Params &,
const std::array<DimSize_t, 4> &, const std::array<DimSize_t, 4> &,
const void *, const void *,
const void *, const void *,
......
...@@ -37,7 +37,7 @@ namespace Aidge { ...@@ -37,7 +37,7 @@ namespace Aidge {
* @param output_ Output Tensor. * @param output_ Output Tensor.
*/ */
template <class I, class P, class O> template <class I, class P, class O>
void BatchNormImpl2D_cpu_forward_kernel(const BatchNorm_Op<2>::Parameters &params, const std::array<DimSize_t, 4> &dims, void BatchNormImpl2D_cpu_forward_kernel(const BatchNorm_Op<2>::Params &params, const std::array<DimSize_t, 4> &dims,
const void *input_, const void *scale_, const void *shift_, void *batchMean_, void *batchVar_, void *output_, const bool freeze) { const void *input_, const void *scale_, const void *shift_, void *batchMean_, void *batchVar_, void *output_, const bool freeze) {
// FIXME: missing convolution parameters as arguments // FIXME: missing convolution parameters as arguments
const I *input = static_cast<const I *>(input_); const I *input = static_cast<const I *>(input_);
......
...@@ -29,12 +29,12 @@ namespace Aidge { ...@@ -29,12 +29,12 @@ namespace Aidge {
class ConvDepthWiseImpl2DForward_cpu class ConvDepthWiseImpl2DForward_cpu
: public Registrable<ConvDepthWiseImpl2DForward_cpu, : public Registrable<ConvDepthWiseImpl2DForward_cpu,
std::tuple<DataType, DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType, DataType>,
void(const ConvDepthWise_Op<2>::Parameters &, const std::array<DimSize_t, 4> &, const void *, void(const ConvDepthWise_Op<2>::Params &, const std::array<DimSize_t, 4> &, const void *,
const void *, const void *, void *)> {}; const void *, const void *, void *)> {};
class ConvDepthWiseImpl2DBackward_cpu class ConvDepthWiseImpl2DBackward_cpu
: public Registrable<ConvDepthWiseImpl2DBackward_cpu, : public Registrable<ConvDepthWiseImpl2DBackward_cpu,
std::tuple<DataType, DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType, DataType>,
void(const ConvDepthWise_Op<2>::Parameters &, const std::array<DimSize_t, 4> &, const void *, void(const ConvDepthWise_Op<2>::Params &, const std::array<DimSize_t, 4> &, const void *,
const void *, const void *, void *)> {}; const void *, const void *, void *)> {};
class ConvDepthWiseImpl2D_cpu : public OperatorImpl { class ConvDepthWiseImpl2D_cpu : public OperatorImpl {
......
...@@ -35,7 +35,7 @@ namespace Aidge { ...@@ -35,7 +35,7 @@ namespace Aidge {
* @param output_ Output Tensor. * @param output_ Output Tensor.
*/ */
template <class I, class W, class B, class O> template <class I, class W, class B, class O>
void ConvDepthWiseImpl2D_cpu_forward_kernel(const ConvDepthWise_Op<2>::Parameters &params, const std::array<DimSize_t, 4> &dims, void ConvDepthWiseImpl2D_cpu_forward_kernel(const ConvDepthWise_Op<2>::Params &params, const std::array<DimSize_t, 4> &dims,
const void *input_, const void *weights_, const void *biases_, void *output_) { const void *input_, const void *weights_, const void *biases_, void *output_) {
// FIXME: missing convolution parameters as arguments // FIXME: missing convolution parameters as arguments
const I *input = static_cast<const I *>(input_); const I *input = static_cast<const I *>(input_);
......
...@@ -29,12 +29,12 @@ namespace Aidge { ...@@ -29,12 +29,12 @@ namespace Aidge {
class ConvImpl2DForward_cpu class ConvImpl2DForward_cpu
: public Registrable<ConvImpl2DForward_cpu, : public Registrable<ConvImpl2DForward_cpu,
std::tuple<DataType, DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType, DataType>,
void(const Conv_Op<2>::Parameters &, const std::array<DimSize_t, 4> &, const void *, void(const Conv_Op<2>::Params &, const std::array<DimSize_t, 4> &, const void *,
const void *, const void *, void *)> {}; const void *, const void *, void *)> {};
class ConvImpl2DBackward_cpu class ConvImpl2DBackward_cpu
: public Registrable<ConvImpl2DBackward_cpu, : public Registrable<ConvImpl2DBackward_cpu,
std::tuple<DataType, DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType, DataType>,
void(const Conv_Op<2>::Parameters &, const std::array<DimSize_t, 4> &, const void *, void(const Conv_Op<2>::Params &, const std::array<DimSize_t, 4> &, const void *,
const void *, const void *, void *)> {}; const void *, const void *, void *)> {};
class ConvImpl2D_cpu : public OperatorImpl { class ConvImpl2D_cpu : public OperatorImpl {
......
...@@ -35,7 +35,7 @@ namespace Aidge { ...@@ -35,7 +35,7 @@ namespace Aidge {
* @param output_ Output Tensor. * @param output_ Output Tensor.
*/ */
template <class I, class W, class B, class O> template <class I, class W, class B, class O>
void ConvImpl2D_cpu_forward_kernel(const Conv_Op<2>::Parameters &params, const std::array<DimSize_t, 4> &dims, void ConvImpl2D_cpu_forward_kernel(const Conv_Op<2>::Params &params, const std::array<DimSize_t, 4> &dims,
const void *input_, const void *weights_, const void *biases_, void *output_) { const void *input_, const void *weights_, const void *biases_, void *output_) {
// FIXME: missing convolution parameters as arguments // FIXME: missing convolution parameters as arguments
const I *input = static_cast<const I *>(input_); const I *input = static_cast<const I *>(input_);
......
...@@ -26,11 +26,11 @@ namespace Aidge { ...@@ -26,11 +26,11 @@ namespace Aidge {
// compute kernel registry for forward and backward // compute kernel registry for forward and backward
class FCImplForward_cpu : public Registrable<FCImplForward_cpu, class FCImplForward_cpu : public Registrable<FCImplForward_cpu,
std::tuple<DataType, DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType, DataType>,
void(const FC_Op::Parameters &, const DimSize_t, const DimSize_t, void(const FC_Op::Params &, const DimSize_t, const DimSize_t,
const void *, const void *, const void *, void *)> {}; const void *, const void *, const void *, void *)> {};
class FCImplBackward_cpu : public Registrable<FCImplBackward_cpu, class FCImplBackward_cpu : public Registrable<FCImplBackward_cpu,
std::tuple<DataType, DataType, DataType, DataType>, std::tuple<DataType, DataType, DataType, DataType>,
void(const FC_Op::Parameters &, const DimSize_t, const DimSize_t, void(const FC_Op::Params &, const DimSize_t, const DimSize_t,
const void *, const void *, const void *, void *)> {}; const void *, const void *, const void *, void *)> {};
class FCImpl_cpu : public OperatorImpl { class FCImpl_cpu : public OperatorImpl {
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
namespace Aidge { namespace Aidge {
// template <class I, class W, class B, class O> // template <class I, class W, class B, class O>
// void FCImpl_cpu_forward_kernel(const FC_Op::Parameters& params, const std::array<DimSize_t, 4>& dims, // void FCImpl_cpu_forward_kernel(const FC_Op::Params& params, const std::array<DimSize_t, 4>& dims,
// const void* input_, const void* weights_, const void* biases_, void* output_) { // const void* input_, const void* weights_, const void* biases_, void* output_) {
// // FIXME: missing FC parameters as arguments // // FIXME: missing FC parameters as arguments
// const I* input = static_cast<const I*>(input_); // const I* input = static_cast<const I*>(input_);
...@@ -53,7 +53,7 @@ namespace Aidge { ...@@ -53,7 +53,7 @@ namespace Aidge {
// } // }
// template <class I, class W, class B, class O> // template <class I, class W, class B, class O>
// void FCImpl_cpu_forward_kernel(const FC_Op::Parameters& params, const std::array<DimSize_t, 2>& dims, // void FCImpl_cpu_forward_kernel(const FC_Op::Params& params, const std::array<DimSize_t, 2>& dims,
// const void* input_, const void* weights_, const void* biases_, void* output_) { // const void* input_, const void* weights_, const void* biases_, void* output_) {
// // FIXME: missing FC parameters as arguments // // FIXME: missing FC parameters as arguments
// const I* input = static_cast<const I*>(input_); // const I* input = static_cast<const I*>(input_);
...@@ -83,7 +83,7 @@ namespace Aidge { ...@@ -83,7 +83,7 @@ namespace Aidge {
// } // }
template <class I, class W, class B, class O> template <class I, class W, class B, class O>
void FCImpl_cpu_forward_kernel(const FC_Op::Parameters& params, const DimSize_t batchSize, const DimSize_t oneInputSize, void FCImpl_cpu_forward_kernel(const FC_Op::Params& params, const DimSize_t batchSize, const DimSize_t oneInputSize,
const void* input_, const void* weights_, const void* biases_, void* output_) { const void* input_, const void* weights_, const void* biases_, void* output_) {
// FIXME: missing FC parameters as arguments // FIXME: missing FC parameters as arguments
const I* input = static_cast<const I*>(input_); const I* input = static_cast<const I*>(input_);
......
...@@ -24,10 +24,10 @@ namespace Aidge { ...@@ -24,10 +24,10 @@ namespace Aidge {
// compute kernel registry for forward and backward // compute kernel registry for forward and backward
class LeakyReLUImplForward_cpu class LeakyReLUImplForward_cpu
: public Registrable<LeakyReLUImplForward_cpu, std::tuple<DataType, DataType>, void(const LeakyReLU_Op::Parameters&, std::size_t, const void*, void*)> { : public Registrable<LeakyReLUImplForward_cpu, std::tuple<DataType, DataType>, void(const LeakyReLU_Op::Params&, std::size_t, const void*, void*)> {
}; };
class LeakyReLUImplBackward_cpu class LeakyReLUImplBackward_cpu
: public Registrable<LeakyReLUImplBackward_cpu, std::tuple<DataType, DataType>, void(const LeakyReLU_Op::Parameters&, std::size_t, const void*, void*)> { : public Registrable<LeakyReLUImplBackward_cpu, std::tuple<DataType, DataType>, void(const LeakyReLU_Op::Params&, std::size_t, const void*, void*)> {
}; };
class LeakyReLUImpl_cpu : public OperatorImpl { class LeakyReLUImpl_cpu : public OperatorImpl {
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
namespace Aidge { namespace Aidge {
template <class I, class O> template <class I, class O>
void LeakyReLUImpl_cpu_forward_kernel(const LeakyReLU_Op::Parameters& params, void LeakyReLUImpl_cpu_forward_kernel(const LeakyReLU_Op::Params& params,
std::size_t inputLenght, std::size_t inputLenght,
const void* input_, const void* input_,
void* output_) { void* output_) {
......
...@@ -70,7 +70,7 @@ void Aidge::AvgPoolingImpl2D_cpu::forward() { ...@@ -70,7 +70,7 @@ void Aidge::AvgPoolingImpl2D_cpu::forward() {
Registrar<AvgPoolingImpl2DForward_cpu>::create({mOp.getInput(0)->dataType(), mOp.getOutput(0)->dataType()}); Registrar<AvgPoolingImpl2DForward_cpu>::create({mOp.getInput(0)->dataType(), mOp.getOutput(0)->dataType()});
// Call kernel // Call kernel
kernelFunc(mOp.getParams(), kernelFunc(mOp.getStaticParameters(),
mOp.getInput(0)->dims<4>(), mOp.getInput(0)->dims<4>(),
mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(0)->getImpl()->rawPtr(),
mOp.getOutput(0)->getImpl()->rawPtr()); mOp.getOutput(0)->getImpl()->rawPtr());
......
...@@ -76,7 +76,7 @@ void Aidge::BatchNormImpl2D_cpu::forward() { ...@@ -76,7 +76,7 @@ void Aidge::BatchNormImpl2D_cpu::forward() {
mOp.getOutput(0)->dataType()}); mOp.getOutput(0)->dataType()});
// Call kernel // Call kernel
kernelFunc(mOp.getParams(), kernelFunc(mOp.getStaticParameters(),
mOp.getInput(0)->dims<4>(), mOp.getInput(0)->dims<4>(),
mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(0)->getImpl()->rawPtr(),
mOp.getInput(1)->getImpl()->rawPtr(), mOp.getInput(1)->getImpl()->rawPtr(),
......
...@@ -77,7 +77,7 @@ void Aidge::ConvDepthWiseImpl2D_cpu::forward() { ...@@ -77,7 +77,7 @@ void Aidge::ConvDepthWiseImpl2D_cpu::forward() {
mOp.getInput(2)->dataType(), mOp.getOutput(0)->dataType()}); mOp.getInput(2)->dataType(), mOp.getOutput(0)->dataType()});
// Call kernel // Call kernel
kernelFunc(mOp.getParams(), std::static_pointer_cast<Tensor>(mOp.getInput(0))->dims<4>(), kernelFunc(mOp.getStaticParameters(), std::static_pointer_cast<Tensor>(mOp.getInput(0))->dims<4>(),
mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(1)->getImpl()->rawPtr(), mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(1)->getImpl()->rawPtr(),
mOp.getInput(2)->getImpl()->rawPtr(), mOp.getOutput(0)->getImpl()->rawPtr()); mOp.getInput(2)->getImpl()->rawPtr(), mOp.getOutput(0)->getImpl()->rawPtr());
} }
......
...@@ -75,7 +75,7 @@ void Aidge::ConvImpl2D_cpu::forward() { ...@@ -75,7 +75,7 @@ void Aidge::ConvImpl2D_cpu::forward() {
mOp.getInput(2)->dataType(), mOp.getOutput(0)->dataType()}); mOp.getInput(2)->dataType(), mOp.getOutput(0)->dataType()});
// Call kernel // Call kernel
kernelFunc(mOp.getParams(), std::static_pointer_cast<Tensor>(mOp.getInput(0))->dims<4>(), kernelFunc(mOp.getStaticParameters(), std::static_pointer_cast<Tensor>(mOp.getInput(0))->dims<4>(),
mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(1)->getImpl()->rawPtr(), mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(1)->getImpl()->rawPtr(),
mOp.getInput(2)->getImpl()->rawPtr(), mOp.getOutput(0)->getImpl()->rawPtr()); mOp.getInput(2)->getImpl()->rawPtr(), mOp.getOutput(0)->getImpl()->rawPtr());
......
...@@ -98,7 +98,7 @@ void Aidge::FCImpl_cpu::forward() ...@@ -98,7 +98,7 @@ void Aidge::FCImpl_cpu::forward()
// Call kernel // Call kernel
// if (mOp.getInput(0)->nbDims() == 4) { // if (mOp.getInput(0)->nbDims() == 4) {
// kernelFunc( // kernelFunc(
// mOp.getParams(), // mOp.getStaticParameters(),
// std::static_pointer_cast<Tensor>(mOp.getInput(0))->dims<4>(), // std::static_pointer_cast<Tensor>(mOp.getInput(0))->dims<4>(),
// mOp.getInput(0)->getImpl()->rawPtr(), // mOp.getInput(0)->getImpl()->rawPtr(),
// mOp.mInputs[1]->getImpl()->rawPtr(), // mOp.mInputs[1]->getImpl()->rawPtr(),
...@@ -107,7 +107,7 @@ void Aidge::FCImpl_cpu::forward() ...@@ -107,7 +107,7 @@ void Aidge::FCImpl_cpu::forward()
// } // }
// else // else
kernelFunc( kernelFunc(
mOp.getParams(), mOp.getStaticParameters(),
mOp.getInput(0)->dims()[0], mOp.getInput(0)->dims()[0],
mOp.getInput(0)->sizeM1(), mOp.getInput(0)->sizeM1(),
mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(0)->getImpl()->rawPtr(),
......
...@@ -65,7 +65,7 @@ void Aidge::LeakyReLUImpl_cpu::forward() { ...@@ -65,7 +65,7 @@ void Aidge::LeakyReLUImpl_cpu::forward() {
mOp.getOutput(0)->dataType()}); mOp.getOutput(0)->dataType()});
// Call kernel // Call kernel
kernelFunc(mOp.getParams(), kernelFunc(mOp.getStaticParameters(),
std::static_pointer_cast<Tensor>(mOp.getInput(0))->size(), std::static_pointer_cast<Tensor>(mOp.getInput(0))->size(),
mOp.getInput(0)->getImpl()->rawPtr(), mOp.getInput(0)->getImpl()->rawPtr(),
mOp.getOutput(0)->getImpl()->rawPtr()); mOp.getOutput(0)->getImpl()->rawPtr());
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment