В каких единицах измеряется производительность компьютеров на тесте graph500

Обновлено: 03.07.2024

Сведения о типе (для десктопов или ноутбуков) и архитектуре FirePro W2100 и HD Graphics 500, а также о времени начала продаж и стоимости на тот момент.

Место в рейтинге производительности680865
Соотношение цена-качество 4.920.59
АрхитектураGCNGen. 9 Apollo Lake
Графический процессорMarsApollo Lake
ТипДля рабочих станцийДля ноутбуков
Дата выхода2 октября 2015 (6 лет назад)1 сентября 2016 (5 лет назад)
Цена сейчас67$414$

Для получения индекса мы сравниваем характеристики видеокарт и их стоимость, учитывая стоимость других карт.

Характеристики

Общие параметры FirePro W2100 и HD Graphics 500: количество шейдеров, частота видеоядра, техпроцесс, скорость текстурирования и вычислений. Они косвенным образом говорят о производительности FirePro W2100 и HD Graphics 500, но для точной оценки необходимо рассматривать результаты бенчмарков и игровых тестов.

Количество потоковых процессоров32012
Частота ядра680 МГц300 МГц
Частота в режиме Boost680 МГц700 МГц
Количество транзисторов950 млн189 млн
Технологический процесс28 нм14 нм
Энергопотребление (TDP)400 Вт10 Вт
Скорость текстурирования13.609.000
Производительность с плавающей точкой435.2 gflops144.0 gflops

Совместимость и размеры

Параметры, отвечающие за совместимость FirePro W2100 и HD Graphics 500 с остальными компонентами компьютера. Пригодятся например при выборе конфигурации будущего компьютера или для апгрейда существующего. Для десктопных видеокарт это интерфейс и шина подключения (совместимость с материнской платой), физические размеры видеокарты (совместимость с материнской платой и корпусом), дополнительные разъемы питания (совместимость с блоком питания). Для ноутбучных видеокарт это предполагаемый размер ноутбука, шина и разъем подключения, если видеокарта подключается через разъем, а не распаивается на материнской плате.

ШинаPCIe 3.0 нет данных
ИнтерфейсPCIe 3.0 x8PCIe 3.0 x1
Форм-факторнизкопрофильная / половинная длина нет данных
Дополнительные разъемы питаниянет нет данных

Оперативная память

Параметры установленной на FirePro W2100 и HD Graphics 500 памяти - тип, объем, шина, частота и пропускная способность. Для встроенных в процессор видеокарт, не имеющих собственной памяти, используется разделяемая - часть оперативной памяти.

Тип памятиn/aDDR3L/LPDDR3/LPDDR4
Максимальный объём памяти2 Гб8 Гб
Ширина шины памяти128 бит64/128 бит
Частота памяти1800 МГц нет данных
Пропускная способность памяти28.8 Гб/с нет данных
Разделяемая память-+

Видеовыходы

Перечисляются имеющиеся на FirePro W2100 и HD Graphics 500 видеоразъемы. Как правило, этот раздел актуален только для десктопных референсных видеокарт, так как для ноутбучных наличие тех или иных видеовыходов зависит от модели ноутбука.

Видеоразъемы2x DisplayPortNo outputs
Количество разъемов DisplayPort2 нет данных
Поддержка двухканального (dual-link) DVI1 нет данных

Технологии

Здесь перечислены поддерживаемые FirePro W2100 и HD Graphics 500 технологические решения и API. Такая информация понадобится, если от видеокарты требуется поддержка конкретных технологий.

AppAcceleration+ нет данных
Quick Sync нет данных +

Поддержка API

Перечислены поддерживаемые FirePro W2100 и HD Graphics 500 API, включая их версии.

DirectX12 (11_1)12 (12_1)
Шейдерная модель5.16.4
OpenGL4.64.6
OpenCL1.22.1
Vulkan1.2.1311.1.97

Тесты в бенчмарках

Это результаты тестов FirePro W2100 и HD Graphics 500 на производительность рендеринга в неигровых бенчмарках. Общий балл выставляется от 0 до 100, где 100 соответствует самой быстрой на данный момент видеокарте.

Общая производительность в тестах

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

