Статьи

Про “Аватар”

в рубрике Другое

Времени нет. Поэтому опять выступлю кратко.
В поисках правды облегченных развлечений я зашла на сайт habrahabr, и в блоге компании Hewlett-Packard обнаружила интересную статью о дата-центре, который использовался для создания спецэффектов в фильме “Аватар” Джеймса Кэмерона. Кластер был собран на серверах HP (34 стойки с 32 блейдами HP Proliant BL2×220c в каждой – 40 000 процессорных ядер и 104 Тб RAM), с использованием оптоволоконной сети стораджей на 3 Пб.
Однако “голыми” HP Proliant BL2×220c нас, конечно же, не удивишь. Оказалось, что в мире создателей спецэффектов используются примерно те же подходы, что и в старой доброй классике - системах реального времени. Создатели “Аватара” предпочли отказаться от модных тенденций распараллеливания задач с помощью виртуализации. Процесс работы над фильмом строился так, что задачи от разных художников, работавших над отдельными сценами, собирались в иерархическую очередь с помощью системы, которая по порядку отдавала их на свободные процессоры кластера, загружая их на 100% одной задачей, и после обсчета результат возвращался художнику.
Кому интересно - читайте здесь.

Комментариев: 3 на “Про “Аватар””

  1. Пакетная обработка - это, конечно, старая добрая классика. Только не совсем понятно, какое отношение она имеет к системам реального времени. Кстати, в статье на хабре про реальное время вроде ничего нет.

  2. Потому что это один из приемов, часто используемых в системах реального времени (но, конечно, не ограничиваясь только ими).
    Если не опираться на собственный опыт, а обращаться к литературе, то см., например “Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks, and Patterns” и “Real-time design patterns: robust scalable architecture for real-time systems” (Bruce Powel Douglass). Там как раз подробно рассматриваются несколько примеров реализации такой иерархической очереди в процессе обработки сигналов, поступающих от различных модулей, динамически подключаемых к системе.
    А из “живых” real-time систем, с которыми я имела дело, такой подход использовался в реализации системы, являющейся одним из модулей системы автоматизации процесса переработки нефти (вот этой).

  3. Кэмерон в качестве динамически подключаемого модуля - это сильно.

    Очереди используется практически везде. В том числе, конечно, и в системах реального времени, кто бы спорил, очень даже часто используются. И что? Если где-то есть очередь задач, это обязательно система реального времени? А если нету - то нереального?

    Организовано все как в университетском ВЦ моего детства. Главное - чтобы машина не простаивала. Днем считают высокоприоритетные ученые мужи, ночью обсчитываются студенческие поделки. Если, конечно, высокоприоритетные мужи днем все досчитали. Если не досчитали - поделки стоят в очереди. Но, если уж поделка достоялась до выполнения - то тут хоть трава не расти. Разве что по нехватке времени вылетит или оператор руками убьет, а так - ничего из своих ресурсов никому не отдаст, пока не доработает, невзирая ни на чьи приоритеты. И вот, очередь вроде есть, но где тут система реального времени?

    P.S. Спасибо за ссылку про DeltaV. Про очереди там, правда, ничего на глаза не попалось :-), но вообще очень познавательно.

Прокомментировать

Вы должны быть авторизованы для комментирования.

Партнеры

Microsoft ITONLINE Group ScrimTrek IT Trainings


© Careerlab, ITONLINE GROUP 2010 Команда Software People

+7 (495) 775-15-43

team@softwarepeople.ru