ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 июля
16982
VAI (22.11.2004 10:52, просмотров: 443)
Ответ: опять про Whetstone, сравнил на железе версии иар 3.20а и 3.21а - в новой версии есть прирост скорости при 32-bit double 
void tst_whetstone( void )
{
int cr;
long t;

// Прерывания разрешены, время измерялось на живом макете по тикам таймерного (TIMERA) прерывания (1 ms)
// Другие прерывания запрещены.
// процессор MSP430F149, MCLK = 6 МГц, компиляторы IAR v3.20a и IAR v3.21a, полная оптимизация по скорости с выключеным
// "Code Motion" (он глючит в этой версии), умножение по железу включено

//  -1L т.к. время старта, после ожидания начала тика, на 1 > (t = tick_ms)
#define TIM_MINUS 1L
// tick_ms - милисекундные тики таймера, unsigned long

// 32-bit double
// 6385 ms v.3.20a
// 5060 ms v.3.21a 

// 64-bit double
// 40128 ms v.3.20a
// 40128 ms v.3.21a 

  printf( "\fStart" );
  for ( cr = 0; ; cr++ )
  { for ( t = tick_ms; t == tick_ms; )  // на начало тика
      ;
    whetstone();
    t = tick_ms - t - TIM_MINUS;
    printf( "\vt = %ld   \n%d   ", t, cr );
  }
}