Научная статья на тему 'Применение параллельных вычислений для повышения качества восстановления СТМ-изображений'

Применение параллельных вычислений для повышения качества восстановления СТМ-изображений Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
60
10
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
CКАНИРУЮЩИЙ ТУННЕЛЬНЫЙ МИКРОСКОП / ВОССТАНОВЛЕНИЕ ИЗОБРАЖЕНИЙ / ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ / ГРАФИЧЕСКИЙ ПРОЦЕССОР / THE SCANNING TUNNEL MICROSCOPE / IMAGE RESTORATION / PARALLEL COMPUTING / GRAPHICS PROCESSOR

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Шелковников Евгений Юрьевич, Тюриков Александр Валерьевич, Гуляев Павел Валентинович, Жуйков Богдан Леонидович, Кизнерцев Станислав Рафаилович

Рассмотрено формирование аппаратных искажений в СТМ-изображениях, для их восстановления предложено использовать параллельные вычисления, реализуемые на графических процессорах современных видеокарт. Показаны особенности применения графического процессора для решения специализированных вычислительных задач.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Шелковников Евгений Юрьевич, Тюриков Александр Валерьевич, Гуляев Павел Валентинович, Жуйков Богдан Леонидович, Кизнерцев Станислав Рафаилович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Application of parallel computing for improvement of a restoration quality of the stm images

The formation of the hardware distortion in the STM images for their restoration is observed in the paper. It is proposed to use parallel computing, implemented on graphics processors of modern graphics cards. The features of the graphics processor for specialized computing tasks are showed in the paper.

Текст научной работы на тему «Применение параллельных вычислений для повышения качества восстановления СТМ-изображений»

УДК 621.385.833

ПРИМЕНЕНИЕ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ ДЛЯ ПОВЫШЕНИЯ КАЧЕСТВА ВОССТАНОВЛЕНИЯ СТМ-ИЗОБРАЖЕНИЙ

ШЕЛКОВНИКОВ ЕЮ., ТЮРИКОВ А.В., ГУЛЯЕВ П.В., *ЖУЙКОВ Б.Л., КИЗНЕРЦЕВ СР.

Институт прикладной механики УрО РАН, 426067, г. Ижевск, ул. Т. Барамзиной, 34 *Ижевский государственный технический университет, 426069, г. Ижевск, ул. Студенческая, 7

АННОТАЦИЯ. Рассмотрено формирование аппаратных искажений в СТМ-изображениях, для их восстановления предложено использовать параллельные вычисления, реализуемые на графических процессорах современных видеокарт. Показаны особенности применения графического процессора для решения специализированных вычислительных задач.

КЛЮЧЕВЫЕ СЛОВА: сканирующий туннельный микроскоп, восстановление изображений, параллельные вычисления, графический процессор.

При проведении исследований с применением сканирующего туннельного микроскопа (СТМ) для анализа и интерпретации получаемых результатов весьма важным являются определение и коррекция возможных механизмов возникновения артефактов, т.е. аппаратных эффектов СТМ, приводящих к наблюдению ложных или искаженных параметров исследуемой поверхности. Одним из недостатков СТМ является конечный размер рабочей части зондирующих острий (ЗО) измерительных игл, а также то, что электроны туннелируют от ЗО к исследуемой поверхности расходящимся пучком. Это приводит к ухудшению пространственного разрешения и значительным искажениям в СТМ-изображении [1-3].

Любой измерительный прибор, в частности СТМ, осуществляет преобразование одной физической величины в другую, используемую для анализа. В случае динамических измерений (когда в процессе измерений получается не единственное значение, а функция) можно говорить об аппаратной функции (АФ) измерителя: выходная величина есть свертка входной величины и АФ [4]. При этом происходит некоторое изменение входной величины. Обозначим для одномерного случая (например, профилограммы строки СТМ-изображения): h(x) - измеряемая величина, f(x) - аппаратная функция измерителя, а p(x) - измеренная величина. Тогда согласно определению аппаратной функции:

где Ь(х) - дельта функция Дирака. В этом случае согласно (1) выходной является входная величина:

(1)

0

(2)

(3)

0

