Многоядерный процессор - Manycore processor
Многоядерные процессоры специалист многоядерные процессоры разработан для высокой степени параллельная обработка, содержащий множество более простых, независимых ядра процессора (от нескольких десятков ядер до тысяч и более). Процессоры Manycore широко используются в встроенные компьютеры и высокопроизводительные вычисления.
Контраст с многоядерной архитектурой
Многоядерные процессоры отличаются от многоядерные процессоры быть оптимизированным с самого начала для более высокой степени явный параллелизм, а также для более высокой пропускной способности (или меньшего энергопотребления) за счет задержки и меньшего однопоточная производительность.
Более широкая категория многоядерные процессоры, напротив, обычно предназначены для эффективного запуска обе параллельно и серийный код, и поэтому уделяйте больше внимания высокому однопоточная производительность (например, выделить больше кремния на вышедшее из строя исполнение, Глубже трубопроводы, более суперскалярный исполнительные единицы и более крупные кеши общего назначения) и Общая память. Эти методы выделяют ресурсы среды выполнения для выявления неявного параллелизма в одном потоке. Они используются в системах, где они непрерывно эволюционировали (с обратной совместимостью) от одноядерных процессоров. Обычно они имеют «несколько» ядер (например, 2,4,8) и могут быть дополнены множеством ядер. ускоритель (например, GPU ) в гетерогенная система.
Мотивация
Согласованность кеша это проблема, ограничивающая масштабирование многоядерных процессоров. Процессоры Manycore могут обойти это с помощью таких методов, как передача сообщений,[1] блокнотная память, DMA,[2] разделенное глобальное адресное пространство,[3] или кеши только для чтения / некогерентные. Многоядерный процессор, использующий сеть на чипе и локальная память дает программному обеспечению возможность явно оптимизировать пространственную компоновку задач (например, как видно в инструментах, разработанных для TrueNorth ).[4]
Многоядерные процессоры могут иметь больше общего (концептуально) с технологиями, возникшими в высокопроизводительные вычисления Такие как кластеры и векторные процессоры.[5]
Графические процессоры можно рассматривать как форму многоядерных процессоров, имеющих несколько блоки обработки шейдеров и подходит только для высокопараллельного кода (высокая пропускная способность, но чрезвычайно низкая производительность одного потока).
Подходящие модели программирования
- Интерфейс передачи сообщений
- OpenCL[6] или другие API, поддерживающие вычислить ядра
- Разделенное глобальное адресное пространство
- Актерская модель
- OpenMP[7]
- Поток данных
Классы многоядерных систем
- GPU, который можно описать как manycore векторные процессоры
- Массив массивно параллельных процессоров
- Асинхронный массив простых процессоров
Конкретные многоядерные архитектуры
- ZettaScaler [1], Японский PEZY Computing 2048-ядерные модули
- Ксеон Пхи сопроцессор[8] который имеет MIC (Множество интегрированных ядер) архитектура
- Тилера
- Адаптева Epiphany Architecture, многоядерный чип, использующий PGAS блокнотная память
- Когерентный логикс Процессор hx3100, 100-ядерный процессор DSP / GPP на базе Архитектура HyperX
- Movidius Myriad 2, много Блок обработки зрения
- Kalray, много PCI-e ускоритель для задач с большим объемом данных
- Чип для исследования терафлопс многоядерный процессор, использующий передачу сообщений
- TrueNorth ан AI-ускоритель с многоядерной сетью на чиповой архитектуре
- Зеленые массивы многоядерный процессор, использующий передачу сообщений, предназначенный для приложений с низким энергопотреблением
- Eyeriss, многоядерный процессор, предназначенный для работы сверточных нейронных сетей для встраиваемых приложений машинного зрения.[9]
Конкретные многоядерные компьютеры с 1 млн и более ядер ЦП
Некоторые компьютеры, построенные на основе многоядерных процессоров, имеют один миллион или более отдельных ядер ЦП. Примеры включают:
- Sunway TaihuLight, массово-параллельный (10M CPU ядер) китайский суперкомпьютер, когда-то один из самых быстрых суперкомпьютеров в мире, использующий нестандартную многоядерную архитектуру[нужна цитата ]. По состоянию на ноябрь 2018 года, третий по скорости суперкомпьютер в мире (согласно рейтингу TOP500 list), китайский Sunway TaihuLight, получает свою производительность от 40 960 SW26010 многоядерные процессоры, каждый из которых содержит 256 ядер.
- Gyoukou (Японский: 暁 光 Хепберн: гёкё, рассветный свет), а суперкомпьютер разработан ExaScaler и PEZY Computing.
- Спинакер, массивно-параллельный (1M CPU ядер) многоядерный процессор, построенный как часть Проект человеческого мозга
Смотрите также
- Многоядерный
- Векторный процессор
- SIMD
- Высокопроизводительные вычисления
- Компьютерный кластер
- Многопроцессорная система на микросхеме
- Блок обработки зрения
- Шаблон доступа к памяти
- Согласованность кеша
- Смущающе параллельный
- Массивно параллельный
- CUDA
Рекомендации
- ^ Мэтсон, Тим (январь 2010 г.). «Будущее многих ядерных вычислений: история двух процессоров» (PDF).
- ^ Хендри, Гилберт; Кречманн, Марк. "Процессор IBM Cell" (PDF).
- ^ Олофссон, Андреас; Нордстрём, Томас; Ул-Абдин, Заин (2014). «Быстрый старт высокоэффективных энергоэффективных многоядерных архитектур с помощью Epiphany». arXiv:1412.5538 [cs.AR ].
- ^ Амир, Арнон (11 июня 2015 г.). "IBM SyNAPSE Deep Dive, часть 3". IBM Research.
- ^ "клеточная архитектура".«Архитектура Cell не похожа ни на что, что мы когда-либо видели в обычных микропроцессорах, она ближе по конструкции к многопроцессорным векторным суперкомпьютерам»
- ^ Рик Мерритт (20 июня 2011 г.), «OEM-производители демонстрируют системы с чипами Intel MIC», www.eetimes.com, EE Times
- ^ Баркер, Дж; Боуден, Дж (2013). «Многоядерный параллелизм через OpenMP». OpenMP в эпоху маломощных устройств и ускорителей. IWOMP. Конспект лекций по информатике, том 8122. Springer. Дои:10.1007/978-3-642-40698-0_4.
- ^ Миттал, Спарш; Ананд, Ошо; Кумар, Вишну П. (май 2019 г.). «Обзор по оценке и оптимизации производительности Intel Xeon Phi».
- ^ Чен, Ю-Син и Кришна, Тушар и Эмер, Джоэл и Сзе, Вивьен (2016). «Eyeriss: энергоэффективный реконфигурируемый ускоритель для глубоких сверточных нейронных сетей». IEEE International Solid-State Circuits Conference, ISSCC 2016, Digest of Technical Papers. С. 262–263.CS1 maint: использует параметр авторов (связь)
внешняя ссылка
- Архитектурные решения для будущего Manycore, опубликовано 19 февраля 2010 г. (на слайде более одной мертвой ссылки)
- Архитектура Эйериса