Skip to content

Commit a5376d8

Browse files
committed
section9 ready
1 parent c3addb6 commit a5376d8

File tree

8 files changed

+46
-0
lines changed

8 files changed

+46
-0
lines changed

main.pdf

8.45 KB
Binary file not shown.

main.synctex.gz

9.23 KB
Binary file not shown.

main.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,4 +54,5 @@
5454
\include{section6}
5555
\include{section7}
5656
\include{section8}
57+
\include{section9}
5758
\end{document}

section3_4.tex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{ %section3_4
22
\subsection{Технология OpenCL}
3+
\label{OpenCL:section}
34
\Large\par\textbf{Краткая характеристика технологии.} OpenCL — фреймворк для написания компьютерных программ, связанных с параллельными вычислениями на различных графических и центральных процессорах, а также FPGA. В OpenCL входят язык программирования, который основан на стандарте языка программирования Си C99, и интерфейс программирования приложений. OpenCL обеспечивает параллелизм на уровне инструкций и на уровне данных и является осуществлением техники GPGPU. OpenCL является полностью открытым стандартом, его использование не облагается лицензионными отчислениями. С помощью этой технологии можно производить гетерогенные параллельные вычисления (распределять задачи между разными устройствами).
45
\parКак мы уже знаем, можно распараллелить программу по задачам между небольшим числом производительных ядер (процессоры современных ПК) или по данным между тысячами простых медленных ядер (вычислительные ядра современных GPU). Именно для задач, решаемых с помощью распараллеливания по данным используется OpenCL.
56
\par\textbf{Архитектура технологии OpenCL.} В OpenCL разделяют два вида устройств: \textit{host}, который управляет общей логикой и \textit{device}, которые выполняют вычисления. В роли \textit{хоста} обычно выступает центральный процессор, а в роли \textit{device} - GPU и другие устройства. \textit{Device} делится на вычислительные модули \textit{computer units}, которые в свою очередь состоят из обрабатывающих элементов (\textit{processing elements}) (см. рисунок~\ref{OpenCLArchitecture:image}). Непосредственно вычисления производятся в обрабатывающих элементах устройства.

section9.tex

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{ %section9
2+
\section{Лабораторная работа №6. «Изучение технологии OpenCL»}
3+
\input{section9_1}
4+
\input{section9_2}
5+
\input{section9_3}
6+
}

section9_1.tex

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{ %section9_1
2+
\subsection{Порядок выполнения работы}
3+
\Large
4+
\begin{enumerate}
5+
\itemВам необходимо реализовать один (для оценки 3) или два (для оценки 4) этапа вашей программы из предыдущих лабораторных работ. При этом вычисления можно проводить как на CPU, так и на GPU (на своё усмотрение, но GPU предпочтительнее).
6+
\item\textbf{Дополнительной задание (оценка 5).}
7+
\begin{itemize}
8+
\itemВыполнение заданий для оценки 3 и 4.
9+
\itemРасчёт доверительного интервала.
10+
\itemПосчитать время 2 способами: с помощью profiling и с помощью обычного замера (как в предыдущих заданиях).
11+
\itemОценить накладные расходы.
12+
\item* Необязательное задание для магистрантов с большим количеством свободного времени: Проводить вычисления совместно на GPU и CPU (т.е. итерации в некоторой обоснованной пропорции делятся между GPU и CPU, и параллельно на них выполняются).
13+
\end{itemize}
14+
\itemПри желании данную лабораторную работу можно написать на CUDA.
15+
\end{enumerate}
16+
}

section9_2.tex

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{ %section9_2
2+
\subsection{Состав отчета}
3+
\Large
4+
\begin{enumerate}
5+
\itemТитульный лист с названием вуза, ФИО студентов и названием работы. Содержание отчета (с указанием номера страниц и т.п.).
6+
\itemКраткое описание решаемой задачи.
7+
\itemХарактеристика использованного для проведения экспериментов процессора, операционной системы и компилятора GCC (точное название, номер версии/модели, разрядность, количество ядер и т.п.).
8+
\itemПолный текст распараллеленной программы (для п.2 и п.3).
9+
\itemПодробные выводы.
10+
\end{enumerate}
11+
\parОтчёт предоставляется в бумажном или электронном виде вместе с полным текстом программы. По требованию преподавателя нужно быть готовыми скомпилировать и запустить этот файл на компьютере в учебной аудитории (или своём ноутбуке).
12+
\par
13+
}

section9_3.tex

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{ %section8_3
2+
\subsection{Подготовка к защите}
3+
\Large
4+
\begin{enumerate}
5+
\itemУметь объяснить каждую строку программы, представленной в отчёте. Уметь объяснить выводы, полученные в результате работы.
6+
\itemПрочитать раздел методички~\ref{OpenCL:section} \textit{Технология OpenCL}.
7+
\itemИзучить материал лекции по технологии OpenCL.
8+
\end{enumerate}
9+
}

0 commit comments

Comments
 (0)