В другом предельном случае, когда измеряемая величина имеет вид 5 -функции

ад

(4)

0

то выходной величиной является АФ.

В качестве разрешающей способности измерительного прибора, в частности СТМ, можно принять полуширину АФ по высоте, при этом из (3) и (4) следует, что если ширина нанообъекта намного больше ширины АФ, то аппаратные искажения незначительны (ими можно пренебречь). Другими словами, аппаратными искажениями пренебрегают, если детали нанорельефа намного больше разрешающей способности СТМ. В противоположном случае, если ширина нанообъекта намного меньше АФ, то на СТМ-изображении формируется рельеф, мало отличающийся от АФ (поэтому, это один из способов измерения АФ). В этом случае исключить аппаратные искажения и восстановить исходный рельеф, как правило, не удается. Таким образом, задача восстановления исходного рельефа актуальна, если требуется исследовать поверхность, имеющую особенности, сравнимые по ширине с ПР СТМ.

При изучении нанообъектов туннельным микроскопом с атомным разрешением вносят искажения рабочие размеры ЗО, соизмеримые с радиусом закругления его кончика. Если же размеры изучаемых объектов значительно больше радиуса закругления ЗО, то при формировании СТМ-изображения участвуют и его боковые стороны. Кроме того, туннелирующие электроны в промежутке между ЗО и образцом обладают корпускулярно-волновыми свойствами и падают на поверхность расходящимся пучком (интенсивность которого экспоненциально уменьшается по мере удаления от самого близкого расстояния между ЗО и образцом), что приводит к сглаживанию мелких деталей микрорельефа поверхности на СТМ-изображении. При этом электронный конусный луч, обеспечивает через туннельный зазор бесконтактный неразрушающий съем измерительной информации, а формируемое СТМ-изображение является фактически сверткой (конволюцией) аппаратной функции СТМ и рельефа поверхности [5,6].

Для комплексного восстановления СТМ-изображения поверхности нанообъектов с учетом растекания туннельного тока и геометрических размеров ЗО необходимо иметь инструмент компьютерного трехмерного сканирования поверхности ЗО с заданными геометрическими параметрами. Основным недостаткам такого компьютерного сканирования обычно является большое время сканирования поверхности, особенно в случае большого размера растра изображения. Поскольку реальные СТМ-изображения обычно имеют размеры 256^256 элементов и более, то для использования подобной методики при восстановлении СТМ-изображений необходимо существенно сократить время расчета изображения. Для этого обычно используется процедура упрощения математической модели протекания туннельного тока между ЗО и образцом, а также ряд допущений, которые вносят значительные искажения в результат обработки СТМ-изображений.

Для увеличения скорости расчета больших СТМ-изображений, а также возможности применения более сложных моделей протекания туннельного тока между ЗО и образцом предложено использовать параллельные вычисления, реализуемые на графических процессорах (ГП). ГП - это микропроцессор, специализированный для обработки графической информации. Он берет на себя часть функций по формированию трехмерного изображения и позволяет разгрузить центральный процессор (ЦП) от выполнения операций, связанных с расчетами геометрических трансформаций, моделей освещения и т.д. Как правило, графическим процессором оснащены все современные видеокарты, однако он может быть встроен и в чипсет материнской платы. Преимущество ГП над ЦП заключается в том, что ГП использует много ядер, но узкоспециализированных. В итоге производительность получается гораздо выше, чем у ЦП. Таким образом, большая вычислительная мощность, программируемость и точность ГП привели к тому, что его стали использовать в качестве графического вычислительного устройства общего назначения (general-purpose graphics processing unit) (GPGPU), т.е. в качестве вычислительного сопроцессора, а не устройства синтеза изображений. Поскольку изначально ГП были разработаны исключительно для ускорения расчетов, связанных с графикой, то они являются ограниченными в плане функциональности и программирования. В силу своей природы, ГП эффективны только в задачах, которые могут быть решены, используя потоковую обработку.

