Exemple #1
0
/*
 *  実行時間計測の終了(受け口関数)
 */
ER
eHistogram_endMeasure(CELLIDX idx)
{
	CELLCB		*p_cellcb = GET_CELLCB(idx);
	histtim_t	end_time, timediff;
	uint_t		val;

	HIST_GET_TIM(&end_time);

	timediff = end_time - VAR_begin_time;
#ifdef HISTTIM_CYCLE
	if (end_time < VAR_begin_time) {
		timediff += HISTTIM_CYCLE;
	}
#endif /* HISTTIM_CYCLE */
	val = HIST_CONV_TIM(timediff);
	if (val <= ATTR_maxTime) {
		VAR_histarea[val]++;
	}
	else if (val <= ((uint_t) INT_MAX)) {
		VAR_over++;
	}
	else {
		VAR_under++;
	}
	return(E_OK);
}
Exemple #2
0
/*
 *  実行時間計測の終了
 */
void
end_measure(ID histid)
{
	HISTCB	*p_histcb;
	HISTTIM	end_time;
	uint_t	val;

	HIST_GET_TIM(&end_time);

	assert(TMIN_HISTID <= histid && histid <= TMAX_HISTID);
	p_histcb = &(histcb_table[histid - TMIN_HISTID]);

	val = HIST_CONV_TIM(end_time - p_histcb->begin_time);
	if (val <= p_histcb->maxval) {
		p_histcb->histarea[val]++;
	}
	else if (val <= ((uint_t) INT_MAX)) {
		p_histcb->over++;
	}
	else {
		p_histcb->under++;
	}
}