Стартуют столько, сколько может пропустить менеджер очереди. Это специальный выделенный блин кластера, который только тем и занимается, что по гигаэзернету дёргает остальные блины, опрашивает их статус, раздаёт им задачки, принимает ответы, разливает-сливает данные, итэдэ.
Поскольку "дух каждой задачи нужно облечь в реализующую материю", то весь этот пре- и пост-процессинг становится боллнеком, когда задач много и они мелкие.
Насчёт запаковки я ещё такую штуку придумал. Можно же заливать на суперкомп исходник. А там его компилировать (для разноархитектурных блинов в разный код) и сразу же запускать. Жалко, юниксовый шелл не умеет такие штуки делать - "запустить слинкованный код, переданный по пайпу" :)
Насколько я знаю, для Жабы нет специального внутреннего шедуляйзера, вся планировка работает через LSF. А LSF не предназначена для внутреннего дробления процессов. Она просто берёт процесс как целое, меряет его разными мерками и запускает на подобающем железе.
Но даже не multi-shitty-threading - проблема Жабы. А неэффективный garbage collector, который "отложил и неизвестно". Вот это действительно ужас ужасов, особенно при разделяемых ресурсах. По сравнению с ним в Перле сборка мусора осуществляется достаточно эффективно: как только на объект исчезла последняя ссылка, он ресайклится. Конечно, его можно обмануть (например, слить ссылку в файл, как число, и стереть из памяти), но в основном такие примеры искусственны.
no subject
Date: 2004-12-16 07:58 am (UTC)Поскольку "дух каждой задачи нужно облечь в реализующую материю", то весь этот пре- и пост-процессинг становится боллнеком, когда задач много и они мелкие.
Насчёт запаковки я ещё такую штуку придумал. Можно же заливать на суперкомп исходник. А там его компилировать (для разноархитектурных блинов в разный код) и сразу же запускать. Жалко, юниксовый шелл не умеет такие штуки делать - "запустить слинкованный код, переданный по пайпу" :)
Насколько я знаю, для Жабы нет специального внутреннего шедуляйзера, вся планировка работает через LSF. А LSF не предназначена для внутреннего дробления процессов. Она просто берёт процесс как целое, меряет его разными мерками и запускает на подобающем железе.
Но даже не multi-shitty-threading - проблема Жабы. А неэффективный garbage collector, который "отложил и неизвестно". Вот это действительно ужас ужасов, особенно при разделяемых ресурсах. По сравнению с ним в Перле сборка мусора осуществляется достаточно эффективно: как только на объект исчезла последняя ссылка, он ресайклится. Конечно, его можно обмануть (например, слить ссылку в файл, как число, и стереть из памяти), но в основном такие примеры искусственны.