Graph500 – рейтинг демонстрации скоростных возможностей суперкомпьютеров, оценивающий их мощность по критерию Data intensive. Анонс проекта состоялся на International Supercomputing Conference в июне 2010 как замену Top500, первый список опубликован на ACM/IEEE Supercomputing Conference в ноябре 2010. Рейтинг обновляется каждые полгода. Основной метрикой в рейтинге является GTEPS (10^9 пройденных дуг в секунду).

Также существует разновидность рейтинга Green Graph 500, в котором системы оцениваются по критерию производительности на ватт потребления электроэнергии. Этот вариант был создан по аналогии с Green 500, который использует данные Top500. В настоящий момент рейтинг Graph 500 не используется по причине того, что данная программа устарела.

Содержание

Необходимость нового рейтинга

Изначально суперкомпьютеры, как известно, создавались для решения вычислительных задач: моделирования физических процессов, инженерных расчетов, баллистики, криптоанализа и т. п., для которых характерна хорошая пространственно-временная локализация данных в памяти, что позволяет эффективно использовать быструю кэш-память процессоров. Для оценки производительности суперкомпьютеров при выполнении такого класса задач (Сache Friendly, СF) хорошо подходит тест Linpack, положенный в основу списка Top500, в 36-й версии которого впервые оказался китайский суперкомпьютер Tianhe-1A c пиковой производительностью 4,702 PFLOPS.

Критика теста Linpack [Источник 1] , применяемого для составления рейтингового списка, который приобретает все больше политическое значение, звучала достаточно давно и предлагались разные методики более объективной оценки суперкомпьютеров, например оценочный тестовый набор HPC Challenge. Однако такой популярности, как Top500, ни одна оценка до сих пор не получила в силу сложности тестовых программ и трудности восприятия широкой общественностью. В то же время все большую важность для экономик развитых стран и систем обеспечения национальной безопасности стали приобретать задачи, отличные от CF-класса, новые типы вычислительных задач и приложения обработки больших пулов информации: анализ социальных сетей, выявление заданных и характерных ситуаций (в том числе и террористических угроз) посредством анализа накопленных в неструктурированных базах графового типа оперативно получаемых данных и т. п. Такие задачи сначала называли DIS (Data Intensive System), а сегодня рассматривают их более широко, добавляя еще и затраты на обработку входных/выходных потоков данных — DIC (Data Intensive Computing).

Специфика задач DIC-класса

Для задач DIC-класса характерны: работа с наборами данных, объем которых значительно превышает память вычислительного узла современного суперкомпьютера (до нескольких петабайтов); высокая интенсивность выполнения операций над данными по отношению к вычислительным операциям; высокая непредсказуемость нерегулярно разбросанных по памяти адресов данных; возможность сильного распараллеливания с использованием взаимодействующих друг с другом процессов. Поэтому средств и приемов оптимального выполнения CF-задач для DIC-задач недостаточно, хотя попытки их применения встречаются. Например, по нашему мнению, за редким исключением не имеет смысла использовать различные ускорители на программируемых логических матрицах (FPGA). Как следствие, базовые характеристики суперкомпьютеров, подходящих для решения DIC-задач, должны быть иными, например очень важна способность быстрой передачи вычислений к данным на удаленных узлах посредством аппаратно поддержанного механизма удаленного вызова процедур. Метрики быстродействия также иные, например более адекватны единицы GUPS, определяемые на тесте RandomAccess. Однако эти важные для профессиональной оценки характеристики относятся к архитектурному уровню и явно не связаны с приложениями, поэтому не годятся для составления воспринимаемого общественностью рейтингового списка.

Многие DIC-задачи сводятся к типовым алгоритмам на графах: поиск кратчайшего пути между заданными вершинами; поиск вхождения графа заданного вида в другой граф; поиск вширь и вглубь на графах — задачи BFS (breadth-first search) и DFS (depth-first search); нахождение вершин, через которые проходит наибольшее количество кратчайших путей, — задача BWC (Betweenness Centrality), и др. Некоторые прикладные задачи естественным образом приводятся к задачам на графах, а другие сводятся к графовым. Например, задача BWC может непосредственно использоваться в приложениях реального времени в электроэнергетике для определения наиболее ответственных участков сети и анализа непредвиденных ситуаций, а также в графах, моделирующих в финансовой области зависимости стоимости акций друг от друга. Другой пример — использование графов, моделирующих взаимодействие белков, где требуется находить небольшие графы, изоморфные заданным, чтобы определять свойства и моделировать молекулярные процессы в клетках. В инициативную группу Graph500 входят Cray, SGI, Intel, IBM, AMD, nVidia, Oracle, LexisNexis и др. Кроме того, в группу входят три национальные лаборатории Министерства энергетики США и лаборатория по созданию оружия в Великобритании, три правительственные организации — Национальный научный фонд США, Пентагон и Агентство перспективных оборонных исследований (DARPA), а также 11 университетов и суперкомпьютерных центров.

Руководителем проекта Graph500 является Ричард Мерфи. Он занимается компьютерными архитектурами в Национальной лаборатории Sandia министерства энергетики США, возглавляя одну из групп разработчиков, включенных в исполнители новой программы UHPC (инициированная DARPA программа «вездесущих» высокопроизводительных вычислений Ubiquitous High Performance Computing). Кстати, задачи на графах, причем в более сложном варианте, когда они еще и динамически изменяются, – одно из основных приложений, которое должно успешно решаться на создаваемых в рамках этой программы суперкомпьютерах с революционной архитектурой. Таким образом, за Graph500 стоят серьезные ведомства, и к этому рейтингу стоит относиться соответственно.

Методика Graph500

Тест, используемый для формирования списка Graph500, включает два ядра. Сначала генератор создает граф в виде списка дуг, затем первое ядро порождает его внутреннее представление, которое используется впоследствии вторым ядром, выполняющим алгоритм поиска вширь в графе, – решается задача BFS.

Тест Graph500 имеет два параметра: SCALE и edgefactor; первый задает общее количество (N) вершин графа, которое равно 2SCALE, а второй определяет количество дуг (M) в графе, равное edgefactor*N. По умолчанию edgefactor = 16.


Графы, используемые в приложениях и моделирующие реальный мир (например, социальные сети), имеют большое количество вершин и малое число соседей либо небольшое количество вершин и много соседей. Число вершин, имеющих k соседей, обозначаемое P(k), в таких графах убывает в соответствии с законом P(k) = ck-a (как правило, 2 < a < 3). В таких графах содержится небольшое количество вершин, имеющих настолько большое количество связей, что именно это обеспечивает высокую среднюю связность графа. Такие вершины называются «хабами» (hub). Хабы с разным количеством связей образуют некоторую иерархическую структуру, в которой связность вершин-хабов с переходом на более высокий уровень увеличивается. На рисунке приведен пример сгенерированного в Graph500 графа, в котором цветом и размером вершин обозначено количество соседей у каждой вершины; чем больше вершина и темнее оттенок цвета (используется цветовая модель HSL), тем больше у нее соседей. Знание таких особенностей графов может быть важно при оптимизации теста Graph500.

При генерации графов в Graph500 используется генератор Кронекера, очень похожий на генератор графов типа Recursive MATrix (R-MAT), который в процессе работы использует матрицу смежности создаваемого графа. При добавлении каждой дуги матрица смежности NхN рекурсивно дробится до тех пор, пока не будет получена матрица из одного элемента — это и есть выбранная дуга. Такой процесс повторяется M раз. Матрица на каждом шаге такого рекурсивного процесса дробится на четыре равные части: A, B, C и D. Для каждой из этих частей изначально задана вероятность, с которой происходит выбор именно ее при добавлении новой дуги. По умолчанию вероятности выбора частей матрицы равны: P(A) = 0,57; P(B) = 0,19; P(C) = 0,19; P(D) = 1-(A+B+C) = 0,05.

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

Aлгоритм BFS, выполняемый вторым ядром, для заданного графа и заданной вершины r находит все вершины, расположенные от нее на расстоянии в одну дугу, две дуги и т. д. Особенностью алгоритма является то, что он не должен анализировать вершины, отстоящие от вершины r на расстоянии s+1 до тех пор, пока не проанализирует все вершины, отстоящие от вершины r на расстоянии s дуг. Повторно вершины графа не рассматриваются. В результате работы алгоритма BFS получается дерево, корнем которого является исходная вершина r, а узлы этого дерева — множества вершин графа, находящихся на таком расстоянии от r, которое соответствует уровню этого узла в дереве.

