waqur: (Жопа)
[personal profile] waqur
http://groups.google.com/group/golang-nuts/browse_thread/thread/ab1971bb9459025d#

http://news.ycombinator.com/item?id=3805302

Особенно если её делать полным маршем по всей распределённой памяти и поиском всего, что выглядит "похоже" на 32-битный указатель. Сборщик мусора применяет довольно консервативную логику при проверке диапазонов этих указателей => при практически полной "запаковке" 2Гб адресного пространства много мусорных данных не попадают под сборку и навсегда застревают в куче долгоработающего серверного процесса => на сервере закончилась память => прилетели.

А если для серверного процесса не задан ulimit по памяти, то ядро прибьёт ещё парочку случайных демонов, пока мы прилетим. В итоге мы совсем прилетим — так, что надо будет физически нажимать reset на сервере. Для долгоработающих серверных процессов, реализованных на garbage collected programming languages, настройка ulimit по памяти — обязательна.

Предложение выкинуть Васю на мороз выбросить 32-битный код с сервера выглядит конечно хорошо, но как же архитектура ARM? Её тоже выбросить? Ну и есть VPSки с 1-2Гб ОЗУ, где применение 64-битных процессов экономически нецелесообразно.

Date: 2012-04-06 01:18 pm (UTC)
From: [identity profile] cd-riper.livejournal.com
сборка мусора по принципу "поиск всего, что выглядит похоже на 32-битный указатель" это лютый пиздец.
что касается ARM, полагаю, вопрос буквально ближайших пары лет переход на 64 бита. уже сегодня 2 гига RAM для топовых устройств это норма.

Date: 2012-04-06 01:31 pm (UTC)
From: [identity profile] waqur.livejournal.com
ну для большинства применений ARM-процессоров энергопотребление - далеко не последний фактор, так что 32 бита на ARMе - это всерьёз и надолго, даже если и будет выпущена 64-битная версия

Date: 2012-04-06 01:43 pm (UTC)
From: [identity profile] waqur.livejournal.com
наверняка фикс будет грязным хаком в стиле "вставить 4-х байтную канарейку специального вида перед каждым GC-указателем", чтобы коллектор мог быстро распознать такой указатель

March 2024

S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
31      

На этой странице

Автор стиля

Развернуть

No cut tags
Page generated 2026-03-01 12:45 pm
Powered by Dreamwidth Studios