|
Помогите оттестировать производительность микроконтроллера ARM или AVR |
|
|
|
Jan 10 2014, 19:21
|
Группа: Новичок
Сообщений: 5
Регистрация: 10-01-14
Пользователь №: 79 981

|
Добрый день/ночь!
Прошу помощи форумчан. Хочу использовать микроконтроллер для произведения большого объема вычислений, но не уверен в том, достаточна ли его мощность. Марка микроконтроллера еще не выбрана, скорее всего, на ядре ARM или Cortex.
Прошу счастливых владельцев микроконтроллеров на ядре ARM и/или AVR произвести замер времени выполнения простейшего вычисления с вещественными числами. Покупать отладочную плату и программатор для этого слишком накладно.
Если производительности не хватит, буду вынужден использовать мощный РС под управлением ОС реального времени. Либо можно запараллелить несколько микроконтроллеров.
Детали кода значения не имеют, нужно просто ПРИМЕРНО оценить длительность вычислений с применением умножения и деления вещественных чисел. Желательно использовать real двойной точности (64 бит), но это не принципиально.
Заранее благодарен всем откликнувшимся!
Пример кода на псевдоязыке
//желательно использовать real двойной точности (64 бит), но это не принципиально real a = 1; real b = 1234.567;
//получить текущее значение системного время в мсек или мксек int StartTime = getCurrentTime();
//рабочий цикл for (int i=0; i<1000000; i++) { a = a + (real(i) / b ); b = b + 0.000001;
//на всякий пожарный If (a>100000000) {a=1}; }
//итоговая длительность вычислений int Dur = getCurrentTime() - StartTime;
//используем полученное значение, чтобы слишком умный компилятор не удалил неиспользуемые вычисления //вместо Print можно сделать что угодно, лишь бы использовать значение! //например, сохранить в EEPROM Print(a);
|
|
|
|
|
 |
Ответов
|
Jan 13 2014, 15:28
|

Знающий
   
Группа: Свой
Сообщений: 738
Регистрация: 13-01-11
Из: Минск
Пользователь №: 62 210

|
а не сокращает, я его после цикла распечатываю =) наибольший эффект дает ключ -ffast -math, без него при минимальной оптимизации float = 1,992 сек быстродействие победил =). b принималось за константу заменил на Код b = b + 0.001; итоговый результат без оптимизации float = 3,256 сек после оптимизации float = 2,64 сек результаты вычислений в обоих случаев одинаковы, т.е. ничего в цикле не сокращается
|
|
|
|
|
Jan 14 2014, 07:57
|
Группа: Новичок
Сообщений: 5
Регистрация: 10-01-14
Пользователь №: 79 981

|
всем спасибо тема закрыта вижу, что на микроконтроллере такие задачи не решить
|
|
|
|
|
Jan 14 2014, 13:21
|
Гуру
     
Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640

