Forger 26 13 июня, 2017 Опубликовано 13 июня, 2017 · Жалоба Версия была еще до паков, кажется. Скорее всего 4й keil, но на нем уже наверно никто не сидит :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
BioWolf2000 3 15 июня, 2017 Опубликовано 15 июня, 2017 · Жалоба Если диск, где лежат файлы проекта, еще из прошлого столетия, то такой "квантовый" скачок скорости вполне возможен :) У меня проекты лежат на внешнем SSD (usb 3.0), к тому свежий Keil очень хорошо работает на современных многоядерных процессорах. В итоге любой проект одинаково быстро компилируется с любыми галочками и без оных. Как раз таки проект лежит на SSD Kingston SUV400S37240G. ОЗУ 16Гб. Процессор i5-6400 2.7Ghz. Win10 x64. С галочкой Browse information компиляция проекта 6:40. Без - 11 секунд. Keil 5.23. Компилятор V5.06 Снятие галочки Debug information ускоряет процесс компиляции только на 1 секунду. В проекте компилируется 140 файлов. Проект изначально создан генератором STM32Cube. Большое время компиляции занимает стек LwIP Загрузка системы с галочкой Browse information и без Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Forger 26 15 июня, 2017 Опубликовано 15 июня, 2017 · Жалоба Как раз таки проект лежит на SSD Kingston SUV400S37240G. ОЗУ 16Гб. Процессор i5-6400 2.7Ghz. Win10 x64. С галочкой Browse information компиляция проекта 6:40. Без - 11 секунд. Keil 5.23. Компилятор V5.06 Снятие галочки Debug information ускоряет процесс компиляции только на 1 секунду. У меня комп на работе намного скромнее (вин 7), но такого поведения я не заметил :laughing: Правда проекты у меня не имеют такого числа компилируемых файлой, все "лишнее" и отлаженное выложено в библиотеки (см. ниже). В проекте компилируется 140 файлов. Проект изначально создан генератором STM32Cube. Большое время компиляции занимает стек LwIP Такую уйму файлов из сторонних библиотек имеет смысл компилировать в lib файлы и подключать к проекту. В keil есть поддержка дерева проектов (multi-poject workspace), тогда можно просто создать соотв. проекты для формирования lib и подключить их в группу с самим проектом. Тогда в проекте можно оставить лишь те файлы, которые проходят отладку, а готовые модули можно аналогично "скидывать" в библиотеки (с галочкой Browse information в версии DEBUG и без - RELEASE) В итоге полная пересборка проекта занимает считанные сек (в любом сочетании галочек) :) зы. Т. е. проекты храните на системном диске, где винда лежит?? Путь к проекту не содержит русские буквы? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
BioWolf2000 3 15 июня, 2017 Опубликовано 15 июня, 2017 · Жалоба У меня комп на работе намного скромнее (вин 7), но такого поведения я не заметил :laughing: Правда проекты у меня не имеют такого числа компилируемых файлой, все "лишнее" и отлаженное выложено в библиотеки (см. ниже). Такую уйму файлов из сторонних библиотек имеет смысл компилировать в lib файлы и подключать к проекту. В keil есть поддержка дерева проектов (multi-poject workspace), тогда можно просто создать соотв. проекты для формирования lib и подключить их в группу с самим проектом. Тогда в проекте можно оставить лишь те файлы, которые проходят отладку, а готовые модули можно аналогично "скидывать" в библиотеки (с галочкой Browse information в версии DEBUG и без - RELEASE) В итоге полная пересборка проекта занимает считанные сек (в любом сочетании галочек) :) зы. Т. е. проекты храните на системном диске, где винда лежит?? Путь к проекту не содержит русские буквы? Путь к проекту не содержит русские буквы. А сам проект да, лежит на системном диске. Вторым диском подключен HDD Seagate 1Tb st1000dm010. Туда я настроил резервное копирование 2 раза в сутки. А сильно критично на системном диске с проектами работать? А за информацию про мультипроекты спасибо, буду сейчас настраивать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Forger 26 15 июня, 2017 Опубликовано 15 июня, 2017 · Жалоба Путь к проекту не содержит русские буквы. А сам проект да, лежит на системном диске. Вторым диском подключен HDD Seagate 1Tb st1000dm010. Туда я настроил резервное копирование 2 раза в сутки. А сильно критично на системном диске с проектами работать? Если есть резервирование, то не критично :) У меня на системном диске (разумеется SSD!) лежит только винда, установленные программы и свап-файл. На всех компах. Для хранения проектов у меня используется внешний SSD 250Гб (по USB3.0), на всех моих рабочих компах он определяется под одной и той же буквой (диск Z), а запуск, отладка и компиляция происходит прямо с диска. Сам диск SSD M2 - крохотный, не больше длинной зажигалки )) На этом же диске портабл-браузер, портабл-почта, любимая музыка и т.п. .... Прям как вассерман - все свое ношу с собой :) Оказалось очень удобно - не нужно заниматься ононизмом синхронизацией проектов, истории браузера и т. п. Разумеется, диск шифрован (под паролем) и в обязательном порядке его содержимое периодически бэкапится на на другой внешний подключаемый диск, который хранится в темном чулане :) А за информацию про мультипроекты спасибо, буду сейчас настраивать Оч. полезный инструмент, есть во всех нормальных IDE, однако, почему-то не все его используют ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
BioWolf2000 3 21 июля, 2017 Опубликовано 21 июля, 2017 · Жалоба В Keil v.5.24.2 установил компилятор V6.7. Проект стал компилироваться за 12 секунд с включенным Browse Information. Чтобы не выдавало предупреждения, поставил в настройках AC5-like Warnings. Единственная проблема была с компиляцией ассемблерных вставок, генерируемых кубом. В установленной папке STM32Cube подправил файл FREERTOS-STM32F7xx_Configs.xml Заменил строки <SubComponent Csub="Keil"> <!-- Keil refers to RVDS files --> <File Category="source" Name="Source/portable/RVDS/ARM_CM7/r0p1/port.c"/> <File Category="header" Name="Source/portable/RVDS/ARM_CM7/r0p1/portmacro.h"/> </SubComponent> на <SubComponent Csub="Keil"> <!-- Keil refers to RVDS files --> <File Category="source" Name="Source/portable/GCC/ARM_CM7/r0p1/port.c"/> <File Category="header" Name="Source/portable/GCC/ARM_CM7/r0p1/portmacro.h"/> </SubComponent> Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Forger 26 21 июля, 2017 Опубликовано 21 июля, 2017 · Жалоба В Keil v.5.24.2 установил компилятор V6.7. А я пока отказался от компилятора v6 в пользу "старого" v5, потому что последний все равно дает меньший код, хотя ARM утверждает обратное. Сначала предположил, что все дело в стандартных подключаемых библиотеках, поэтому выпилил их в ноль. Но не помогло :( Поэтом я лично v6 вижу пользу лишь в действительно крупных масштабных проектах, где разница в объёме кода не так критична, а гораздо важнее "умность" компилятора. Во всех остальных случаях пока что прекрасно справляется v5. HAL не использую (нет смысла), вполне хватает прямого обращения к регистрам и конечно же "голого" CMSIS. Сейчас все проекты компилируются быстро. Сильно влияет то, что готовые отлаженные блоки своевременно собираю в библиотеки, которые подключены итоговому проекту (уже писал об этом). Отладка производится частями с соотв. тестами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
serglg 0 22 июля, 2017 Опубликовано 22 июля, 2017 · Жалоба Если еще кому интересно. в Options->Output можно убрать галочку Browse Information. Не создаются файлы .CRF и скорость компиляции раз в 30 увеличивается Ха, реально быстрей стало. А что мы теряем? Зачем Browse Information? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ohmjke 0 22 июля, 2017 Опубликовано 22 июля, 2017 · Жалоба Ха, реально быстрей стало. А что мы теряем? Зачем Browse Information? Нужно для навигации по проекту - "Go to definition", "Go to reference". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться