GPU Technology Conference 2010


два первых дня мегаконференции по вычислениям на GPU



Как помнят наши внимательные читатели, это уже вторая конференция, посвящённая различным аспектам использования графических процессоров и особенно вычислениям общего назначения на GPU, которую проводит компания Nvidia. Осенью прошлого года они впервые провели GTC на стыке сентября и октября в городе Сан-Хосе, штате Калифорния, что находится в центре всемирно известной Кремниевой долины. Соответствующий материал об этом был опубликован на нашем сайте.

Эта конференция очень важна для Nvidia, потому что в стратегии развития компании есть совершенно определённый упор на параллельные вычисления на графических процессорах, в частности их собственного производства (хотя и не только). GTC помогает людям, применяющим неграфические вычисления на GPU, обмениваться опытом друг с другом. Причём это касается как технических деталей, интересных для программистов, так и делового подхода (а сколько это будет стоить, а выгодно ли?), полезного для бизнесменов. Для всех этих категорий на GTC есть и отдельные выставки, проходили и специализированные сессии.

Перед прошлогодней конференцией, в 2008 году, вместо GTC проходило другое мероприятие — NVISION, которое имело совсем иную целевую аудиторию, будучи игровым шоу, в первую очередь. Хотя и там были и технические, и прикладные сессии, но первая конференция GTC, проведённая в 2009 году, сильно отличалась значительно возросшей серьёзностью и участников, и подхода в целом.

Темы, которые поднимаются и обсуждаются на GTC, порой очень важны для человечества и они охватывают чуть ли не все существующие сферы нашей деятельности. Достаточно одних только тем, так или иначе затрагивающих здоровье человека, о которых мы расскажем далее. Плюс к этому, применение графических процессоров в высокопроизводительных вычислениях позволяет не просто выполнять какие-то задачи быстрее, чем раньше, но и открывает перед нами новые возможности за счёт увеличения производительности в некоторых задачах не просто в разы, а на порядки.

Прошлогодняя поездка в Кремниевую долину оказалась удачной для нас, и всё мероприятие нам очень понравилось. Ну и самой Nvidia, вероятно, хоть немножечко понравился наш отчётный материал, и они были не против того, чтобы пригласить нас туда и в этом году. Спасибо огромное за приглашение компании Nvidia и отдельно — обаятельной Ирине Шеховцовой!

С американской визой в этот раз всё было довольно просто. Предыдущая годовая виза заканчивалась аккурат перед конференцией 2010 года, поэтому понадобилось её продлить. Что оказалось занятием не очень сложным, ибо собеседования в этом случае уже не потребовалось, и виза была успешно продлена ещё на год.

Наверняка читатели прошлогоднего отчёта помнят приключения автора, связанные с неисправностью самолёта авиакомпании «Дельта», — и хотя две бомбы в одну воронку не падают, в этот раз я очень хотел полететь самолётом какой-нибудь другой компании. И мне повезло — до Франкфурта летел «Люфтганзой», а затем в свои объятья меня принял «Юнайтед».

«Люфтганза» не подвела — «Аэробус А320» был новым, с иголочки, с удобными креслами и вкусной едой — приятно лететь. Но вот что интересно — что на пути в США, что обратно — до терминала мы ехали на автобусах, а не подъезжали на самолёте прямо к гейту.

Тогда я вспомнил, что когда я ехал на такси в аэропорт Домодедово, то по дороге мы с водителем сильно удивились настоящему паровозу, везущему по городу пару пассажирских вагонов. Что-то в этом общее есть: паровоз в Москве и автобус в аэропорту Франкфурта вместо удобного и современного «рукава»…

С прохождением разнообразных контролей в этот раз получилось без особых происшествий. Разве что в Домодедово спросили про буханку ржаного хлеба, которую я вёз заокеанскому знакомому, соскучившемуся по настоящему хлебу, и ещё один интересный случай произошёл во Франкфурте при посадке на американский «Боинг», когда американка при регистрации удивилась отсутствию багажа («русский в Америку и без багажа?»), а афроамериканец, увидев российский паспорт, поприветствовал меня на приличном русском: «Здравствуйте, товарищ Алексей!» Это было забавно.

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

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

