Многоядерные платформы Intel: будущее наступает сегодня

picpic
Минувший Форум Intel для разработчиков, проходивший в начале марта в Сан-Франциско, принес долгожданную новость — корпорация Intel рассчитывает начать поставки процессоров на базе новой микроархитектуры Intel® Core™, производимых с использованием передовой 65-нанометровой технологии Intel, в третьем квартале 2006 года.

Новая микроархитектура ляжет в основу продуктов для всех сегментов рынка компьютеров – настольных ПК (процессор под кодовым наименованием Conroe), мобильных ПК (Merom) и серверов (Woodcrest). Грядущие продукты обеспечат впечатляющий рост производительности (от 40% для Conroe до 80% для Woodsrest) при существенном снижении энергопотребления (примерно на 35-40%); причем уже к концу 2006 года Intel планирует довести долю многоядерных процессоров в объеме своих поставок до 70% для настольных и мобильных ПК и 85% для серверов. Таким образом, продукты на базе многоядерной архитектуры Intel окончательно утвердятся на рынке, предлагая пользователям высочайшую производительность, уменьшенное энергопотребление и возросшую функциональность.

Эра многоядерных процессоров наступила

В течение последних двух-трех лет развитие цифровых технологий приобрело поистине лавинообразный характер – сегодня мы наблюдаем появление полупроводниковых устройств, на порядок превосходящих своих собратьев пяти-шестилетней давности как по вычислительной мощи, так и по функциональной гибкости. Современные устройства все больше влияют на образ нашей жизни, определяя стиль отдыха, работы, общения людей и предоставляя базовый функционал по доступной для каждого пользователя цене, хотя еще сравнительно недавно такие возможности казались достижимым лишь для владельцев штучных изделий с баснословной стоимостью. Обычные домашние ПК, ставшие неотъемлемой частью нашей жизни, концентрируют в себе вычислительную мощь, о которой раньше не могли мечтать даже ученые, располагавшие кластерами высокопроизводительных систем. С помощью ПК мы познаем богатства Интернета, храним свои цифровые архивы, общаемся с друзьями и реализуем свои творческие фантазии.

Мозг любого компьютера – это процессор, который оперирует всеми необходимыми вычислениями. С каждым годом ему требуется работать все быстрее и быстрее, потому что постоянно растут наши требования к нему. Мало того, ему необходимо выполнять несколько задач одновременно: все чаще нам хочется путешествовать по Интернету, скачивая при этом из Всемирной паутины любимую мелодию в формате МР3, а то и видеофильм, да еще проверять при этом поступающую электронную почту на наличие вирусов. Даже Гай Юлий Цезарь, известный своей способностью одновременно осуществлять сразу несколько дел, и тот не справился бы с такой нагрузкой.

Чтобы наделить компьютерные системы новыми способностями, корпорация Intel предложила идеологию перехода к следующему этапу эволюционного развития цифровых полупроводниковых устройств – а именно, многоядерную архитектуру процессоров и соответствующих платформ. Весной 2005 года корпорация Intel объявила о выходе первых двухъядерных продуктов для настольных систем, созданных на базе 90-нм технологического процесса, – процессора Intel® Pentium® Extreme Edition 840, обладавшего способностью обрабатывать до 4 потоков инструкций за счет поддержки технологии Hyper-Threading, процессоров семейства Intel® Pentium® D серии 8xx, а также наборов микросхем семейства Intel® 945/955X Express с подержкой двухъядерных процессоров. Позднее, в самом начале 2006 года линейка двухъядерных процессоров была дополнена моделями, созданными на базе нового, 65-нм технологического процесса, – процессором Intel® Pentium® Extreme Edition 955 и процессорами Intel® Penium® D серии 9хх, а также набором микросхем Intel® 975X Express.

Немного теории

Многоядерный процессор содержит два или больше вычислительных ядер на одном кристалле. Он имеет один корпус и устанавливается в один разъем на системной плате, но операционная система воспринимает каждое его вычислительное ядро как отдельный процессор с полным набором вычислительных ресурсов. Например, двухъядерный процессор – это реализация многоядерности с двумя вычислительными ядрами.