Потоковая обработка - это парадигма программирования, относящаяся к SIMD (одна инструкция - много данных), позволяющая некоторым приложениям использовать ограниченную форму параллельной обработки. Некоторые приложения могут использовать несколько вычислительных единиц, таких как математический сопроцессор на ГП без управления выделением, синхронизацией и коммуникацией между ними. ГП может оперировать только независимыми вершинами и пикселями, но зато обрабатывает их параллельно. Это очень эффективно, если необходимо обработать много вершин или пикселей одинаково. Однако существует возможность использования ГП не только для обработки графики, если написать свои специализированные программы для обработки данных - шейдеры. Упрощенная структура конвейера ГП представлена на рис. 1.

Рис. 1. Структура конвейера графического процессора

Различают три вида шейдеров: вершинные (обрабатывают вершины по отдельности), геометрические (обрабатывают примитивы) и пиксельные (обрабатывают пиксели). Вершинный шейдер оперирует данными, сопоставленными с вершинами многогранников. К таким данным, в частности, относятся координаты вершины в пространстве, текстурные координаты, тангенс-вектор, вектор бинормали, вектор нормали. Вершинный шейдер может быть использован для видового и перспективного преобразования вершин, генерации текстурных координат, расчета освещения и т. д. Геометрический шейдер, в отличие от вершинного, способен обработать не только одну вершину, но и целый примитив. Это может быть отрезок (две вершины) и треугольник (три вершины), а при наличии информации о смежных вершинах (adjacency) может быть обработано до шести вершин для треугольного примитива. Пиксельный шейдер работает с фрагментами изображения. Под фрагментом изображения в данном случае понимается пиксель, которому поставлен в соответствие некоторый набор атрибутов, таких как цвет, глубина, текстурные координаты. Такой шейдер используется на последней стадии графического конвейера для формирования фрагмента изображения. Для вычислительных целей первые два типа шейдеров не применяются. Пискельный шейдер, наоборот, очень подходит для вычислений и обработки данных. И если записать в текстуры исходные данные, а выдаваемое на экран изображение после обработки использовать как выходные данные, то можно использовать всю мощь ГП для решения любых специализированных задач. Наиболее удобным языком для написания шейдеров является HLSL (High Level Shader Language) - высокоуровневый Си-подобный язык, разработанный Microsoft и являющийся частью Direct3D (доступен для Direct3D начиная с версии 9.0). Следует отметить, что в последние годы в ГП были добавлены поддержка циклов и ветвлений, поддержка вычислений двойной точности, разделяемая память между ядрами ГП.

Идеально адаптированные приложения для обработки с применением ГП должны использовать большие наборы данных, иметь высокий уровень параллелизма и минимальную зависимость между элементами данных. Наиболее распространенная форма потока данных для ГП - это двумерная сетка, которая используется для множества различных вычислений, например, в линейной алгебре, при симуляции физических

процессов и т.п., в том числе и при обработке СТМ-изображений. Рассмотрим применение параллельных вычислений для восстановления СТМ-изображений размером п*т. Как было отмечено, для этой процедуры необходимо произвести компьютерное сканирование поверхности туннельным микроскопом. Типичная схема такого сканирования представлена на рис.2.

1-я строка

2-я строка

m-я строка •• •• ••• ••••

1 2 3 4 n- n

Рис. 2. Схема сканирования поверхности туннельным микроскопом

Сначала производится установка параметров сканирования, и игла размещается над первым элементом первой строки сканируемой поверхности. Далее производится сканирование поверхности следующим образом. Игла последовательно перемещается вдоль строки, в каждой точке которой производится вычисление туннельного тока (протекающего с иглы на поверхность) и корректировка высоты иглы таким образом, чтобы вычисленный ток был равен эталонному значению (установленному в начале сканирования). Таким образом, фактически моделируется работа отрицательной обратной связи реального туннельного микроскопа. После сканирования первой строки игла перемещается в начальную точку следующей строки, и процесс повторяется до тех пор, пока не будет отсканирована вся поверхность. Идея применения параллельных вычислений заключается в том, что туннельный ток вычисляется в каждой точке поверхности не последовательно, как описано выше, а параллельно. При переносе таких расчетов на видеокарту происходит очень большой прирост производительности. Особенно это заметно на больших объемах данных, так как ГП обладают очень большим количеством потоковых процессоров (например, AMD HD5850 имеет 1440 таких процессоров).

