В состав процессора G80 входят 128 вычислительных ядер (далее —
нитевые ядра) общей
Ядра являются скалярными, что позволяет легко использовать их в вычислениях общего назначения, ведь в этом плане они ничем не отличаются от центрального процессора. В G80 вычислительные ядра объединены в группы (так называемые потоковые мультипроцессоры) по 8 ядер в каждой группе, каждая группа имеет кэш-память первого и второго уровней (причем кэш второго уровня доступен для обращения всем остальным группам) (рис 5.2). Все восемь блоков имеют доступ к любому из шести L2-кэшей и к любому из шести массивов регистров общего назначения (РОН). Таким образом, данные, обработанные на одном процессоре, могут быть использованы другим процессором.

(рис 5.2) Общая схема архитектуры G80(рис 5.1) Структура мультипроцессораПотоковый
Нитевые ядра, составляющие потоковый
Основные операции, поддерживаемые вычислительными ядрами, следующие:
Выполнение инструкций конвейеризировано.
В состав нитевых ядер также входит блок специальных функций, который осуществляет поддержку выполнения трансцендентных функций:
Блок специальных функций позволяет выполнять аппроксимацию функций при помощи квадратичной аппроксимации. Точность вычислений — порядка 22,5-24,0 бит.
Два блока специальных инструкций на
Результаты вычислений отдельной группы
Блок множественных инструкций поддерживает 768 нитей, выполняющихся параллельно и объединенных в 24 пучка/группы/верпа (
При решении прикладных задач на графическом процессоре разработчик должен предварительно разбить задачу на разделы (grids ), причем один раздел представляет собой один шаг из последовательности шагов решения задачи. В разделе задачи выделяются блоки, результаты выполнения которых могут быть получены параллельно — раздел распараллеливается. В блоках выделяются элементы/нити, которые выполняются параллельно в режиме взаимодействия, — эти элементы будут соответствовать нитям, выполняющимся на нитевых ядрах (рис 5.4).
Техника выполнения задач на графическом процессоре носит название массив взаимодействующих/конкурирующих нитей (CTA — Cooperative
Threads Array). Программист определяет параметры CTA — количество
нитей (от 1 до 512),

(рис 5.4) Объединение нитей выполнения в пучки и логика обработки пучков нитей(рис 5.3) Принцип параллелизации задачи при ее решении на GPUНити в СТА выполняются совместно. Потоковый
(рис 5.5) Принцип параллелизации задачи при ее решении на GPUМожно выделить следующую
Для выполнения расчетов на графических процессорах компанией NVIDIA предлагается специализированная среда программирования — CUDA ( Compute Unified Device Architecture — архитектура с унифицированными вычислениями, иногда называемая GPU Computing ). Среда представляет собой надстройку над языком С, которая вводит несколько новых операторов и процедур, значительно облегчающих программирование расчетов общего назначения, а также компилятор.
Процессор выполняет последовательность т. н. программных ядер. Каждое программное ядро выполняется как раздел (grid) с блоками нитей.
Нити в блоке могут выполняться совместно, синхронизованы и разделяют одни и те же данные в разделяемой памяти. Блоки нитей выполняются как массивы взаимодействующих нитей (СТА) на потоковых мультипроцессорах (рис 5.6).
(рис 5.6) Модель выполнения программ CUDAСреда
Последовательные блоки кода выполняются на процессоре общего
назначения, параллельные — на графическом. Условно программа в
CPU Serial Code Grid 0 GPU Parallel Kernel KernelA<<< nBlk, nTid >>>(args); CPU Serial Code Grid 1 GPU Parallel Kernel KernelB<<< nBlk, nTid >>>(args); .....
Распараллеленная архитектура G80 отлично подходит для выполнения трудоемких математических задач. Большое количество скалярных
Компанией NVIDIA создан проект
(рис 5.7) Структура вычислительного сервера TeslaГрафические процессоры на данный момент предлагают интересное
сочетание
Несмотря на потоковую архитектуру, слегка ограничивающую круг эффективно решаемых задач, графические процессоры серии G80 обладают большим запасом производительности. Благодаря своей доступности в составе видеокарт они дают толчок к развитию и массовому использованию параллельного программирования.
Основной подход к программированию данных процессоров — выделение в задачах участков с относительно независимыми потоками данных.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.