Результаты опроса, проведенного компанией Harris Interactive по заказу корпорации Intel, показали, что 9 из 10 пользователей не раз сталкивались с проблемами, запуская одновременно несколько приложений с высокой интенсивностью вычислений. Среди подобных проблем отмечались зависание компьютера, временные задержки при воспроизведении видео, отключение функций, задержки обновления экрана, а также ухудшение качества воспроизведения звука. Для домашних пользователей это означает резкое снижение впечатлений от общения с компьютером, для корпоративных же пользователей секунды задержек складываются в минуты, часы, дни и даже недели ожидания, отнимая рабочее время сотен и тысяч работников, снижая производительность и уменьшая практический результат.

Переход к многоядерным вычислениям был принят в качестве долговременной стратегии корпорации Intel много лет назад. Специалисты Intel уже давно работают над концепцией параллелизма и аппаратными средствами реализации многопоточности, при этом одно из самых первых открытых обсуждений этой темы имело место в статье, написанной в 1989 году архитекторами Intel Патриком Гелсингером (Pat Gelsinger), Паоло Гарджини (Paolo Gargini), Герхардом Паркером (Gerhard Parker) и Альбертом Ю (Albert Yu) (www.intel.com/research/silicon/ieee/circa2000.pdf). Хотя исследования этой области в корпорации Intel начались раньше, публикация данной статьи стала, повторимся, первым открытым обсуждением концепции многоядерных процессоров.

В 1993 году корпорация Intel внедрила в массовое производство параллелизм на уровне команд, выпустив процессор Intel® Pentium®, обладавший способностью декодировать и выполнять команды вычислительного потока параллельно. Годом позже специалисты Intel реализовали двухпроцессорную обработку (два полноценных процессора помещались в два разъема на одной системной плате), создав аппаратную многопоточную среду для серверов и рабочих станций. В 1995 году был представлен процессор Intel® Pentium® Pro, поддерживавший эффективное объединение четырех процессоров на одной системной плате, что позволило обеспечить более высокую скорость обработки данных в многопоточных приложениях, ориентированных на серверные платформы и рабочие станции.

Появление в 2002 году технологии Hyper-Threading (HT) ознаменовало приход многопоточного параллелизма, т.е. возможности выполнять разные потоки приложений одновременно на одноядерном процессоре. Тестирование производительности, проведенное корпорацией Intel, показало, что на процессорах с технологией HT скорость работы некоторых приложений возрастает в среднем на 30%.

Ныне, взяв курс на многоядерные платформы, корпорация Intel стала лидером в процессе перехода на многопоточные и параллельные вычисления на массовых ПК, обеспечив обработку данных на нескольких вычислительных ядрах одного процессора.

Два – лучше, чем один

В случае появления любой инновации первые вопросы, которыми задаются пользователи, звучат всегда одинаково. Что данная инновация сулит лично мне? Как она изменит мою жизнь? Смогу ли я делать с ее помощью то, чего не мог делать раньше?

Большинство приложений, уже сегодня оптимизированных для параллельного исполнения вычислительных потоков – скажем, программ, поддерживающих технологию Hyper-Threading или предназначенных к исполнению на рабочих станциях или серверах с двухпроцессорной конфигурацией, при выполнении на многоядерном процессоре демонстрируют прекрасную масштабируемость производительности. К этой категории относятся мультимедийные приложения (а именно, ПО для создания контента, редактирования и воспроизведения локальных и поточных мультимедийных данных), научные приложения и системы CAD/CAM.