Производительность алгоритма BFS измеряется количеством пройденных дуг графа в секунду (Traversed Edges Per Second, TEPS). Используются обозначения ME/c и GE/c – миллионы и миллиарды пройденных дуг в секунду соответственно.

Рейтинг Graph500 составляется с учетом сначала размера графа, а затем развиваемой в процессе поиска вширь производительности. Существует шесть диапазонов размеров графов, соответствующих значениям параметра SCALE: toy, mini, small, medium, large и huge. Объем данных для toy соответствует примерно 1010 байт (17 Гбайт, SCALE=26), mini — 1011 байт (140 Гбайт, SCALE=29) и т. д., объем данных для huge составляет 1,1 Пбайт (SCALE=42). При SCALЕ=30 количество вершин графа около миллиарда, а самый большой граф при SCALE=42 – четыре триллиона узлов. [Источник 2]

По словам Мерфи, планируется создать версию Graph500 для включения в тесты SPEC и планируется включение в тест дополнительных ядер.

Реализация

Дистрибутив Graph500 включает две последовательные реализации на языке Си, версию на языке высокого уровня GNU Octave, параллельную версию с использованием OpenMP, две параллельные версии для Cray XMT (одна базовая, другая оптимизированная), а также две MPI-версии (одна базовая, с использованием функций двустороннего взаимодействия, другая написана с использованием функций одностороннего взаимодействия нового стандарта MPI 2.0).

Базовая версия для Cray XMT похожа на OpenMP-реализацию с использованием формата CRS (Compress Row Storage) для хранения строк разреженной матрицы смежности, соответствующих вершинам графа. Кроме того, для синхронизации тредов используются теговые биты ячеек памяти и атомарные операции. Cray XMT обладает уникальной возможностью работы с памятью разных вычислительных узлов через единое виртуальное адресное пространство – общую память, это и позволяет использовать OpenMP.

В оптимизированной версии для Cray XMT очередной список достижимых вершин следующего уровня (уровень s+1), который в конечном итоге размещается в общей памяти, формируется в два этапа. Сначала формируются фрагменты этого списка в локальной памяти вычислительных узлов. Затем эти фрагменты включаются в список вершин следующего уровня, находящийся в общей памяти. Суть оптимизации в том, что при добавлении очередного фрагмента счетчик достижимых вершин увеличивается на количество вершин во фрагменте, а не на единицу, если бы каждую достижимую вершину добавляли в отдельности. Это позволяет избежать узкого места, связанного с ожиданием выполнения атомарной операции увеличения счетчика.

Характерно, что в реализациях теста Graph500 сразу используется множество средств и стилей программирования, что отражает одну из сторон современной проблематики решения DIC-задач. Для получения результата можно использовать одну из реализаций, но при этом поощряется создание собственных версий. Использование стандартной версии помечается в списке как Reference, использование своей – Optimized.

Для проверки созданной версии в тесте существует валидация, которая проверяет корректность построенного дерева при поиске вширь. Для этого при выполнении поиска вширь заполняется специальный массив, в котором хранятся вершины-родители для каждой вершины в построенном дереве. [Источник 3]

Архитектура

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

Прогнозы показывают, что в течение следующего десятилетия каждый канал связи должен будет поддерживать транзистор на порядок больше, чем сегодня. Такие технологии, как переход на последовательную сигнализацию, 3D-интеграцию и другие разрушительные методы, могут обеспечить однократный выигрыш по сравнению с традиционными подходами. Однако, независимо от технологии, каждый канал связи должен поддерживать значительно больше вычислений, чем сегодня. Принимая во внимание разреженные, детализированные шаблоны связи, необходимые для проблем, поддерживаемых списком Graph500, эта тенденция в технологии отодвинет архитектуру от поддержки Graph500 приложения базы. Создание проблемного пространства, актуального для компьютерных архитекторов, является ключевым вкладом Graph500.


Тестирование вычислительных систем
Результаты тестирования позволяют:

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

Требования к тестам:
Полнота. Тест должен оценивать только те параметры, для оценки которых создавался. Выдаваемые результаты должны быть непротиворечивыми, лаконичными и легкими для понимания.