Было проведено сравнение ЦП и ГП по скорости выполнения процедуры восстановления СТМ-изображений размером 128^128 и 256x256 элементов. Результаты приведены в таблице.

Таблица

Сравнение ЦП и ГП по скорости обработки СТМ-изображений

Тип процессора Время восстановления СТМ-изображения (128x128), с Время восстановления СТМ-изображения (256x256), с

ЦП Intel Core2Duo 1.5GHz 283 10533

ГП видеокарты AMD HD5850 28 241

При последовательной обработке в ЦП Intel Core2Duo 1.5GHz восстановление СТМ-

изображений размером 128x128 производится ~ 4,7 мин, а размером 256x256 --3 ч, что

делает процедуру восстановления больших изображений малоприменимой. Использование параллельных вычислений, реализованных на ГП видеокарты AMD HD5850, позволили значительно увеличить скорость обработки: так, время восстановления СТМ-изображений размером 128x128 сократилось в ~10 раз, а 256x256 в ~44 раза. Таким образом, это позволяет применять сложные алгоритмы восстановления, обрабатывать СТМ-изображения больших размеров и, в итоге, улучшать качество их восстановления.

СПИСОК ЛИТЕРАТУРЫ

1. Chicon R., Ortuno M., Abellan J. An algorithm for surface reconstruction in scanning tunneling microscopy // Surface Science. 1987. V.181. P.107-111.

2. Савинов С.В. Сканирующая туннельная микроскопия и спектроскопия тонких плёнок на поверхности графита: дис... канд. физ.-мат. наук. М., 1993. 152 с.

3. Бухараев А.А., Бердунов Н.В., Овчинников Д.В. и др. ССМ-метрология микро- и наноструктур // Микроэлектроника. 1997. Т.26, №3. С.163-167.

4. Раутиан С.Г. Реальные спектральные приборы // Успехи физических наук. 1958. Т. 66, вып. 3. С. 475.

5. Stoll E., Baratoff A., Selloni A. et al., Current distribution in the scanning vacuum tunnel microscope: a free-electron model // J. Phys. C. Solid State Phys. 1984. V. 17. P. 3073-3086.

6. Гайкович К.П., Грибков Б.А., Жилин А.В. и др. Восстановление СТМ изображения атомарной структуры пиролитического графита методом деконволюции с учётом нелокальности взаимодействия в системе зонд-поверхность // 5-й Белорус. семинар по сканирующей зондовой микроскопии. Минск : БГУ, 2002. С. 123-127.

7. Шелковников Е.Ю. Компьютерное формирование изображений поверхности в туннельном микроскопе // Химическая физика и мезоскопия. 2007. Т. 9, № 3. С. 101-113.

APPLICATION OF PARALLEL COMPUTING FOR IMPROVEMENT OF A RESTORATION QUALITY OF THE STM IMAGES

Shelkovnikov E.Yu., Tyurikov A.V., Gulyaev P.V., * Zhuikov B.L., Kiznertsev S.R.

Institute of Applied Mechanics, Ural Branch of the Russian Academy of Sciences, Izhevsk, Russia *Izhevsk State Technical University, Izhevsk, Russia

SUMMARY. The formation of the hardware distortion in the STM images for their restoration is observed in the paper. It is proposed to use parallel computing, implemented on graphics processors of modern graphics cards. The features of the graphics processor for specialized computing tasks are showed in the paper.

KEYWORDS: the scanning tunnel microscope, image restoration, parallel computing, graphics processor.

Шелковников Евгений Юрьевич, доктор технических наук, старший научный сотрудник ИПМ УрО РАН, тел. (3412) 50-82-00, e-mail: [email protected]

Тюриков Александр Валерьевич, кандидат физико-математических наук, старший научный сотрудник ИПМ УрО РАН

Гуляев Павел Валентинович, кандидат технических наук, старший научный сотрудник ИПМ УрО РАН Жуйков Богдан Леонидович, студент 4 курса ИжГТУ

Кизнерцев Станислав Рафаилович, кандидат технических наук, старший научный сотрудник ИПМ УрО РАН

i Надоели баннеры? Вы всегда можете отключить рекламу.