1 /****************************************************************************** 2 * Copyright (c) Intel Corporation - All rights reserved. * 3 * This file is part of the LIBXSMM library. * 4 * * 5 * For information on the license, see the LICENSE file. * 6 * Further information: https://github.com/hfp/libxsmm/ * 7 * SPDX-License-Identifier: BSD-3-Clause * 8 ******************************************************************************/ 9 /* Sasikanth Avancha, Dhiraj Kalamkar (Intel Corp.) 10 ******************************************************************************/ 11 12 13 #pragma once 14 #include "ReLUImpl.hpp" 15 #include "check.hpp" 16 17 class ReLUXSMM : public ReLUImpl 18 { 19 protected: 20 21 public: ReLUXSMM(ReLUImplParams * gp,int engine)22 ReLUXSMM(ReLUImplParams* gp, int engine) : ReLUImpl(gp, engine) 23 { 24 top_layout_type = LIBXSMM_CUSTOM_LAYOUT; 25 top_layout = NULL; 26 gbot_layout_type = LIBXSMM_CUSTOM_LAYOUT; 27 gbot_layout = NULL; 28 } 29 30 // Assume external threading, e.g., #pragma omp 31 void forwardPropagate(TensorBuf *inp, TensorBuf *outp, int tid); 32 void backPropagate(TensorBuf *inp, TensorBuf *deloutp, TensorBuf *delinp, int tid); 33 }; 34