Легкость в использовании.

Масштабируемость. Тест должен быть доступен для большого числа разного по вычислительной мощности аппаратного обеспечения.

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

Репрезентативность. Вне зависимости от платформы тест должен оценивать наиболее важные для большинства приложений пользователей характеристики (выборка характеристик должна быть показательной).

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

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

Классификация тестов.

«Игрушечные» тесты – маленькие, длиной в несколько сот строк исходного кода. Как правило, такие тесты представляют собой решение какой-либо широко известной математической задачи.

Микротесты – специализированные, ориентированные на определение какой-то одной из основных количественных характеристик аппаратного обеспечения:(производительность CPU; пропускная способность RAM;пропускная способность коммуникационной среды; итд)

Ядра – это фрагменты кода, взятые из реальных приложений.

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

Приложения – программы наиболее часто применяемые для решения тех или иных реальных задач.
Псевдоприложения – программы, созданные на основе реальных приложений, но специально адаптированные для задач тестирования.

Пакеты тестов – коллекции различных типов тестов с преобладанием приложений.

На основе Linpack-тестирования дважды в год составляются мировой список наиболее быстродействующих вычислительных систем TOP-500 в мире и российский список TOP-50.

Производительность в тесте Linpack Benchmark измеряется в количестве выполненных операций с плавающей точкой в секунду (Flops).

Тест Graph500
Тест Graph 500 демонстрирует в основном вычислительные возможности суперкомпьютеров, не отражая скорость обработки больших массивов данных.

Поиск в ширину на графе (BFS)
Задачи BFS делятся на классы в зависимости от размерности графа:
toy (226 вершин; 17 ГБ),
mini (229 вершин; 137 ГБ),
small (232 вершин; 1,1 ТБ),
medium (236 вершин; 17,6 ТБ),
large (239 вершин; 140 ТБ),
huge (242 вершин; 1.1 ПБ).

Алгоритм Graph500 v.1.2:
1. Случайным образом генерирует список ребер графа.
2. Выполняет параллельное конструирование графа на основе списка ребер (ядро 1)*.
3. Генерирует список из 64 случайных вершин.
4. Выполняет параллельный поиск в ширину на основе списка вершин (ядро 2, повторяется 64 раза)*.(Время работы ядер определяет значение производительности)
5. Выводит сведения о полученной производительности.

Основная метрика – TEPS (Traversed Edge Per Second - число пройденных ребер графа в секунду).

Специальное упоминание “Ломоносова” на презентации Graph 500 в рамках ISC’2011

В последних числах июня компания “Т-Платформы” сообщила, что в ходе проведения теста Graph 500 мощнейший российский суперкомпьютер “Ломоносов” продемонстрировал высшую среди участников производительность.

Свежая редакция нового суперкомпьютерного рейтинга является второй по счету (первая вышла полгода назад), и в ней пока фигурируют всего 28 машин.

Инициаторами Graph 500 выступили ведущие эксперты ряда национальных исследовательских центров, действующих под эгидой лаборатории Sandia (США). Данный проект призван определить вычислительные комплексы, наиболее эффективно обрабатывающие большие массивы разреженных данных, представленных в виде графа или базы данных.

В “Т-Платформах” отмечают, что задачи такого рода широко распространены в фармакологии, информационной безопасности и т. д. Для их эффективной реализации системы должны обладать высокой производительностью и обеспечивать массивную обработку сотен петабайт данных. В ходе теста оценивается время, затрачиваемое системами на обработку графа. При этом его результат измеряется количеством обработанных за единицу времени ребер. По результатам теста российский суперкомпьютер “Ломоносов” установил новый рекорд, достигнув уровня производительности в 43,5 GE/s (миллиардов обработанных ребер в секунду).

Впрочем, сразу нужно оговориться, что упомянутый показатель сейчас не является в рейтинге приоритетным (в отличие от размера обработанного графа), поэтому “Ломоносов” занимает в Graph 500 только третью строчку, пропустив вперед машины с меньшей производительностью. (В “Т-Платформах” уверяют, что кураторы рейтинга подумывают над тем, чтобы поменять акценты при составлении списка, но пока это лишь перспективы.)

