Результаты:
Цитата:
3.10.2 - с итоговым AMX в 90358кб - 5 минут 30 секунд
3.10.3 - 28 секунд
Вид для печати
За последние несколько дней уже успели исправить проблему с исчезающими при переносе строк пробелами, и приняли патч, в несколько раз ускоряющий процесс сборки многих крупных модов. Тем не менее, до релиза может пройти ещё неизвестно сколько времени, поэтому я подготовил "неофициальный" релиз.
Наиболее значительные изменения:
- Серия изменений для улучшения производительности компилятора (1, 2).
- Исправлена необоснованная аллокация 128 Мб памяти под хеш-таблицу.
128 Кб (16384 слотов) вполне должно хватить даже для самых крупных модов.
- Устранён баг с исчезновением пробелов в строках.
- Исправлена сборка под Visual Studio 2010 (==> меньше жалоб от тех, у кого не установлены библиотеки VC++ Runtime старше 2010-й версии).
Скачать: Dropbox, RGHost, Яндекс.Диск
Исходный код: https://github.com/Daniel-Cortez/paw...e/experimental
Дисклеймер: Я не несу ответственности за возможный ущерб в следствие использования (в том числе неправильного использования) данного билда. Используйте на свой страх и риск. Как уже было отмечено выше, этот релиз неофициальный.
На самом деле, я хотел создать issue с подобным предложением на GitHub. Но, учитывая опыт с моим предыдущим комментарием о размере хеш-таблицы (спойлер: его никто не прочёл, PR приняли без единого нарекания), я более чем уверен: это бесполезно.
Да и вообще, не думаю, что найдётся хоть один мод, который сможет превысить лимит в 16384 глобальных идентификатора.
Я пробовал скомпилировать несколько модов с патчем, позволяющим подсчитать максимально использованное количество слотов в хеш-таблице. Наибольший результат показал Open-GTO - 4120 слотов, остальные использовали не более 2 с небольшим тысяч. Даже тот же пресловутый RLS образца 2011 года заставил компилятор использовать только 1914 слотов.
Чтобы превысить изначальный размер в 16k слотов, нужен просто титанический, невиданных доселе размеров мод. Но даже если такой и существует, ничего страшного не произойдёт: хеш-таблица просто вырастет в 2 раза, до 32768 слотов.
Daniel_Cortez можешь залит на другой ФО ?
DC, спасибо за релиз. Скорость компиляции заметно повысилась.
// ~1.1-1.4s => ~0.4-0.6s