Фотография сделана уже на следующий день, естественно. Этот инструмент был установлен возле старой знакомой гостиницы The Fairmont San Jose, в которой проходил GTC 2009. Надо сказать, я был изрядно удивлён количеством не просто желающих, а умеющих хоть как-то играть на клавишных инструментах, в отличие от автора этого отчёта. Впрочем, ему только и оставалось в тот день, как встретиться с коллегой и завалиться спать, пытаясь справиться с усталостью и сменой часовых поясов.

В качестве площадки для конференции в этот раз Nvidia выбрала выставочный центр Сан-Хосе (San Jose Convention Center), соединённый с отелем San Jose Marriott, где многие из участников конференции и проживали, включая вашего покорного слугу. Это было довольно удобно, а уж в отеле и выставочном центре то точно есть в наличии достаточное количество конференц-залов и комнат для встреч, которые прекрасно подошли для этого ещё более масштабного мероприятия.

Так как нам посчастливилось быть одним из немногочисленных приглашённых на GTC русскоязычных изданий, в данном материале мы постараемся подробно описать всё мероприятие с нашей точки зрения, разбавляя его не очень многочисленными лирическими отступлениями.

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

Скажем, если посетитель заинтересован в обработке звука на GPU, то он вряд ли пойдёт на стенд производителей HPC-систем или посетит сессию по диагностике лейкемии с использованием мощи современных графических процессоров. А нам никуда не деться, наш долг посетить все интересные выступления. И поэтому мы можем что-то интересное упустить из внимания (и упускаем, естественно!), рассеивая фокус на все сферы применения. Поэтому заранее просим прощения, если упустили что-то интересное лично для вас.

Как и в прошлом году, программа GTC 2010 включала в себя множество различных мероприятий: научно-исследовательских, мероприятий для разработчиков на GPU и также бизнесменов, которые используют решения с применением графических процессоров. Кстати, сейчас GTC стала, пожалуй, самым серьёзным мероприятием для разработчиков, исследователей и бизнесменов, заинтересованных в использовании возможностей GPU в их повседневных задачах.

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

Кстати, все эти постеры теперь стали доступны в интернете на сайте компании Nvidia — и всем интересующимся вычислениями на графических процессорах я настоятельно советую посетить соответствюущую страницу, на которой можно найти много интересного.

Понятно, что охватить всю выставку просто не представлялось возможным. Более всего были интересны ключевые презентации (keynote), проводимые главами компаний и интересными специалистами, некоторые из технических сессий, выставка достижений в области использования GPU в различных сферах, а также интервью с представителями компании Nvidia.

Нулевой день конференции был не слишком насыщенным, как и всегда. Хотя сессии были, и довольно много интересных, хоть и слишком технических для глаз и ушей журналистов. Так, лично я успел немного времени посидеть на сессиях, посвящённых возможностям DirectX 11 (докладчик Cem Cebenoyan из Nvidia) и применению трассировки лучей OptiX (Dave McAllister и Phillip Miller из Nvidia).

Но оба выступления были предназначены скорее для программистов, нежели журналистов сайта даже технической направленности. В случае DirectX 11 во многом было повторение прошлогодней сессии (оно и немудрено — с тех пор DX11 остался DX11), а на сессии по OptiX рассказывали скорее о возможности и особенностях его применения в своих приложениях.

К слову, на GTC 2010 было несколько сессий не только о собственной программно-аппаратной архитектуре CUDA, но и по OpenCL. Например, выступление Cliff Woolley из Nvidia — OpenCL on the GPU. Хотя с пользовательской точки зрения более интересной показалась сессия по стереорендерингу, его проблемам и особенностям — Implementing Stereoscopic 3D in Your Applications (Samuel Gateau и Steve Nash из Nvidia).

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

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

В целом, мой нулевой день конференции на этом можно считать законченным. Больше ничего особенного отметить нельзя. Ну может кроме того, что я в очередной раз удивился тому, как в Сан-Хосе чисто и опрятно, особенно на контрасте со своим родным городом… Но это всё мелочи, впереди был день первый, настоящее начало конференции GTC 2010!

Как всегда, главный день начался с самого главного ключевого выступления с участием (естественно!) главы компании Nvidia Дженсена Хуанга (Jen-Hsun Huang). Хотя с прошлогодним keynote президента Nvidia этот сравнить сложно, так как тогда была анонсирована новая вычислительная архитектура, получившая название Fermi, которая и по сей день служит основой для продуктов компании.

