- •ВВЕДЕНИЕ
- •1. ПРЕДПОСЫЛКИ ВОЗНИКНОВЕНИЯ ЯЗЫКА OPENCL
- •2. ДИЗАЙН OPENCL
- •2.1. Модель платформы
- •2.2. Модель вычислений
- •2.3. Модель памяти
- •2.4. Модель программирования
- •3. АППАРАТНЫЕ СРЕДСТВА, ПОДДЕРЖИВАЮЩИЕ ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ
- •4. ЛАБОРАТОРНЫЕ РАБОТЫ
- •4.1. Поток проектирования при работе с языком OpenCL
- •4.1.1. Задание
- •4.1.2. Программное и аппаратное обеспечение
- •4.1.3. Последовательность выполнения работы
- •4.1.4. Заключение по практическому эксперименту
- •4.1.5. Содержание отчета
- •4.2. Создание аппаратно-программной системы с ОС Linux. Подключение к Ethernet. Работа с Web-сервером
- •4.2.1. Задание
- •4.2.2. Последовательность выполнения работы
- •4.2.3. Содержание отчета
- •4.3. Оптимизация умножения матриц в OpenCL
- •4.3.1. Базовый алгоритм умножения матриц
- •4.3.2. Использование локальной памяти
- •4.3.3. Увеличение числа одновременно исполняемых рабочих элементов
- •4.3.4. Содержание отчета
- •СПИСОК ЛИТЕРАТУРЫ
- •ИНТЕРНЕТ-РЕСУРСЫ
- •ПРИЛОЖЕНИЯ
- •П1. Код хост-программы для сложения двух векторов
- •П2. Исходный код хост-программы для умножения двух матриц
СПИСОК ЛИТЕРАТУРЫ
1.Мымриков Д. Стандарт OpenCL и его реализация на ПЛИС // Trialnews: сетевой журн. 2014. URL: http://trial-news.ru/tehnologii/standart-opencl-i- ego-realizaciya-na-plis/ (дата обращения: 20.09.2018).
2.DE1-SoC Board. URL: https://www.terasic.com.tw/cgi-bin/page/ar- chive.pl?Language=English&No=836 (дата обращения 06.07.2018).
3.DE1-SoC OpenCL User Manual. URL: https://www.terasic.com.tw/attachment/archive/836/DE1SOC_OpenCL_v02.pdf (дата обращения: 20.09.2018).
4.Антонюк В. А. OpenCL – открытый язык для параллельных программ: учеб. пособие М.: Изд-во Моск. ун-та, 2017. С. 88.
5.Вычужанин В. Использование стандарта программирования OpenCL дляорганизациивычисленийнаПЛИС//Современнаяэлектроника.2012.№ 1. С. 70–73.
6.Реконфигурируемые мультиконвейерные вычислительные структуры / И. А. Каляев, И. И. Левин, Е. А. Семирников, В. И. Шмойлов / под общ. ред. И. А. Каляева. / Изд. 2-е, перераб. и доп. Ростов н/Д: Изд-во ЮНЦ РАН, 2009.
344 с.
7.Heterogeneous Computing with OpenCL2.0.3 edition / D. Kaeli, P. Mistry, D. Schaa, D. Zhang. USA: Morgan Kaufmann (Elsevier), 2015. 307 p.
8.Versal: The First Adaptive Compute Acceleration Platform (ACAP). URL: https: //www.xilinx.com/support/documentation/white_papers/wp505-versal-acap.pdf (дата обращения: 10.12.2018).
9.Сантарини М., Гетман Л. Новый шаг в программировании на языках С/С++, Open CL // Компоненты и технологии. 2016. № 3. С. 43–46.
10.Altera+OpenCL:программируемподFPGAбеззнанияVHDL/Verilog. URL: https://habr.com/ru/post/269009/ (дата обращения: 20.09.2018).
11. |
FPGA-based implementation of Signal |
Processing System 2 edi- |
tion / R. |
Woods, J. McAlister, G. Lightbody, Y. Yi . |
Wiley, 2017. 484 p. |
ИНТЕРНЕТ-РЕСУРСЫ
1.www.nvidia.com/object/cuda_opencl.html
2.www.khronos.org/registry/cl
3.https://www.kernel.org/doc/Documentation/devicetree/usage-model.txt
4.http://www.alterawiki.com/wiki/Sopc2dts
5.http://rocketboards.org
32