Год настоящих прорывов
О наиболее значительных разработках компании Sun Microsystems в 2005 году рассказывает Павел Анни, менеджер по продуктам Sun Microsystems.
жизни каждой high-tech-компании бывают периоды постепенного, незаметного для постороннего глаза накопления инноваций, но в один прекрасный момент наступает прорыв и эти инновации воплощаются в новых продуктах и приложениях. И минувший год для Sun Microsystems стал годом настоящих прорывов. Начну с оборудования.
На рис. 1 показаны три волны процессорных технологий. Первая из них относится ко времени мэйнфреймов, когда процессоры строились из большого количества элементов, сначала из электронных ламп, а потом из микросхем. В 1985 году началась вторая волна, когда микропроцессоры стали делаться на одном кристалле. При этом вначале их частота работы (33 МГц) была заметно меньше, чем у мэйнфреймов, и многие скептически относились к перспективам этой волны. Тем не менее, как мы с вами хорошо знаем, персональные компьютеры и серверы завоевали мир, но и их развитие выходит сегодня на стадию насыщения, поскольку память все сильнее отстает от процессоров, а сами процессоры теперь все труднее разгонять, да и смысл разгона утрачивается, поскольку процессоры становятся все горячее. Кроме того, транзисторов появляется все больше (скоро их уже будет миллиард!), процессоры все сложнее проектировать и все дороже производить. Выход из этой ситуации начало новой волны, суть которой заключается в создании сетей из микросистем. Рецепт корпорации Sun Microsystems таков: надо создавать процессоры и системы, ориентированные на разные виды нагрузок; располагать на одном кристалле несколько простых ядер (что дает экономию при проектировании и производстве); внедрять многопотоковость несколько аппаратных потоков на ядре. Первый продукт новой волны процессор UltraSPARC T1 (кодовое название Niagara) (рис. 2).
Рис. 1. Три волны процессорных технологий
Рис. 2. Структурная схема процессора UltraSPARC T1
Этот высокопроизводительный процессор со сниженным энергопотреблением будет впервые использован в новых передовых серверах Sun Fire уже в 2005 году. Использующий технологию «многопотоковости на кристалле» CoolThreads, UltraSPARC T1 является первым в мире экологическим процессором. Исследования показывают, что высокая производительность процессоров UltraSPARC T1 позволяет уменьшить число всех web-серверов в мире, что может существенно сократить потребление энергии и оказать такое же влияние на снижение содержания углекислого газа в атмосфере, что и увеличение площади леса на 400 тыс. га.
В то время как энергопотребление большинства современных процессоров составляет около 150 Вт, процессору UltraSPARC T1 необходимо всего около 70 Вт, что сравнимо с объемом энергии, потребляемой многими бытовыми лампочками. UltraSPARC T1 обеспечивает высокую скорость обработки транзакций и позволяет экономить миллионы долларов за счет снижения расходов на электропитание и охлаждение систем вычислительных центров, а также на аренду помещений.
UltraSPARC T1, разработанный на базе архитектуры SPARC, поддерживает технологию CoolThreads и имеет восемь ядер, способных одновременно выполнять по четыре потока. Кроме того, данный процессор, отличающийся, как уже было сказано, низким энергопотреблением, обеспечивает в то же время существенный прирост производительности системы и использует преимущества разработанной специалистами Sun инновационной архитектуры «многопотоковости на кристалле» (Chip Multi-Threading, CMT) для эффективного выполнения многопотоковых приложений.
Итак, UltraSPARC T1 это:
- первый процессор, который объединяет 32 системы на одном кристалле, производимом с использованием 90-нанометровой технологии. Благодаря восьми ядрам с тактовой частотой 1,2 ГГц, которые по суммарной производительности сравнимы с гипотетическим процессором с частотой 9,6 ГГц, новый процессор обеспечивает огромные преимущества;
- первый процессор с целым рядом дополнительных компонентов так, интеграция коммуникационных средств в процессор делает систему более компактной, снижает ее энергопотребление и повышает производительность;
- первый процессор с четырьмя контроллерами памяти эффективные средства передачи данных между вычислительными ядрами и памятью доставляют процессору данные с той скоростью, с которой он может их обработать;
- высокая производительность при низком уровне энергопотребления, поскольку минимальные задержки при доступе к памяти позволяют передавать больше данных за конкретный интервал времени;
- первый процессор, потребляющий менее 70 Вт энергии и, как следствие, генерирующий меньше тепла.
UltraSPARC T1 позволяет повысить защищенность системы за счет 10-кратного ускорения шифрования (в сравнении с процессорами конкурентов) и более эффективного выполнения программных средств обеспечения безопасности. Процессор шифрует тот же объем данных за меньшее число циклов, чем другие процессоры. При этом на шифрование расходуется всего лишь 5% ресурсов процессора.
Пять лет назад наши инженеры осознали ограничения традиционной архитектуры процессоров и приступили к разработке технологии CoolThreads. Результат их работы по значимости не уступает созданию процессоров с архитектурой RISC и может оказать столь же заметное влияние на рынок, как технология Java.
По мере увеличения мировых цен на энергоносители проблема потребления энергии современными вычислительными центрами становится все более серьезной как в экономическом, так и в экологическом плане, поскольку:
- возможности 80% всех вычислительных центров ограничены тепловыделением и энергопотреблением;
- количество тепла, выделяемого аппаратными системами одинакового объема, за последние 5 лет увеличилось более чем в 4 раза;
- в 40% вычислительных центров необходимо модернизировать систему отопления, вентиляции и кондиционирования воздуха;
- более чем в 50% вычислительных центров регистрируются температурные показатели, превышающие средний уровень.
Проблемы, связанные с энергопотреблением и охлаждением систем, сегодня не менее важны, чем производительность. Прошли те времена, когда устройства сравнивались по соотношению «цена/производительность». Главное сегодня это эксплуатационные показатели, своеобразный КПД то есть та производительность, которую выдает процессор, потребляя определенное количество электричества, воды, воздуха и места. И у UltraSPARC T1 здесь конкурентов нет.
Sun Microsystems планирует начать поставки новых серверов Sun Fire с поддержкой технологии CoolThreads уже в этом году.
Теперь поговорим об инновациях в сфере программного обеспечения. Sun Microsystems не в первый раз обновляет версию ОС Solaris, и каждая новая версия всегда отличается от предыдущей, но эти нововведения не всегда было легко понять даже специалистам. Однако у Solaris 10 есть несколько усовершенствований, которые понятны всем, причем они приводят к существенному улучшению работы компьютерных систем на базе Solaris 10. Так, в последнее время оказались особенно востребованными ОС, способные работать в гетерогенных средах на аппаратных платформах от различных производителей, поскольку большинство компьютерных систем на предприятиях построены именно таким образом. Новая версия Solaris 10 функционирует на нескольких платформах SPARC, x86 и AMD64, что позволяет защитить инвестиции заказчика. Кроме того, реализована совместимость на уровне исходных текстов прикладного ПО для платформ SPARC и x86, а также обеспечивается работа приложений Linux, скомпилированных для платформы x86.
Solaris традиционно славится высокой надежностью. Среди возможностей новой версии, которые должны еще больше укрепить эту репутацию, важнейшее место занимает технология контейнеров Solaris Containers. Контейнеры, или зоны, представляют собой отдельные виртуальные системы, внутри каждой из которых существует собственное пространство имен и процессов, свои наборы пользователей, каталогов, сетевых адресов. Зоны изолированы друг от друга, благодаря чему процессы и пользователи, работающие в одной зоне, не имеют доступа к другой. И даже у суперпользователя (Root) зоны нет возможности увидеть, что делается в другой зоне. Таким образом, даже в случае взлома отдельной зоны злоумышленник не получает доступа ко всей системе, а остается в рамках только этой зоны.
Контейнеры позволяют распределять системные ресурсы (процессорное время, ОЗУ, дисковое пространство) между отдельными процессами, группами процессов и пользователями. Например, администратор может выделить 40 частей (Shares) процессорного времени серверу баз данных, 30 частей серверу приложений; 5 раз по 10 частей 5 web-серверам, работающим в режиме горизонтального масштабирования, в результате чего все эти приложения гарантированно получают свою долю процессорного времени. Технология Solaris Containers дает администратору уникальную возможность создания виртуальных серверов, не пересекающихся друг с другом ни по пользователям, ни по процессам. Каждый из этих виртуальных серверов можно перезагружать по отдельности; можно также запускать и останавливать сервисы и давать пользователям доступ, не опасаясь, что это затронет другие виртуальные серверы, работающие на этой машине.
Важной особенностью реализации Solaris Containers является то, что поддержка даже нескольких десятков и даже сотен виртуальных серверов не увеличивает нагрузку на администратора: все контейнеры работают в рамках одной копии ОС Solaris и могут наследовать все установленные пакеты и патчи, а также глобальные настройки. Таким образом, администратор не должен поддерживать каждый виртуальный сервер в отдельности, поскольку использование технологии контейнеров не налагает на него дополнительных обязанностей. Кроме того, эта технология является экономичной и в плане системных ресурсов: на каждый контейнер требуется менее 1% накладных расходов по сравнению с полноценными виртуальными машинами, в которых функционируют отдельные копии ОС.
Одна из интересных возможностей Solaris 10 это консолидация сообщений об ошибках. Теперь система фиксирует только первопричину ошибки, а не порождает лавину сообщений о различных неполадках, возникших в результате одного-единственного сбоя. Благодаря этому можно сэкономить многие часы рабочего времени администраторов, пытающихся понять причины ошибки. ОС анализирует статистику работы аппаратуры и заранее прекращает использование подозрительных компонентов. Например, обнаружив возникновение корректируемых ошибок оперативной памяти, система оповестит об этом администратора, а сама постарается больше не использовать «умирающий» чип.
Наконец, Solaris 10 имеет средства самолечения (Predictive Self Healing). Заметив неполадки в работе приложений и сервисов, ОС автоматически перезапускает их, благодаря чему последствия случайных сбоев в основном устраняются за считаные секунды без вмешательства администратора.
Чрезвычайно важным является обеспечение не только бесперебойной, но и производительной работы приложений. Чтобы упростить анализ функционирования ПО в реальных условиях, компания Sun включила в новую версию своей ОС средство динамической трассировки задач Dynamic Tracing (DTrace), которое контролирует более 30 тыс. различных точек системы (так называемых проб), позволяя администраторам собирать любую статистику: о частоте системных вызовов, объемах передаваемых данных, размерах стеков, о загрузке процессоров и т.п. Для создания специализированных сценариев контроля за работой системы DTrace имеет собственный язык программирования D. За счет анализа работы реальной, а не тестовой системы возникает возможность оперативно понять причины снижения производительности приложения, а суммарная производительность системы при точной настройке иногда возрастает в 30 раз.
Еще одно важное событие 2006 года это то, что компания Sun Microsystems, в рамках проекта OpenSolaris, открыла доступ к более чем 5 млн. строкам исходного кода Solaris 10, и теперь ОС Solaris 10 можно бесплатно загрузить с web-сайта www.sun.ru. В октябре компания Sun Microsystems объявила о том, что с 31 января (момента официального выпуска ОС) было распространено 3 065 092 зарегистрированных лицензий на использование ОС Solaris 10. Пользователи продолжают бесплатно загружать ОС Solaris 10 каждую неделю регистрируется около 80 тыс. новых лицензий. ОС Solaris 10 в настоящее время поддерживает широчайший спектр отраслевых платформ, в том числе системы на базе процессоров SPARC, AMD Opteron и Intel Xeon, от самых разных производителей, включая Dell, Fujitsu, IBM и HP.
И в заключение хотелось бы подчеркнуть, что все инновации в компании Sun Microsystems делаются не ради самих инноваций, а для решения конкретных проблем, с которыми сталкиваются потребители. Например, одна из характерных черт современного ИТ-рынка быстрое развитие возможностей серверов, рост потребностей ИТ-департаментов. Купив сервер сегодня, через два года компания будет вынуждена приобрести новую, более мощную машину. В серверах компании Sun Microsystems предусмотрено постепенное добавление в сервер новых процессоров по мере необходимости, причем в одной системе, в рамках одного домена могут работать как процессоры UltraSPARC III с частотой 900 МГц, выпущенные в 2001 году, так и процессоры UltraSPARC IV+ с частотой 1500 МГц, выпущенные в 2005 году, плюс еще пять разных видов процессоров UltraSPARC с частотами от 1050 до 1350 МГц. Таким образом, любая компания может расширять свои вычислительные возможности, одновременно сохраняя все вложенные в них средства.