Анонс свежего Graph 500 состоялся в рамках Международной суперкомпьютерной конференции (International Supercomputing Conference — ISC’2011), прошедшей в Гамбурге в последней декаде июня. Тогда же было объявлено о завершении модернизации (введении в эксплуатацию второй очереди) “Ломоносова” и одновременно с этим были представлены результаты другого суперкомпьютерного рейтинга Top 500, являющегося на данный момент самым известным проектом подобного рода, в котором кластеры ранжируются в зависимости от производительности, продемонстрированной на специализированном тесте Linpack.

С учетом того, что заявки на включение в оба рейтинга по их правилам требуется подавать заранее, в редакции поначалу возникло подозрение в подтасовке данных. И если в отношении Top 500 нас сложно чем-либо удивить (нарушения правил всплывают постоянно, но кураторов рейтинга это нисколько не заботит ) , то с уровнем качества Graph 500 хотелось разобраться подробнее.

Пояснения архитектора “Т-Платформ” Антона Коржа, являющегося непосредственным автором обоих оптимизаций “Ломоносова” под оба рейтинга, наши подозрения развеяло. По его словам, результат для Graph 500 был получен еще в марте и в тестировании не участвовали добавившиеся после модернизации узлы на основе графических процессоров (GPU), а только 4096 узлов с процессорами классической архитектуры.

Что касается теста для Top 500, то на нем был задействован весь кластер, что, по словам г-на Коржа, было сопряжено с существенными трудностями, так как для подобной гибридной конфигурации пока нет доступного варианта теста Linpack — его пришлось значительно модифицировать.

По уверению г-на Коржа, заявка подавалась в срок (в середине мая), и, в частности, именно поэтому был получен не слишком высокий КПД (отношение реальной производительности кластера к пиковой) — 49,5%. Будь времени больше, его бы наверняка удалось поднять до 52—53%.

Сопоставляя два рейтинга, г-н Корж отмечает, что они не выступают конкурентами, а скорее дополняют друг друга. По его словам, ни для кого не секрет, что Linpack является односторонним тестом и лишь небольшая часть задач на него похожа. Есть же ряд задач совсем иного свойства, для оценки производительности на которых и был придуман Graph 500.

Г-н Корж приводит образное сравнение суперкомпьютера с автомобилем. Пиковая производительность — это паспортная мощность мотора в лошадиных силах, Linpack и Top 500 — это стрит-рейсинг (соревнование в том, кто быстрее проедет 500 м по прямой), а вот Graph 500 — это езда по центру города по узким переулкам, где важна маневренность.

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

Суперкомпьютер Summit, смонтированный в Национальной лаборатории Ок-Ридж и занимающий первую строчку в списке TOP500, дебютировал и в Graph500 — впервые в своей истории. При этом он доказал высокую эффективность в задачах подобного рода.


Summit, он же OLCF-4, уже доказал своё право на лидерство в TOP500 и подтвердил высокую эффективность своей гибридной архитектуры, основой которой являются два типа процессоров: IBM POWER9 и NVIDIA Tesla V100. В свежей версии Summit сумел сразу же занять четвёртое место. Это весьма достойный результат.


Основой тестов Graph500 служит задача о вычислении графа с более чем миллиардом вершин, между которыми имеется примерно 16 миллиардов связей. Для решения данной задачи в Summit задействовалось 86016 процессорных ядер — речь идёт только о традиционных процессорах, но не о ГП-ускорителях. Это примерно 45% всех мощностей суперкомпьютера. Для сравнения, лидер этого списка, китайский суперкомпьютер Sunway TaihuLight использовал свыше 10 миллионов вычислительных ядер (точное число — 10599680 ядер).

Главный соперник Summit, Sunway TaihuLight

Главный соперник Summit, Sunway TaihuLight

Таким образом, удельная производительность Summit оказалась существенно выше, что объяснимо как большей архитектурной сложностью POWER9 в сравнении с достаточно простой RISC-архитектурой процессоров Sunway SW26010, так и более высокой эффективностью межузловых подсистем связи суперкомпьютера. Любопытно, что 2 и 3 места принадлежат системам c процессорами IBM, это машины Blue Gene/Q, установленные в Аргоннской национальной лаборатории и Ливерморской национальная лаборатории им. Э. Лоуренса (LLNL).

Читайте также: