stm32 cubeide два инкремента не совместимы.
- Сообщения: 2567
- Зарегистрирован: Вт май 01, 2018 19:44:47
Да сколько можно хрень нести? Это уже не смешно. Если бы в 2022 году один компилятор давал на ARM на 47% быстрее код, то отстающие наложили бы на себя руки.
- Реклама
- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
Один и тот же код, одна и та же тактовая частота, одно и то же значение в USART1->BRR 0x00000682, скорость USART 19200В скобках указаны такты iar.
На сколько я могу судить, iar быстрее выполняет код.
Спойлер
Код: Выделить всё
start-end = 129(69) enter
CMD > start-end = 210(135) TOGGLE
CMD > start-end = 266(187) COUNT=4578На сколько я могу судить, iar быстрее выполняет код.
- Сообщения: 2567
- Зарегистрирован: Вт май 01, 2018 19:44:47
- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
Так так, VladislavS не верит в возможности своего компилятора, а как же тогда "легенда" об эффективности создаваемого кода iarом? Или это только легенда?
Может проект полностью посмотришь? Может не так мерю, не так смотрю, или еще что? Там всего две функции.
Хотя ладно, наигрался я, в топку.
Может проект полностью посмотришь? Может не так мерю, не так смотрю, или еще что? Там всего две функции.
Хотя ладно, наигрался я, в топку.
- Сообщения: 2567
- Зарегистрирован: Вт май 01, 2018 19:44:47
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180515#p4180515"]Так так, VladislavS не верит в возможности своего компилятора,[/uquote]Моего? С каких пор я в IAR Systems стал работать?
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180515#p4180515"]а как же тогда "легенда" об эффективности создаваемого кода iarом? Или это только легенда?[/uquote]Речь о единицах процентов по сравнению с GCC. С ARM V6 я уже не уверен, надо проверять. Но не о безумных 47% же.
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180515#p4180515"]Может проект полностью посмотришь?[/uquote]Вот мне больше делать нечего.
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180515#p4180515"]Может не так мерю, не так смотрю, или еще что?[/uquote]Мы уже 13-ю страницу темы над твоими тестами всем аулом ржём.
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180515#p4180515"]а как же тогда "легенда" об эффективности создаваемого кода iarом? Или это только легенда?[/uquote]Речь о единицах процентов по сравнению с GCC. С ARM V6 я уже не уверен, надо проверять. Но не о безумных 47% же.
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180515#p4180515"]Может проект полностью посмотришь?[/uquote]Вот мне больше делать нечего.
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180515#p4180515"]Может не так мерю, не так смотрю, или еще что?[/uquote]Мы уже 13-ю страницу темы над твоими тестами всем аулом ржём.
- Реклама
- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
Раз на большее вас не хватило.VladislavS писал(а):Мы уже 13-ю страницу темы над твоими тестами всем аулом ржём.
- Сообщения: 2567
- Зарегистрирован: Вт май 01, 2018 19:44:47
Да куда уж мне. Я вообще программировать то никогда не пробовал.


