1 #include "Test.h" 2 #include "Pattern.h" 3 class FullyConnectedBench:public Client::Suite 4 { 5 public: 6 FullyConnectedBench(Testing::testID_t id); 7 virtual void setUp(Testing::testID_t,std::vector<Testing::param_t>& params,Client::PatternMgr *mgr); 8 virtual void tearDown(Testing::testID_t,Client::PatternMgr *mgr); 9 private: 10 #include "FullyConnectedBench_decl.h" 11 12 int repeatNb; 13 Client::Pattern<q7_t> input; 14 Client::Pattern<q31_t> bias; 15 Client::Pattern<q7_t> weight; 16 Client::LocalPattern<q7_t> output; 17 Client::LocalPattern<q15_t> temp; 18 // Reference patterns are not loaded when we are in dump mode 19 Client::RefPattern<q7_t> ref; 20 21 q7_t *inp; 22 q31_t *biasp; 23 q7_t *weightp; 24 q7_t *outp; 25 q7_t *refp; 26 q15_t *tempp; 27 28 int32_t output_mult = 1073741824; 29 int16_t output_shift = -1; 30 int32_t filter_offset = 1; 31 int32_t input_offset = 1; 32 int32_t output_offset = -1; 33 int32_t act_min =-128; 34 int32_t act_max= 127; 35 int32_t nb_batches=1; 36 int32_t rowDim; 37 int32_t colDim; 38 39 };