В учебно-методическом пособии «Технология CUDA в задачах цифровой обработки изображений» раскрывается сущность технологии параллельных вычислений на графическом процессоре. Видеоадаптеры традиционно ассоциируются с визуализацией трехмерной графики, однако они являются так же высокопроизводительными арифметическими устройствами, способными выполнять параллельно тысячи потоков обработки, поэтому могут применяться и для разнородных вычислений, поддающихся распараллеливанию.
В первой части пособия описывается современная многоядерная архитектура графического процессора и основополагающие принципы, лежащие в основе построения параллельных алгоритмов. Авторы пособия описывают и иллюстрируют практическими примерами специфику разработки приложений с использованием технологии CUDA (ComputeUnifiedDeviceArchitecture). Технология CUDA, разработанная компанией NVIDIA, позволяет разработчикам реализовывать алгоритмы на языке программирования С++, выполняемые на графических процессорах видеокарт GeForce восьмого поколения и старше. В пособии подробно описана архитектура графических процессоров G80 и GF100, а также язык разработки приложений CUDA С и концепция модели программирования.
Вторая часть пособия посвящена изучению алгоритмов цифровой обработке изображений. Авторы приводят алгоритмы фильтрации, сегментации, выделения границ областей, морфологии. Даются рекомендации по распараллеливанию описанных алгоритмов.
В третьей части пособия приводятся методические указания для проведения практикума по учебной дисциплине «Цифровая обработка изображений» для магистров, обучающихся по направлению 230100 - Информатика и вычислительная техника . Практикум состоит из пяти практических и пяти лабораторных работ. Задачами практикума являются:
1) обучение разработке приложений для процессоров с параллельной вычислительной архитектурой;
2) изучение и оптимизация алгоритмов цифровой обработки изображений;
3) исследование и сравнительный анализ быстродействия алгоритмов, реализованных на центральном процессоре и на графическом адаптере.
За время выполнения лабораторного практикума магистры должны изучить технологию параллельных вычислений на графическом адаптере, реализовать алгоритмы обработки многомерных сигналов на центральном процессоре и с использованием технологии CUDA, провести исследование по сравнению полученных результатов. В методической части пособия сформулированы цели и порядок выполнения практических и лабораторных работ, представлена необходимая информация для написания программ, приведены индивидуальные задания. Предложен график выполнения практических и лабораторных работ и представлены требования к содержанию и оформлению отчёта по практикуму, позволяющие студентам избежать характерных ошибок при выполнении практических и лабораторных работ.