#ifndef INC_IMC_IMC_EXTENSION_H_ #define INC_IMC_IMC_EXTENSION_H_ #ifndef imcBENCH_NAME #define imcBENCH_NAME vConv2d #endif #ifndef imcBENCH_INFINITE_LOOP #define imcBENCH_INFINITE_LOOP 0 #endif #ifndef imcPRINT_RECOVERY_MESSAGE #define imcPRINT_RECOVERY_MESSAGE 0 #endif #ifndef imcENABLE_STATIC_LOOP_PASS_COUNT #define imcENABLE_STATIC_LOOP_PASS_COUNT 0 #endif #ifndef imcENABLE_ADAPTIVE_LOOP_PASS_COUNT #define imcENABLE_ADAPTIVE_LOOP_PASS_COUNT 0 #endif #ifndef imcMAX_LOOP_IDS #define imcMAX_LOOP_IDS 1 #endif #ifndef imcLOOP_PASS_COUNT #define imcLOOP_PASS_COUNT 10 #endif #ifndef imcBENCH_REPEAT_COUNT #define imcBENCH_REPEAT_COUNT 1 #endif #define imcCAP_VOL_HIGH 4800 #define imcCAP_VOL_LOW 3500 #define imcENERGY_TOTAL (imcCAP_VOL_HIGH*imcCAP_VOL_HIGH - imcCAP_VOL_LOW*imcCAP_VOL_LOW) int __imc_get_loop_pass_count(int loop_id); void __imc_finish_loop_skipping(); void imc_init_energy_estimation(); extern int imc_is_passing_loops; #endif