Что касается многозадачности, то благодаря многоядерной архитектуре процессора может быть улучшено время отклика ПК в любой среде, в которой пользователь активно работает с двумя или более приложениями, либо фоновые процессы (антивирусная проверка, фильтрация спама, обновление ПО и драйверов, архивирование файлов, автоматическая проверка почтового ящика и т.п.) «конкурируют» друг с другом и несколькими приложениями пользователя за вычислительные ресурсы. Попытайтесь, например, во время интенсивной антивирусной проверки запустить текстовый редактор и набрать несколько фраз — в течение некоторого времени ПК будет «пробуксовывать», не отображая набранный текст на экране. Приложения, требующие высокой интенсивности вычислений, «тормозят» друг друга, что очень хорошо заметно, например, при обработке видео и одновременном запуске игры.

Многоядерные процессоры продолжают тенденцию последних лет – постоянное повышение производительности компьютеров, но вместе с тем способствуют уменьшению потребляемой мощности. Как производительность компьютера влияет на продуктивность работы? Уменьшение времени отклика ПК сокращает ожидание и степень неудовлетворенности пользователя при выполнении разных задач, будь-то обработка финансовой информации для тех, кто предпочитает брать часть офисной работы на дом, кодирование мультимедиа для любителей цифровой музыки МР3 или видео DVD, улучшение качества графики и скорости ее отображения в современных реалистичных играх, повышение быстродействия в интерактивных обучающих приложениях и мн. др. Что же касается многозадачных сценариев использования многоядерных платформ, то их существует великое множество – например, редактирование фотографий при одновременной записи телепередачи с помощью цифрового «видеомагнитофона», или же загрузка контента из Интернета при одновременном антивирусном сканировании в фоновом режиме.

Все большее значение многоядерные процессоры приобретают в условиях всеобщей «цифровизации» информации, окружающей нас. Музыка, видео, фотографии, игры – их носители повсеместно становятся цифровыми, растет и количество устройств, генерирующих, обрабатывающих и хранящих цифровой контент (фото- и видео-камеры, DVD-плейеры, МР3-плейеры и т.д.). Мир стоит на пороге полномасштабной реализации концепции цифрового дома, когда все устройства в нашем жилище смогут быть объединены в домашнюю сеть, позволяющую предоставлять сервис по обработке цифрового контента в качестве обычной коммунальной услуги. Обязанности типичного домашнего ПК существенно возрастут, жизнь в цифровом доме будет во многом зависеть от эффективности многозадачной работы многоядерных процессоров и от их способности управлять всем комплексом устройств — телевизорами, стереосистемами, видеокамерами, а также другими устройствами и приспособлениями в цифровом доме.

Еще одна важная задача – расширение коммуникационной функции ПК. По мере того как новые телекоммуникационные технологии, такие как VoIP, проникают в наши офисы и дома, а пропускная способность сетей продолжает расти, обработка огромного количества пакетов данных не должна влиять на скорость работы основных приложений. Многоядерные процессоры помогут справиться с этой задачей, распределив ресурс вычислительных ядер для обработки сетевых пакетов и выполнения других приложений.

Многоядерные процессоры Intel в сочетании с другими компонентами платформ предоставляют расширенные возможности для управления и обеспечения безопасности. Они позволяют уменьшить время отклика системы во время одновременной работы нескольких управляющих или профилактических программ, таких как антивирусная проверка, обновление ПО, проверка конфигурации или запрос на инвентаризацию. Более того, используя технологию виртуализации, поддерживаемую многими платформами Intel, можно одновременно запустить несколько операционных систем без снижения производительности приложений в каждой из них.

Виртуальная реальность

Значительные вычислительные ресурсы многоядерных процессоров предоставят разработчикам игр большую степень свободы для создания полноценной графики, реализации физики процессов, а также функций искусственного интеллекта. Например, при обработке алгоритма воспроизведения фотореалистичной графики, требующего огромной вычислительной мощности, можно использовать одно или несколько специализированных ядер для рендеринга в реальном времени.

Кроме качества изображения, выразительность игре придадут встроенные в нее расширенные функции искусственного интеллекта. Например, сегодня искусственный интеллект противостоящего игроку компьютерного персонажа ограничен только возможностью оптимального вычисления маршрута перемещения – ужасные монстры достаточно хорошо ориентируются в игровых лабиринтах, но не обладает тем уровнем интеллекта, которого можно было бы ожидать от живого соперника. В будущем разработчики игр смогут использовать преимущества многоядерных процессоров, выделив одно или несколько ядер для обработки графики, а остальные загрузив выполнением функций искусственного интеллекта. Это позволит создавать в высшей степени реалистичные игры.

