~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ B3A9A3135D4B1C87E1519C8CD2111437__1706217840 ✰
Заголовок документа оригинал.:
✰ Single instruction, multiple threads - Wikipedia ✰
Заголовок документа перевод.:
✰ Одна инструкция, несколько потоков — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Single_instruction,_multiple_threads ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/b3/37/b3a9a3135d4b1c87e1519c8cd2111437.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/b3/37/b3a9a3135d4b1c87e1519c8cd2111437__translat.html ✰
Дата и время сохранения документа:
✰ 20.06.2024 18:28:44 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 26 January 2024, at 00:24 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Одна инструкция, несколько потоков — Википедия Jump to content

Одна инструкция, несколько потоков

Из Википедии, бесплатной энциклопедии

Одна инструкция, несколько потоков ( SIMT ) — это модель выполнения, используемая в параллельных вычислениях , где одна инструкция, несколько данных (SIMD) сочетается с многопоточностью . Он отличается от SPMD тем, что все инструкции во всех «потоках» выполняются синхронно. Модель выполнения SIMT была реализована на нескольких графических процессорах и актуальна для вычислений общего назначения на графических процессорах (GPGPU), например, некоторые суперкомпьютеры объединяют центральные процессоры с графическими процессорами.

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

Самый простой способ понять SIMT — представить себе многоядерную систему, в которой каждое ядро ​​имеет свой собственный файл регистров, свои собственные ALU (как SIMD, так и скалярный) и свой собственный кэш данных, но в отличие от стандартной многоядерной системы, которая имеет несколько независимых кэшей и декодеров инструкций, а также несколько независимых регистров счетчика программ, инструкции синхронно передаются всем ядрам SIMT из одного устройства с одним кэшем инструкций и одним декодером инструкций, который считывает инструкции с использованием одного счетчика программ.

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

История [ править ]

SIMT был представлен Nvidia в микроархитектуре Tesla GPU с чипом G80. [2] [3] компания ATI Technologies , ныне AMD Немного позже, 14 мая 2007 года, TeraScale 1 на базе R600 , выпустила конкурирующий продукт — графический процессор .

Описание [ править ]

Поскольку время доступа всех распространенных типов оперативной памяти (например, DDR SDRAM , GDDR SDRAM , XDR DRAM и т. д.) все еще относительно велико, инженерам пришла в голову идея скрыть задержку, которая неизбежно возникает при каждом доступе к памяти. Строго говоря, скрытие задержки — это функция планирования с нулевыми издержками, реализованная в современных графических процессорах. Это может считаться, а может и не считаться свойством самого SIMT.

SIMT предназначен для ограничения накладных расходов на выборку команд . [4] т.е. задержка, которая возникает при доступе к памяти и используется в современных графических процессорах (например, Nvidia и AMD ) в сочетании с «скрытием задержки», чтобы обеспечить высокопроизводительное выполнение, несмотря на значительную задержку в операциях доступа к памяти. Здесь процессор перегружен вычислительными задачами и может быстро переключаться между задачами, когда в противном случае ему пришлось бы ждать в памяти. Эту стратегию можно сравнить с многопоточностью процессоров (не путать с многоядерностью ). [5] Как и в случае с SIMD, еще одним важным преимуществом является совместное использование логики управления многими каналами данных, что приводит к увеличению плотности вычислений. Один блок логики управления может управлять N линиями данных вместо повторения логики управления N раз.

Обратной стороной выполнения SIMT является тот факт, что поток управления для конкретного потока выполняется с использованием «маскирования», что приводит к плохому использованию, когда потоки процессора следуют по разным путям потока управления. Например, для обработки блока IF - ELSE , в котором различные потоки процессора выполняют разные пути, все потоки должны фактически обрабатывать оба пути (поскольку все потоки процессора всегда выполняются синхронно), но для отключения и включения используется маскирование. различные темы по мере необходимости. Маскирования избегают, когда поток управления согласован для потоков процессора, т. е. все они следуют одному и тому же пути выполнения. Стратегия маскировки — это то, что отличает SIMT от обычного SIMD и обеспечивает недорогую синхронизацию между потоками процессора. [6]

Терминология SIMT
Нвидиа КУДА OpenCL Хеннесси и Паттерсон [7]
Нить Рабочий элемент Последовательность операций SIMD-полосы
Деформация Волновой фронт Поток инструкций SIMD
Блокировать Рабочая группа Тело векторизованного цикла
Сетка NDRange Векторизованный цикл

См. также [ править ]

Ссылки [ править ]

  1. ^ Майкл МакКул; Джеймс Рейндерс; Арч Робисон (2013). Структурированное параллельное программирование: шаблоны для эффективных вычислений . Эльзевир. п. 52.
  2. ^ «Информационный документ по вычислительной архитектуре NVIDIA Fermi» (PDF) . www.nvidia.com/ . Корпорация NVIDIA. 2009 . Проверено 17 июля 2014 г.
  3. ^ Линдхольм, Эрик; Николлс, Джон; Оберман, Стюарт; Монтрим, Джон (2008). «NVIDIA Tesla: унифицированная графическая и вычислительная архитектура». IEEE микро . 28 (2):6 (Требуется подписка.) . дои : 10.1109/MM.2008.31 . S2CID   2793450 .
  4. ^ Рул, Шон; Вандирендонк, Ганс; Д'Хэн, Джорис; Де Босшер, Коэн (2010). Экспериментальное исследование переносимости производительности ядер OpenCL . Симп. Ускорители приложений в высокопроизводительных вычислениях (SAAHPC). hdl : 1854/LU-1016024 .
  5. ^ «Продвинутые темы по CUDA» (PDF) . cc.gatech.edu . 2011 . Проверено 28 августа 2014 г.
  6. ^ Майкл МакКул; Джеймс Рейндерс; Арч Робисон (2013). Структурированное параллельное программирование: шаблоны для эффективных вычислений . Эльзевир. стр. 209 и далее.
  7. ^ Джон Л. Хеннесси; Дэвид А. Паттерсон (1990). Компьютерная архитектура: количественный подход (6-е изд.). Морган Кауфманн. стр. 314 и далее. ISBN  9781558600690 .
Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: B3A9A3135D4B1C87E1519C8CD2111437__1706217840
URL1:https://en.wikipedia.org/wiki/Single_instruction,_multiple_threads
Заголовок, (Title) документа по адресу, URL1:
Single instruction, multiple threads - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)