В этот раз выступление обошлось пусть без громких анонсов новых архитектур GPU, но с некоторыми интересными программными анонсами. Вступление Дженсена, как обычно, затронуло все сферы применения линейки продуктов компании, начиная с Quadro и Tesla и заканчивая Tegra.

На GTC 2010 прошёл, вероятно, один из первых публичных показов новой игры Tom Clancy's HAWX 2 компании Ubisoft. На момент выхода статьи уже вышел и соответствующий бенчмарк, и сама игра.

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

И ведь это на самом деле так. Рост мощностей ядер универсальных процессоров значительно снизился, и теперь CPU растут скорее не в длину (повышение тактовой частоты и производительности каждого ядра), а в ширину (увеличение количества ядер в чипе).

Иногда Дженсен прибегал к помощи других докладчиков, общаясь с ними на сцене на разные темы (естественно, по сценарию).

Лидер компании привёл статистику, явствующую о постоянном росте интереса к Tesla, CUDA и вычислениям на GPU в целом. Кстати, на этом же слайде указано и количество участвующих в GTC работ — как видите, в 2010 году их в несколько раз больше, чем в 2009. И это было хорошо заметно по количеству постеров, выступлений и участников.

В рамках первого ключевого выступления было анонсировано несколько важных программных продуктов партнёров компании Nvidia. Речь идёт о Си-компиляторе от The Portland Group (PGI) с поддержкой CUDA и x86 одновременно:

А также — CUDA-ускоренных Matlab и AMBER 11:

Программная поддержка весьма важна для вычислений на GPU, ведь они до сих пор находятся лишь в начале своего развития. И Nvidia со своей стороны делает всё для развития параллельных вычислений на графических процессорах, так как они серьёзно заинтересованы в этом по понятным причинам. И уже состоявшаяся на деле поддержка со стороны таких грандов — вещь очень полезная.

Конечно, не обошлось и без бенчмарков со сравнением с универсальными процессорами. Естественно, Дженсеном был взят один из самых впечатляющих примеров — в бенчмарке компьютерного молекулярного моделирования Joint Amber-Charmm (JAC) восемь GPU архитектуры Fermi обеспечивают производительность на уровне 192 четырёхъядерных процессоров (неназванного производителя, но судя по цвету на диаграмме — это Intel)!

Но и это ещё не всё. Далее на сцену поднялись представители: ANSYS Inc. — доктор S. Subbiah:

А также Ken Pimentel из Autodesk и уже известный нам по прошлому году Michael Kaplan из команды Mental Images.

Все они показывали демонстрации применения CUDA в соответствующих программных продуктах: ANSYS Mechanical R13 и Autodesk 3ds Max 2011. Кое-что похожее мы уже видели и ранее, в том числе на GTC 2009, но теперь эти возможности становятся доступными для широкой публики в соответствующем ПО и это очень круто!

Так, сначала был показан рендеринг методом трассировки лучей при помощи CPU с возможностью выполнения 12 потоков, все ядра которого были загружены на 100%, а рендеринг продвигался очень медленно. Затем то же самое начали рендерить на двух GPU (видимо, Fermi) — см. загрузку видеопроцессоров:

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

И это — не говоря о так называемых облачных вычислениях. Вскоре дизайнер сможет сидеть дома за своим обычным домашним ПК или на берегу моря за слабеньким ноутбуком, и при этом у него будут возможности рендеринга, предоставленные целым выводком мощнейших GPU, каждый из которых в этой конкретной задаче вполне способен заменить несколько CPU.

В общем, Nvidia планомерно решает свою задачу по завоеванию, а скорее даже созданию рынка вычислений на GPU. Теперь у них в активе есть и поддержка со стороны общепризнанных программных пакетов в разных сферах, которые обзавелись поддержкой CUDA:

И действительно, все эти пакеты являются очень мощными и известными средствами, каждый в своей сфере. И по мере распространения расчётов на GPU, пользователи видеокарт производства Nvidia вполне могут получить преимущество перед остальными.

Но не только на программные пакеты напирали выступающие. Хотя ПО очень важно для этого рынка, но без соответствующих аппаратных средств просто ничего не будет. И на GTC 2010 были анонсированы следующие системы, использующие Nvidia Tesla:

Рядом с такими громкими именами как IBM и Cray, ещё приятнее видеть и ведущий российский суперкомпьютерный холдинг из России — «Т-Платформы». Эта группа компаний предоставляет комплекс решений и услуг в области суперкомпьютерных технологий и ресурсоемких расчетов, в том числе и гибридные системы на основе вычислительных узлов Tesla.