|
Цитата(RomaRoma @ Jan 14 2014, 11:57)  всем спасибо тема закрыта вижу, что на микроконтроллере такие задачи не решить на всякий случай - есть микроконтроллеры с поддержкой double FPU например LPC3xxx (ARM9+FPU) также у renesas-а есть SH-2|3|4 семейство с 64бит FPU у них и по целым числам получше чем у ARM-ов - может есть и не BGA корпуса если BGA не смущает, то imx то есть, микроконтроллеры бывают разные, можно к ПК (типа на атоме Ж  по скорости вычислений приблизиться Цитата(ViKo @ Jan 14 2014, 14:06)  Последняя цифра меня удивила. Видимо, использование FPU STM32 для double в Keil недоработано.  ну я сам лудить/паять, в тонкую математику не лезу, но наши математики, когда им предлагаю взять замечательный проц без FPU или с 32х битным FPU (что для даблов одноикственно) сразу же с негодованием отвергают и приблизительно такими же соотношениями мотивируют
|
|
|
|
Сообщений в этой теме
RomaRoma Помогите оттестировать производительность микроконтроллера ARM или AVR Jan 10 2014, 19:21 megajohn с максимальной оптимизацией по скорости получилось... Jan 10 2014, 20:18 A. Fig Lee Цитата(megajohn @ Jan 10 2014, 15:18) с м... Jan 10 2014, 20:46  megajohn Цитата(A. Fig Lee @ Jan 11 2014, 00:46) *... Jan 10 2014, 20:53   RomaRoma Цитата(megajohn @ Jan 10 2014, 23:53) сам... Jan 10 2014, 21:04    megajohn ЦитатаУточню: такт - имеется в виду такт процессор... Jan 10 2014, 21:10     mantech Может имеет смысл глянуть в сторону STM32F407 или ... Jan 11 2014, 05:40 ViKo Цитата(megajohn @ Jan 10 2014, 23:18) с м... Jan 11 2014, 08:11  megajohn Цитата(ViKo @ Jan 11 2014, 12:11) Можете ... Jan 11 2014, 09:14   RomaRoma спасибо всем откликнувшимся
Цитата(megajohn ... Jan 11 2014, 14:04 M_Andrey Цитата(megajohn @ Jan 10 2014, 23:18) для... Jan 12 2014, 12:03  RomaRoma Цитата(M_Andrey @ Jan 12 2014, 15:03) В ж... Jan 12 2014, 15:58  megajohn Цитата(M_Andrey @ Jan 12 2014, 16:03) В ж... Jan 12 2014, 18:15   M_Andrey Цитата(megajohn @ Jan 12 2014, 21:15) чой... Jan 12 2014, 19:12    megajohn Цитата(M_Andrey @ Jan 12 2014, 23:12) Все... Jan 12 2014, 19:21     M_Andrey Ужесточил типы, теперь между double и float разниц... Jan 12 2014, 19:58      megajohn Цитата(M_Andrey @ Jan 12 2014, 23:58) Уже... Jan 12 2014, 20:05       Ruslan1 PIC32, 80 MHz (оптимизация средненькая, такую дает... Jan 12 2014, 22:49       M_Andrey Цитата(megajohn @ Jan 12 2014, 23:05) Чой... Jan 13 2014, 08:52 slog AVR 8 разрядов, ARM 32. Понятно что производительн... Jan 11 2014, 07:04 stells Цитата(slog @ Jan 11 2014, 11:04) AVR 8 р... Jan 11 2014, 07:12 ZASADA +1. кидайте законченный код, запущу на авр32 60 мг... Jan 11 2014, 09:01 ZASADA дсп еще не щупали. Jan 12 2014, 16:07 ZASADA avr32 60MHz i = 1 000 000
без оптимизации
double ... Jan 13 2014, 11:02 A. Fig Lee Цитата(ZASADA @ Jan 13 2014, 06:02) avr32... Jan 13 2014, 13:37 ZASADA на реальной плате
причем double не особо круто со... Jan 13 2014, 14:01 A. Fig Lee Цитата(ZASADA @ Jan 13 2014, 09:01) на ре... Jan 13 2014, 14:12  M_Andrey Кстати, если посмотреть в float числа:
1234.567 ... Jan 13 2014, 14:41 Ruslan1 Цитата(ZASADA @ Jan 13 2014, 16:01) на ре... Jan 13 2014, 14:41 ZASADA Цитата800036E0 mov R8, 0
800036E2 movhi R7, 0... Jan 13 2014, 14:39 neiver Попробовал на Stm32f407 с использованием аппаратно... Jan 13 2014, 14:47 ViKo Цитата(neiver @ Jan 13 2014, 17:47) Попро... Jan 14 2014, 08:25  megajohn Цитата(RomaRoma @ Jan 14 2014, 11:57) виж... Jan 14 2014, 08:21 ViKo С вашего позволения, предлагаю тест, который 1000 ... Jan 14 2014, 10:06 A. Fig Lee Цитата(ViKo @ Jan 14 2014, 05:06) С вашег... Jan 14 2014, 16:23 SM Добавлю к списку еще MCU на Cortex-R4F, такие тоже... Jan 14 2014, 14:19 ZASADA могу завтра на авр32 запустить=) Jan 14 2014, 16:45 A. Fig Lee Цитата(ZASADA @ Jan 14 2014, 11:45) могу ... Jan 14 2014, 17:24 ZASADA итак вычисление числа Пи, код ViKo
AVR32, 60MHz, ж... Jan 15 2014, 07:56 mantech Цитата(ZASADA @ Jan 15 2014, 11:56) итак ... Jan 15 2014, 09:22
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|