![]() |
![]() |
volvo |
![]()
Сообщение
#1
|
Гость ![]() |
12 ноября 2010 вышла новая версия FPC: 2.4.2
Немного об изменениях: 1. Введены ключевые слова Abstract и Sealed для классов, то есть, теперь конструкции "class abstract" и "class sealed" распознаются как спецификатор класса, и невозможно уже иметь в классах переменные с подобными именами: type , хотя 2.4.0 это компилировал. 2. В класс TObject введены методы UnitName, Equals, GetHashCode, ToString для большей совместимости с Дельфи (в Дельфи эти методы существуют, начиная с 2009 версии) 3. Заявлено наличие давно обсуждаемого цикла for ... in , посмотрим, работает ли он на самом деле. Есть также изменения в расположении некоторых модулей (Daemonapp, MacOSAll и DOM, а также модуля Sockets)... Об основных изменениях можно прочесть здесь (англ): User Changes 2.4.2 Чуть позже погоняю этот компилятор на тестах, и посмотрю, как у него с исправлениями старых ошибок. Update: Вот результаты того же самого теста SciMark2 (Intel Core2 CPU 4400 @2GHz + 1024 Mb RAM, WinXP SP3. Настройки компиляторов: режим совместимости - Delphi, Range Checking (-), Stack Checking (+), I/O Checking (-), Integer Overflow Checking (+), генерировался быстрый код (generate faster code) для процессора Pentium4, Level 1 Optimization) Без ключа -Large (Показать/Скрыть)
С ключом -Large (Показать/Скрыть)
И опять - довольно ощутимое увеличение быстродействия по сравнению с 2.4.0... |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Значит, вот результаты тестов четырех компиляторов (чтоб не было разговоров о том, что я пообещал и не сделал) :
![]() Тестирование проводилось на одной и той же машине (параметры указаны выше) для сборки Release, все проверки отключены, выставлена оптимизация по скорости для процессора Pentium4, за исключением выделенного теста. Этот проводился на Debug-сборке, Range Checking (+), Stack Checking (+), I/O Checking (-), Integer Overflow Checking (+), галочка "Generate smaller code" снята, для генерации наиболее быстрого кода.... Немного изменен также формат выводимых значений. Чтобы программа собиралась всеми вышеупомянутыми компиляторами, я замерял количество тиков процессора и выводил мега-тики: число тиков, прошедших от начала теста до его завершения, разделенное на 220 (по аналогии байты/мегабайты), чтоб в нулях не запутаться. P.S. С тестом SciMark придется немного подождать, мне пока не удалось его откомпилировать в GPC. Как только удастся - сразу опубликую результаты. |
![]() ![]() |
![]() |
Текстовая версия | 18.06.2025 8:50 |