Как видите на картинке, их решения занимают половину из 50 мощнейших суперкомпьютеров России. В одной из следующих частей материала мы подробнее напишем о группе компаний «Т-Платформы» и их продукции, это тема отдельного разговора. А для того, чтобы заинтересовать читателя, отметим то, что на GTC 2010 они представили гибридную вычислительную систему TB2-TL, которая обеспечивает высочайшую вычислительную плотность и энергоэффективность среди всех вычислительных систем.

Весьма интересной показалась технология, которую представили исследователи из компании Adobe: David Salesin и Todor Georgiev.

Они работают над пленоптическими объективами (состоящими из нескольких линз — см. слайд выше) и технологиями обработки изображений, полученных при их помощи. Количество микролинз может быть разным, в зависимости от задач:

Так, выступающие показали публике, как при помощи пленоптического объектива можно изменять фокусировку в процессе не фотографирования, а постобработки. Фокус можно изменять, наводя его то на передний, то на задний план — и выглядит это очень эффектно:

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

После этого эффектного выступления пришло время медицины — может и не столь эффектного зрелища, но куда более важного для человечества. На сцену пригласили Michael D. Black, который рассказал присутствующим немного об использовании вычислений на GPU в медицине.

У нас в материале ещё будет затронута тема применения GPU в медицинских расчётах, а Дженсен явно подводил мощное совместное выступление к заключению, рассказывая о прекрасном будущем вычислений на GPU, широте возможных применений и будущем компании в целом.

И вот тут выступление Дженсена хоть и не обогатилось почти полноценным анонсом новой архитектуры, как это было в прошлом году, но зато в нём появилось ещё одно яркое пятно — были анонсированы кодовые наименования двух следующих архитектур, над которыми уже идёт работа в Nvidia.

Как вы уже знаете, следующее за Fermi поколение будет называться Kepler, а продукт совсем далёкого будущего имеет кодовое имя Maxwell. Первый выйдет в следующем году (скорее всего, под конец) и будет более чем вдвое быстрее по операциям двойной точности с плавающей запятой, а второй и вовсе поднимет планку в несколько раз выше. По крайней мере, так планируется. Хотя будет это лишь в 2013 году.

После этого неожиданного и любопытного анонса кодовых имён будущих архитектур Дженсену осталось лишь позвать на сцену Dan Vivoli, исполнительного вице-президента по маркетингу в Nvidia, и показать вдвоём степень своей привязанности к своему детищу — компании Nvidia — в виде татуировок на плече (Дженсен) и голени (Дэн):

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

Сразу после небольшого перерыва была запланирована пресс-конференция, где представители Nvidia отвечали на вопросы прессы. Вопросов было много, но с такой разношёрстной публикой было понятно, что ничего особенно интересного там не услышишь. Пресса то там была, как обычно, приглашена не только специализированная, и вопросы были иногда ну очень странными, на мой скромный взгляд… Поэтому я ограничусь лишь парой фотографий:

Далее многочисленные сессии пошли плотными параллельными потоками, и вполне можно было ошибиться, выбрав что-то одно, пропустив при этом другую сессию, более интересную. Для себя я заранее выбрал несколько выступлений, которые посетил, и сейчас о них вам расскажу.

Первое выступление было посвящено примеру перехода от растеризации к трассировке лучей в продукте фирмы Bunkspeed. Докладчик Nicolas Gebbie делился опытом, полученным компанией при разработке их собственного продукта Bunkspeed Shot.

Этот программный пакет позволяет его пользователям выбирать метод визуализации: высококачественный рендеринг iRay или просто качественный, но очень быстрый растеризационный движок, используемый при быстром просмотре сцены. Были освещены вопросы в том числе и интерактивной системы рейтрейсинга, а также использования метода такого рендеринга, использующего мощности GPU.

Было небезынтересно услышать о проблемах при разработке реального программного продукта, использующего GPU, хотя ничего особенно нового там и не рассказали, по большому счёту. Зато много любопытного, но и довольно сложного для понимания непрограммиста было показано и рассказано в сессии Simon Barrett из Nvidia, посвященной применению Parallel Nsight при разработке приложений DirectX 11.

