|
| Россия Worldwide |
|
Создавать новое, если необходимо, и использовать существующее, если возможноОб истории и идеологии развития серверного направления Sun, о ближайших планах компании рассказывает Павел Анни, менеджер по маркетингу вычислительных систем Sun Microsystems Новая классификация серверовТак уж сложилось, что вплоть до последнего времени практически все серверы любых производителей разрабатывались в расчете на гипотетическую усредненную нагрузку, без привязки к специфике приложений. В итоге они получались избыточно универсальными, а следовательно, недостаточно эффективными. Если же допустить возможность специализации серверов под определенные типы нагрузок, откроется пространство для существенного повышения их эффективности. Специалисты Sun проанализировали существующие приложения, выделили наиболее типичные и разделили их по профилям нагрузки с учетом требований к производительности процессора, объемам оперативной памяти, быстродействию подсистем ввода/вывода. Под профилем нагрузки подразумевался целый комплекс требований, связанных не только с вычислительными, но и с эксплуатационными параметрами систем, такими как надежность и готовность. Дальше осталось выполнить обычную исследовательскую работу - анализ и систематизацию, что и привело к созданию своеобразной "периодической системы" приложений. Полученная группировка приложений обеспечивает нахождение оптимального баланса между универсальностью и специализацией. Понятно, что любому заказчику хочется получить специализированное устройство, которое решает конкретную задачу (например, сервер для бизнес-приложений или обработки результатов геофизических исследований). Но для того чтобы построить хотя бы одну специализированную машину, надо вложить значительные средства, а создавать десятки или сотни таких устройств под разные типы нагрузок экономически бессмысленно. Очевидно и то, что нельзя разработать единую серверную архитектуру, подходящую для конкретных задач каждого заказчика. А значит, нужен паллиатив: следует научиться создавать серверы общего назначения с возможностью ориентации на конкретные нагрузки. В области классификации приложений сложно открыть Америку, поэтому выработанные исследователями Sun принципы, на первый взгляд, тривиальны. В компании пришли к выводу о необходимости выделить три основные категории нагрузок -- со значительным объемом вычислительной составляющей (в Sun их назвали Computer-centric), преимущественно связанные с обработкой больших объемов данных (Data-centric) и вызванные необходимостью одновременной обработки нескольких потоков данных (Network-centric). А далее можно было сделать столь же несложный вывод: при разработке новых процессорных технологий и архитектур самих систем следует опираться на классификацию по типам нагрузок. В результате достаточно создать три основных класса серверов. Устройства каждой из этих категорий характеризуются собственным набором требований. В некоторых случаях представления о машинах ортогональны, то есть какие-то качества абсолютно необходимы для серверов баз данных, но избыточны и не востребованы в сетевых серверах. Примечательно, что классификация серверов по категориям нагрузок завоевывает все большую популярность. Теперь, говоря о классах серверов, не оперируют, как раньше, количественными категориями. Уходят в прошлое и рассуждения о 2-, 4- и 16-процессорных классах серверов. Больше не классифицируют серверы по стоимости: серверы начального ценового уровня (до 10 тыс. долл.), среднего и высокого, или, скажем, серверы стоимостью больше и меньше миллиона долларов. Предлагаемая классификация делит серверы по их назначению, а не по масштабу. Она допускает существование в категории вычислительных нагрузок как серверов с несколькими процессорами, объединенных в SMP-систему, так и одно- или двухпроцессорных серверов-лезвий, собранных в большие кластеры. А в семейство серверов баз данных могут входить и серверы класса high-end, и серверы среднего уровня. Формулировка "серверы одного класса", как правило, означает именно модели сходного назначения. Проведем аналогию с автомобильной промышленностью: очевидно, что бессмысленно сравнивать машины по их стоимости, поскольку представительский легковой автомобиль и строительный самосвал могут иметь одинаковую цену. Не сравнивают автомобили и по мощности двигателей, ведь, например, некоторые спортивные мотоциклы являются гораздо более мощными, чем семейный седан. Рациональный подходИтак, теперь понятно, что требуется, но какими же средствами можно добиться желаемого результата? Экономически целесообразные серверы в каждом из этих классов следует строить из стандартных, широко распространенных компонентов аппаратного и программного обеспечения. Эту истину компания исповедовала с момента своего создания, и именно она позволила ей 20 лет назад стать лидером на рынке UNIX-рабочих станций. Sun всегда удавалось строить новое из стандартных компонентов с использованием собственных оригинальных решений. Вспомним: в тот момент, когда компания создала свою первую рабочую станцию, аналоги уже существовали, например Apollo. Более того, все компоненты, из которых собрана эта станция, были доступны на рынке. Но только команда Sun сумела объединить общедоступные узлы таким образом, что их совокупность обеспечила новую ценность. В том-то и состоит преимущество Sun: она всегда, когда это возможно, использует распространенные на рынке индустриальные стандарты и создает самостоятельно только ключевые компоненты. Скажем, в начале 80-х годов разработчики экспериментировали с разными процессорами. В частности, существовали компьютеры на базе 386-х процессоров, а первые вычислительные машины Sun базировались на стандартных (в тот период) процессорах Motorola 68000. Через некоторое время было решено: поскольку именно процессор является ключевым компонентом, необходимо разрабатывать его самостоятельно. Так родился процессор SPARC. Не менее весомый вклад в общую систему, которую построила компания,, внесла разработка собственной версии UNIX. Сетевую составляющую Sun не пришлось создавать самостоятельно, поскольку к тому времени уже была признана ее необходимость в каждой современной системе, утвердился и широко распространился протокол TCP/IP, начал развиваться Internet. Sun не изменяет этому правилу и сейчас. Несколько лет назад, когда компания начала выпускать системы на базе процессоров AMD Opteron, возникло немало досужих рассуждений. Одни эксперты утверждали, что Sun необходимо было сделать этот шаг уже давно. Другие считали, что Sun отказывается от приверженности RISC-архитектуре и идет на поводу у рыночной коньюнктуры. Однако сделанное Sun вполне укладывается в ее "классическую" концепцию: почему бы не использовать уже существующий процессор, если он обеспечивает действительно высокую эффективность, хорошую производительность, надежность и прочие важные параметры. Это вовсе не означает, что Sun отказывается от RISC-архитектуры: всегда остается определенный круг задач, для выполнения которых необходимы процессоры на основе SPARC. Теперь корпорация поддерживает две процессорные архитектуры, и на них основаны все ее продукты. Эти линейки не конкурируют между собой. В области больших баз данных до сих пор ни одна система x64 не может соперничать с серверами на базе RISC-процессоров старшего класса, которые когда-то назвали мидфреймами. Для больших баз данных нужны емкость оперативной памяти порядка сотен гигабайт и множество процессоров, которые работают и выполняют запросы параллельно. В таких системах используются хорошо отработанные технологии высокой готовности, способы управления ресурсами, распределения задач на динамические домены и т.д. Многопотоковые серверы - ноу-хау SunОбработка сетевых потоков - еще одно важное направление. К нему относятся Web-, прокси- и медиа-серверы, а также серверы приложений и промежуточные серверы обработки транзакций. Для этого класса приложений большая емкость оперативной памяти и количество процессоров не столь важны, потому что масштабирование осуществляется за счет добавления серверов. Не столь высоки и требования к надежности систем: работа осуществляется в рамках больших комплексов, и если один из десятков серверов выходит из строя, это не становится значимой проблемой. Задача обработки сетевых потоков и приложений является широко распространенной, а потому в Sun было решено продвигаться именно в направлении создания специализированных процессоров, ориентированных на обработку этих задач. Так появился процессор UltraSPARC T1, ранее известный под кодовым названием Niagara. Как показали тесты, он демонстрирует гораздо более высокую производительность, чем процессоры общего назначения. Еще одной специфической особенностью таких машин является работа подсистемы ввода-вывода. Здесь также уместно провести историческую аналогию. В начале 90-х годов так же остро стояла проблема ввода-вывода данных. Sun разработала собственную подсистему ввода-вывода S-bus, и спецификации этой новой шины были опубликованы. Целями публикации стали, во-первых, стремление сделать эту технологию массовой (и, соответственно, дешевой), а во-вторых, желание позволить независимым производителям выпускать платы, адаптеры и прочее дополнительное оборудование для шины ввода-вывода S-bus. После появления индустриального стандарта PCI в Sun не сочли нужным настаивать на применении только S-bus, и какое-то время в машинах сосуществовали платы стандартов S-bus и PCI. Компания придерживается подобной практики и в связи с появлением UltraSPARC T1. Sun постоянно стремится к максимальной открытости технологий, поскольку лишь массовые технологии могут быть дешевыми. После разработки специализированного процессора SPARC появилась программа Open SPARC: компания раскрыла внутреннюю архитектуру процессора UltraSPARC T1 и все исходные тексты на языке Verilog (VHDL). Теперь любая фирма, которая располагает полупроводниковым производством с технологической нормой 90 нм, может изготовить собственный процессор, совместимый с UltraSPARC T1. Естественно, цель Sun состоит не в клонировании процессоров, а в том, чтобы на UltraSPARC T1 начали переносить другие операционные системы, в частности Linux. Есть сведения, что на этот процессор также перенесена и ОС Free BSD. Планы на будущее: APL и RockЧто касается более "тяжелых" систем, у Sun есть два направления работы. Некоторые заказчики проявляют разумный консерватизм и не спешат сразу использовать новейшие технологии в своих вычислительных центрах. Именно для них разрабатывается семейство систем, в котором используются традиционные технологии Sun. Эти системы соответствуют принципам SMP. Прежде всего, к ним относятся "тяжелые" серверы Sun Fire, которые работают на нескольких десятках процессоров и с несколькими сотнями гигабайт оперативной памяти. Сейчас Sun готовится к выпуску нового семейства продуктов под кодовым названием Advanced Product Line (APL), разработанного в альянсе с компанией Fujitsu. Входящие в него серверы основаны на тех же принципах симметричной мультипроцессорной архитектуры, но включают в себя и некоторые технологические новшества. Их область применения охватывает диапазон от mid-range до high-end. С Fujitsu компанию связывает многолетнее партнерство: самые первые SPARC-системы, которые Sun выпустила в 1987 году, были созданы на базе процессоров, изготовленных на заводах Fujitsu. Спустя несколько лет компания Fujitsu, используя открытость архитектуры SPARC, начала разработку собственных процессоров SPARC64 и серверов на их основе. Все эти серверы, как и серверы Sun, работают под управлением ОС Solaris. Известно, что системы Sun всегда очень хорошо сбалансированы. В то время как другие компании часто концентрируются на разработке, например, процессора, в Sun понимают, что, образно говоря, сердечно-сосудистая система не менее важна, чем мозг. При создании серверов корпорация уделяет большое внимание разработке подсистемы ввода-вывода и внутренней системы interconnect, которая обеспечивает обмен между процессором и памятью, процессором и подсистемой ввода-вывода. Учитывается, что эти внутренние коммуникации особенно важны при работе с базами данных. Взаимодействуя с Fujitsu, Sun взяла на себя подготовку подсистемы ввода-вывода и ОС Solaris, в то время как партнер создает процессор SPARC64. В результате такого сотрудничества, при котором разработчики не дублируют друг друга, было создано новое поколение серверов SPARC, которые работают под управлением ОС Solaris. Хотелось бы подчеркнуть, что речь идет лишь о сотрудничестве в области инженерной разработки, а не об организации совместного предприятия или общей структуры продаж и продвижения этих продуктов. Нам бы очень хотелось, чтобы наши консервативные заказчики тоже начали смотреть вперед. Мы стараемся готовить такие компании к необходимости адаптации существующих приложений и их перевода на новые процессорные технологии уже через два года, когда Sun выпустит системы на базе многоядерных многопотоковых процессоров. Представителем этого семейства является процессор, достаточно часто упоминавшийся в прессе и сейчас фигурирующий под кодовым названием Rock. Он объединяет принципы, "отлаженные" в процессе работы над проектом Niagara, с архитектурными новшествами, принципиально новыми изобретениями инженеров Sun. Эти, только что запатентованные, технологии обеспечивают высокую производительность при выполнении многопотоковых параллелизуемых приложений, сохраняя хорошее быстродействие и в случае однопотоковых задач. Данное направление для Sun -- направление будущего, которое, в соответствии с планами компании, наступит уже через два года. И Sun вкладывает в него основные интеллектуальные усилия. IT Проспект, Осень 2006 | |||||||||||||||||||||