Несмотря на то, что для полного овладения тонкостями многопоточного программирования разработчикам игр потребуется еще какое-то время, ведущие разработчики игр, включая компании Epic Games, Lionhead Studios, BioWare, Ubisoft и др. уже используют эту технологию при разработке игр.

Многоядерность также будет способствовать повсеместному распространению коллективных игр. Уже сегодня компьютеры обладают достаточной мощностью для поддержки игр, вычислительные ресурсы которых распределены в Интернете.

Микроархитектура Intel® Core™ — не за горами четыре ядра

«Микроархитектура Intel Core — это очередной этап улучшения масштабируемости производительности и экономичности, — сказал Джастин Раттнер, главный директор Intel по технологиям. — Уже в этом году мы представим разработанные на ее основе двухъядерные процессоры, а в 2007 году — четырехъядерные процессоры, которые, как мы полагаем, будут отличаться самым привлекательным в отрасли соотношением производительности и функциональности к энергопотреблению. Благодаря этому пользователи смогут приобрести более производительные, компактные и тихие системы с продленным сроком автономной работы и меньшими требованиями к электропитанию».

Микроархитектура Intel Core позволит улучшить впечатления пользователей от работы на компьютерных устройствах в любой обстановке: дома, в офисе и даже в пути. Домашние пользователи смогут приобрести высокопроизводительные, тихие, стильные и экономичные системы для работы и развлечений, поддерживающие целый ряд инновационных технологий. Компании смогут снизить требования к площади помещений, а также охлаждению и электропитанию систем в центрах обработки данных, улучшив при этом производительность и энергопотребление клиентских и серверных платформ. Мобильным пользователям наверняка придется по вкусу то, что микроархитектура Intel Core повышает производительность системы, продлевает срок автономной работы от батареи и позволяет создавать самые разнообразные компактные ноутбуки, способные удовлетворить любые потребности в мобильных вычислениях.

Новая микроархитектура Intel объединяет в себе целый ряд инновационных технологий. Технология Intel® Wide Dynamic Execution позволяет обрабатывать больше команд за такт процессора, повышая эффективность выполнения приложений и сокращая энергопотребление. Каждое ядро процессора, поддерживающего эту технологию, может выполнять до четырех инструкций одновременно, используя эффективный конвейер из 14 стадий. Технология Intel® Intelligent Power Capability делает энергопотребление еще более низким, активируя отдельные логические подсистемы только по мере необходимости. Технология Intel® Advanced Smart Cache включает в себя совместно используемую кэш-память 2-го уровня, которая снижает энергопотребление и повышает производительность, позволяя одному из ядер процессора использовать всю кэш-память при динамическом отключении другого ядра. Технология Intel® Smart Memory Access повышает производительность системы, сокращая время отклика памяти и оптимизируя, таким образом, использование пропускной способности подсистемы памяти. Технология Intel® Advanced Digital Media Boost позволяет обрабатывать все 128-разрядные команды SSE, SSE2 и SSE3, широко используемые в мультимедийных и графических приложениях, за один такт, что увеличивает скорость их выполнения.

Многоядерные платформы стали существенным стимулом для разработки новых приложений, которые привнесут преимущества масштабных вычислений во все области жизнедеятельности человека – от медицины до промышленных предприятий, от цифрового офиса до цифрового дома, от мобильных решений до новейших игр. Только представьте, что через какое-то время мы сможем располагать компьютерами с сотнями вычислительных ядер, обладающими вычислительной мощью современных суперкомпьютеров… Что вы сможете сделать с его помощью? Или, может быть, лучше поставить вопрос по-другому: есть что-то, чего вы не сможете сделать благодаря своему ПК?

Orphus system