[sisyphus] Re: fpc&lazarus [JT]
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Чт Окт 20 18:01:07 MSD 2005
On Thu, Oct 20, 2005 at 11:25:48AM +0300, Michael Shigorin wrote:
> On Thu, Oct 20, 2005 at 06:49:03AM +0400, Alexey Tourbin wrote:
> > В binutils >= 1:2.15.92 есть новая опция --reduce-memory-overheads.
> > Вместе с --no-keep-memory получается приемлемый результат: для линковки
> > ppc386 используется 108M, для линковки fp используется 177M. Реально
> > RSS требуется меньше, так что ppc386 и fp удается скомпоновать даже на
> > машинке с 128M, при активной поддержке kswapd. Но всё же это большой
> > успех, потому что это разница между "работает" и "не работает".
>
> Лёш, у нас на сборочнице полтора гига памяти и свопится оно
> на SCSI. :) Как раз такие задачи иногда проще (в смысле времени)
> решать оглашением "эй, оно тут память жрёт", особенно если
> желающих применить рапшиль несколько.
У меня своя сборочница скоро будет неплохая. Для доступа к чужой
сборочнице нужен bandwidth. Дело здесь не в этом. Просто хочется
"подкрутить" существующую технику оптимизации, чтобы она приемлемо
работала на low-end машинах. К сожалению в ld(1) сказано, что при
экономии памяти работает O(n^2), а не O(n) алогритм. Нужно будет ещё
поэкспериментировать. Но для сборки больших проектов со smart linking
перерасход памяти становится основной проблемой.
Кто ничего не понял, smart linking -- это специальная техника
оптимизации статической линковки. Вместо объектных *.o файлов создаются
*.a файлы (архивы *.o файлов). То есть *.o файл нарезается на
мелкие-мелкие кусочки. При линковке с *.a файлами линкер выдёргивает
только те кусочки, которые реально используются в бинаре. Это такая
техника в стандартном линкере, она ещё со времен царя Гороха. Но она
работает не очень эффективно по времени/памяти. Бинарь может получиться
меньше раза в 2 в некоторых случаях.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/sisyphus/attachments/20051020/d15f587a/attachment-0003.bin>
Подробная информация о списке рассылки Sisyphus