Parallel Nsight — это новая среда разработки Nvidia для графических и вычислительных приложений, для загрузки и использования уже доступна версия Parallel Nsight 1.5. Докладчик сессии показал прямо на примере графического приложения, как это ПО помогает ускорить процесс отлова ошибок и профилирования приложений Direct3D 11.

Разработчики, применяющие в своей работе Visual Studio, могут использовать Parallel Nsight для отладки приложений CUDA C/C++ и DirectCompute, выполняемых на GPU, при помощи тех же инструментов, что и для программ, исполняемых на CPU. Parallel Nsight предоставляет все необходимые инструменты для анализа построения кадра.

Все подобные отладчики похожи, но Parallel Nsight является удобным универсальным средством. Graphics Inspector и Debugger помогают разработчикам исследовать использование ресурсов и состояний Direct3D, ставить точки останова (breakpoints) в шейдерах на HLSL и многое другое. А Frame Profiler используется для захвата и сбора информации о производительности.

Следующая сессия, которую я посетил, была посвящена GPU-ускоренным технологиям, используемым в интернете. Да-да, GPU уже почти научили ускорять интернет ещё сильнее! Chris Pedersen из Nvidia рассказал обо всех тонкостях использования видеочипов для онлайновых задач и показал довольно интересные слайды.

Например, было любопытно увидеть слайд, где показано время, которое средний современный пользователь тратит на различные задачи за своим ПК. Естественно, что веб-сёрфинг в Сети вместе с проверкой и чтением электронной почты занял чуть ли не более половины всего «компьютерного» времени.

Поэтому всё более важной задачей для разработчиков становится ускорение всего, что делается в браузере. И похоже, что все основные производители браузеров в той или иной мере уже используют ускорение на GPU. Это касается и двухмерной, и трёхмерной графики, а также декодирования онлайн-видео. Но у всех производителей соответствующего ПО дела с GPU-ускорением обстоят немного по-разному:

Далее были приведены примеры ускорения при переносе расчётов с CPU на GPU, и для примера взяли Google Chrome и известные по нашим обзорам мобильной графики тесты из IE9 Platform Preview. Понятно, что 60-кратное ускорение — это предельный случай, но и более реалистичные 2—10-кратные вполне пойдут нам на пользу, особенно на нетбуках и прочих планшетах.

Для пущего эффекта сравнили и дешёвую дискретную графику Nvidia с интегрированной от Intel. И там приросты может в основном и не шестидесятикратные, но тоже весьма внушительные:

В общем, вывод один — даже для интернет-сёрфинга GPU будет весьма полезен, и при посещении сайтов с современным контентом очень желательно, чтобы он был дискретным и достаточно мощным, с хорошей программной поддержкой в драйверах. А уж возможности для GPU-ускоренного веба будущего какие открываются…

Следующая выбранная мной сессия по тематике перекликается с предыдущей — она также касается использования вычислительных мощностей GPU как раз в одном из известных браузеров — в Internet Explorer 9, доступном сейчас в виде бета-версии.

Jason Weber из Microsoft рассказал и показал присутствующим, как могут измениться веб-сайты при использовании аппаратно-ускоренной графики, о возможности создания новых классов онлайн-приложений, которые ранее не были возможны. Но сначала речь зашла о 9-й версии Internet Explorer в целом, о проведённых в коде приложения оптимизациях, в том числе — для многоядерных CPU.

На слайдах были показаны результаты тестов производительности. На первом слайде, показанном выше, показана загрузка двух ядер центрального процессора при рендеринге HTML-страницы, а на втором — время работы над отрисовкой одного и того же теста Flying Images. И «виновато» в отличном результате во многом как раз GPU-ускорение. Разница просто потрясающая, насколько хорош IE9 и насколько ужасен нынешний IE8.

Уже в самом конце первого дня GTC 2010 самый большой зал выставки был забит желающими посмотреть мировую премьеру пилотного эпизода документального фильма «The Third Pillar of Science», снятого в стереоформате. В нём рассказано и показано, как высокопроизводительные вычисления меняют подход многих исследователей и помогают им добиться результатов, ранее невозможных или очень сложных.

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


GTC 2010 — второй день конференции








Дополнительно

Нашли ошибку на сайте? Выделите текст и нажмите Shift+Enter

Код для блога бета

Выделите HTML-код в поле, скопируйте его в буфер и вставьте в свой блог.