Спойлер
Взял первый попавшийся проект. Управление приёмо-передающим модулем АФАР с компьютера через технологическую плату. Собрал компиляторами IAR и GCC из одних исходников, с примерно одинаковыми настройками. Разница 7 долбаных байт на 4,5к кода. Ради этого заморачиваться? Да ну на. Какой код быстрее не измерял - пофиг.- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
Даже и не знаю, полностью процитировать тебя или как?[uquote="VladislavS",url="/forum/viewtopic.php?p=4167522#p4167522"]Для меня размер кода вообще на последнем месте. Для меня главное скорость.[/uquote]Всем известно, что iar генерирует более оптимальный код, и не одна версия GCC еще не смогла преодолеть его.
- Сообщения: 1339
- Зарегистрирован: Вт ноя 19, 2019 06:10:18
У всех компиляторов есть особенности: один лучше строит код для вычисления выражений, другой лучше отслеживает вызовы и доступ к памяти. Поэтому программа, написанная "под IAR" может быть на 5-10% меньше по размеру, чем "под Keil", и на столько же быстрей. Справедливо и обратное. Этом явствует из неоднократных тестов разных компиляторов, которые делали серьёзные дядьки из недетских контор. Ни о каких 47% речи никогда даже не шло! Даже бесплатный GCC не сильно отстаёт от коммерческих компиляторов, разница укладывается в 5-15%. Замечу, что я привожу цифры, примерно, пятилетней давности, ибо с тех пор лично мне пофиг, каким компилятором собирать свои программы. VladislavS очень верно сказал:
VladislavS писал(а): Мы уже 13-ю страницу темы над твоими тестами всем аулом ржём.
Да сколько можно хрень нести?
- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
Эх вы, спецы, особенно VladislavS, да iar мне просто заинлайнил все функции.
- Сообщения: 2567
- Зарегистрирован: Вт май 01, 2018 19:44:47
- Сообщения: 2516
- Зарегистрирован: Пт июл 12, 2019 22:52:01
Интересно было бы кусок кода увидеть и асмовый листинг, что с ним "яр" делает. Сильно сомневаюсь, что он значительно лучше оптимизирует, чем gcc.
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Я на гитхабе, в ЖЖ
- Сообщения: 2567
- Зарегистрирован: Вт май 01, 2018 19:44:47
К сожалению, а может и к счастью, сейчас глядя на листинг не скажешь какой код выполняется быстрее. Конвейер, кэши, предвыборки, разные шины доступа к коду и данным... Тут тебе не AVR. Я недавно делал тему про то как IAR код строит, там один пример есть. И ещё раз, речь не о значительно, ни о каких 146% речи нет. Ссылка на тему.
- Сообщения: 1800
- Зарегистрирован: Вт авг 15, 2017 10:51:13
[uquote="Dimon456",url="/forum/viewtopic.php?p=4180701#p4180701"]Всем известно, что iar генерирует более оптимальный код, и не одна версия GCC еще не смогла преодолеть его.[/uquote]Более оптимальный код генерирует мозг программиста.
Только именно "программиста", а не быдлокодера.
Только именно "программиста", а не быдлокодера.
- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
Но не у всех же мозг программиста.jcxz писал(а):Только именно "программиста", а не быдлокодера.
Вот тебе, для примера, одна из функций
Спойлер
Код: Выделить всё
static bool respcmp(char *s, const char *resp)
{
while(*resp)
if(*resp++ != *s++) return false;
return true;
}Ладно, все в топку, инлайн этих двух функций показал такой результат, на gcc version 4.8.4 удалось добиться отставания на 14-19%.
Тогда как gcc version 10.3.1 показал отставание всего на 6-10%.
дима-тролль, притомил ты своими наездами
через провокацию хошь надыбать грамотного кода?
твои тесты убедительны только для тебя самого.
через провокацию хошь надыбать грамотного кода?
твои тесты убедительны только для тебя самого.
- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
А ты, оскорблениями.
Я считаю быдлокод тот код, который развернут страниц на 15, и этот код понятен только автору.
Я считаю быдлокод тот код, который развернут страниц на 15, и этот код понятен только автору.
А почему бы и нет, что в этом плохого?a797945 писал(а):через провокацию хошь надыбать грамотного кода?
Да же если и так, я для себа делаю выводы, можете не соглашаться, это ваше (относится ко всем, а не к одному человеку) право.a797945 писал(а):твои тесты убедительны только для тебя самого.
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Помните спецы я вам говорил что мерцание сектров цифр lcd вот закоментированный буфер если я через него прописую идёт мерцание
в чём дело.Почему так.?Кто может обьяснить из котов или дюдюка?
Добавлено after 41 second:
А буферов 8
в чём дело.Почему так.?Кто может обьяснить из котов или дюдюка?
Спойлер
Код: Выделить всё
//char buf[20];
char buf1[20];А буферов 8
- Сообщения: 1849
- Зарегистрирован: Вс дек 25, 2016 08:34:54
Возможно выход за пределы массива.
В большинстве случаем компилятор предупреждает, а в отладчике это было бы видно.
В большинстве случаем компилятор предупреждает, а в отладчике это было бы видно.
- Сообщения: 440
- Зарегистрирован: Вс дек 29, 2019 08:05:21
Каким образом видно было?.Я не создавал массив.У меня просто куча буферов.


