.

advertisement
Семинар "Суперкомпьютерные технологии в науке,
образовании и промышленности", 29 октября 2013 г.
Суперкомпьютерное моделирование в
обратных задачах ультразвуковой томографии
Гончарский А.В.
Романов С.Ю. (докладчик)
Московский государственный университет, НИВЦ
Постановка задачи волновой томографии
проходящая волна
регистрируемый сигнал
проходящая волна
приемник-передатчик
•Постановка задачи во временной области
•Волновое уравнение
c( r )utt ( r, t )  u( r, t )   ( r  q)  f (t )
u (r , t  0)  u t (r , t  0)  0
q  X - положение источников
c( r )  c0  const , при r  R - известна вне неоднородности
u( r, t )  U ( r, t ), r Y , t  0 - известна на приемниках
•Требуется найти с(r) в R. Обратная задача нелинейная.
Приложение к ультразвуковой
томографии в медицине
• Более 40 тысяч женщин России ежегодно
заболевают раком молочной железы. Доля
лиц с поздними стадиями заболевания среди
первичных больных превышает 40%.
• Ультразвуковые томографы высокого
разрешения позволят осуществлять раннюю
диагностику рака.
• Каждое 4-е онкологическое заболевание –
рак груди.
• Почему не X-Ray томография и не МРТ?
Невозможность проведения безопасных регулярных рентгеновских
обследований из-за дозы получаемого излучения.
МРТ – высокая стоимость.
• Почему не использовать стандартные ультразвуковые сканеры?
Все УЗИ не являются томографическими. В обычных УЗИ,
информация получается с одного или нескольких ракурсов. В
томографах используется обзор с 360 градусов. За счет этого высокая разрешающая способность.
В США и Европе ведутся интенсивные работы по разработке
программного обеспечения и макетов УЗ томографов
Постановка задачи волновой томографии.
Градиентные методы решения
•Прямая задача
•Сопряженная задача
c(r )utt (r , t )  u (r , t )   (r  r0 )  f (t )
u (r , t  0)  u t (r , t  0)  0
c (r )w tt (r , t )  w (r , t )  0
w (r , t  T )  w t (r , t  T )  0
 n u |ST  p (r , t )
 n w |ST  u |ST U
•Обратная задача - минимизация функционала невязки
(u(c))  u |ST U
2
•Градиент функционала имеет вид:
T
C (u (c ), c )  w t (r , t )u t (r , t )dt
здесь u (r , t )
0
w (r , t ) решения основной и сопряженной задач
•При проведении расчетов прямой задачи брали граничное
условие неотражения на границе области расчетов c(r ) nu |ST   t u |ST
•Т – выбирали достаточным для прохождения основных
прямых и отраженных волн.
Численный алгоритм
• Аппроксимации частных производных 2-го порядка точности
• Явная разностная схема для расчета по временным слоям распространения звуковой
волны (расчет «в прямом и обратном времени»)
uijlk 1  uijlk ( 2 
8 2
сijl h
2
)
(ui 1 jlk  ui 1 jlk ) 2
сijl h
Условие неотражения на границе
2

(uij 1lk  uij 1lk ) 2
сijl h
2
Градиент функционала невязки вычисляется по формуле
m

k 0
uijlk 1  uijlk wijlk 1  wijlk


сijl h
2
 uijlk 1
Условие устойчивости Куранта
c 0.5  h
 n u |ST  c 0.5 t u |ST
gradijl 

(uijl 1k  uijl 1k ) 2
3

Итерационная последовательность:
1. В качестве начального приближения используется С0=const.
2. Для С0 с помощью явной разностной схемы решается прямая задача, находим волну
u(r,t) на каждом из детекторов.
3. Для функции u(r,t), решается сопряженная задача по явной схеме, получаем w(r,t).
4. Используя полученные значения u(r,t) и w(r,t), вычисляется градиент .
5. Зная градиент в точке С0, находится минимум функционала Φ(c( 0 )  kΦ (c( 0 ) ))
C
по параметру k в области k>0.
6. Точка минимума функционала принимается за С1. Процесс возвращается к пункту 1.
Обратные задачи УЗ томографии.
Модельные расчеты
Модельный объект.
Восстановленная структура
томографического слоя
• Начальное приближение = const = C0
• Количество источников – 8, количество приемников – 320.
• Время - 4 ч на 512 ядрах, 700 итераций, невязка в 100 раз.
• Сетка по XY – 1000x1000.
• Разрешение 1-3 мм.
• Длина импульса 5 мм.
Реконструкция по независимым данным
•Проблема: Провести реконструкцию по независимым данным.
•Экспериментальные данные получены из точных аналитических
формул в виде рядов по спецфункциям для равных плотностей.
•Хорошее согласие с численными расчетами.
График. Вид преломленной
волны на границе.
Аналитические и численные
расчеты.
Модель
Результаты реконструкции
Томографические схемы
на прохождение и на отражение
Почему важно использовать полный набор данных?
полные данные
на прохождение
на отражение
стандартный
УЗИ сканер
При полном наборе
данных:
•высокое разрешение,
•абсолютные значения
скорости
Томографические схемы.
Послойная реконструкция
Послойная реконструкция:
• Используется в рентгеновской томографии.
• Исходная трехмерная задача разбивается на N (N – число слоев) независимых
двумерных обратных задач.
• Сетка по XY – 1000x1000.
• Решать двумерные задачи проще.
• Огромный объем вычислений
• Сечений – 40.
• Количество источников – 8.
• Количество приемников – 320.
Структура распараллеливания
Источник
Задача в
целом
Приемники
Область
независимых
вычислений
Слой 1
Источник 1
Часть 1
Слой 2
Источник 2
Часть 2
…
…
…
Слой N
Источник K
Часть M
•Область
обменов
•Максимальное число ядер = число слоев х число источников х число частей
• Подход позволяет легко практически неограниченно распараллеливать вычисления.
• Эффективность распараллеливания 60% (ускорение в ~ 12000 раз) на 20480 ядрах.
• Высокая масштабируемость для десятков тысяч процессов.
• Подход позволяет свободно маневрировать, при наличии ограничений на число
процессоров.
Масштабируемость программы
• Выравнивание загрузки ядер -> разбиваем матрицу на блоки равного размера.
• Минимизации межпроцессорных обменов -> минимизируем периметр блоков
• по отношению к их площади.
250
200
Время, сек
Варианты
разбиения сетки 1*64 2*32 4*16 8*8
Время, сек
692
386
254
220
•Таблица - Сравнение вариантов
разбиения сетки на блоки, размер сетки –
1002х1002, число процессов (блоков) – 64.
Диаграмма - Повышение
масштабируемости на одной матрице по
мере модернизации программы
basic
opt_v1
150
opt_v2
100
opt_v3
opt_v4
50
0
144
196
256
324
400
484
Число процессов
•
Таблица - Результаты тестирования на суперкомпьютере «Ломоносов»
Число
1
2*2 3*3 4*4 5*5 6*6 7*7 8*8 9*9 10*10 11*11 12*12
процесс
ов Nproc
Время
1893 903 370 291 162 121 67
64
44
40
41
42
15
итерац
ий сек
13*13
14*14
44
45
Эффективность программы
•
E
T0
K
E 
T N proc  T
.
•
•
•
•
•
Nproc
Зависимость эффективности E от Nproc на
одной матрице: теоретическая (сплошная ) и
экспериментальная (пунктир).
•
•
•
E - эффективность;
Nproc - число процессов;
T0 - время расчетов на Nproc с пиковой
производительностью;
T = T(Nproc ) - экспериментальное
время расчета на Nproc ;
К = const - время расчетов с одним
процессом с пиковой
производительностью.
Уменьшение Е из-за увеличения времени обменов по отношению к
вычислениям.
Локальный максимум Е из-за увеличением доли вычислений в кэше.
При построении теоретического графика использована простейшая
параметрическая модель и типичные значения параметров для процессоров
общего назначения.
Производительность (ускорение)
программы
Пр
Пр = const / T;
•
•
Nproc
Зависимость производительности
системы от числа процессоров на одну
матрицу (пунктир).
Nproc - число процессов;
T = T(Nproc) - время расчетов Nproc
• Производительность растет с линейной
скоростью вплоть до 100 процессов на
матрицу.
• Знание зависимости эффективности и
производительности от Nproc позволяет
выбирать стратегии распределения ядер
при наличии и отсутствии ограничений
на число доступных ядер.
Решение задачи на 20480 ядрах
суперкомпьютера «Ломоносов»
•Впервые проведен масштабный вычислительный эксперимент на 20 480 ядрах
суперкомпьютера по послойной реконструкции модельного 3D объекта в УЗ
томографии.
Верхний ряд модельные сечения 3D объекта.
Нижний ряд восстановленные сечения.
• Сетка по XY – 1000x1000.
• 40 сечений, шаг между сечениями 5 мм.
• Разрешение 1-3 мм.
• Источников – 8, приемников – 320, импульс - 5 мм.
• 20480 ядер = 40 сечений х 8 источников х 8 х 8 областей• Время расчета 4 ч.
Послойная реконструкция vs.
непосредственно 3D реконструкция
Послойная томография
3D томография
• Послойная
реконструкция: исходная
трехмерная задача
разбивается на N (N –
число слоев)
независимых двумерных
обратных задач.
• 3D реконструкция:
решается трехмерное
уравнение.
1
• Решать двумерные задачи проще.
• Послойная реконструкция хорошо подходит для X-ray, т.к. коэффициент
рефракции ~ 1.
• Для ультразвука существенны эффекты дифракции, рефракции, переотражения,
излучение не сохраняется в слое.
• Большой объем данных: 24 источника, приемники с шагом полдлины волны,
оцифровка по времени 20 отсчетов на длину волны, 400х400 х400 точек сетки в
области расчетов, число неизвестных порядка ста миллионов.
Послойная реконструкция vs.
непосредственно 3D реконструкция
•Проблема: Насколько качественна послойная реконструкция 3D объекта в УЗ
томографии?
•Модельный эксперимент для сферы.
•Экспериментальные данные получены из точных аналитических формул в 3D.
•В случае < 0.5R: качество реконструкции хорошее.
•В случае > 0.5R: искажение геометрической формы, появление артефактов,
размывание вдоль оси z.
• Для получения высокого разрешения необходимо решать 3D.
Верхний ряд модельные сечения 3D шара радиуса 6см.
1
Z = 0 см Z = 3 см
Z = 4 см
Z = 5 см
Нижний ряд восстановленные сечения
Z = 6 см
Структура распараллеливания в 3D
Задача в
целом
Источник 1
параллелепипед 1
Источник 2
параллелепипед 2
…
…
Источник K
параллелепипед M
• Число источников = числу карт GPU.
• Графические карты NVIDIA Tesla X2070
суперкомпьютер «Ломоносов», С/С++/OpenCL.
• Обмен данными между узлами по MPI занимает менее
2% от времени расчета каждой карты
Рис. Схема параллельных расчётов
для нескольких источников одного
шага градиентного спуска
Структура распараллеливания в 3D
X
Y
Z
Рис. Схема расчета одной
подзадачи (для одного источника).
Рис. Процедура
вычислений по явной
по времени
трёхмерной
разностной схеме
• Явная разностная схема – высокая степень параллелизма. Около 108 параллельно
вычислимых операций
• Область размера 400х400 в плоскости ХУ разбивается на прямоугольные блоки размера 32х16
точек
• Каждый мультипроцессор (MP) GPU обрабатывает отдельный блок 32*16*Zn точек сетки
последовательно по слоям, где Zn – размер области вдоль оси Z. 32х16=512 потоков
• При последовательных послойных расчетах автоматически активно используются регистры
и кэш-память GPU.
• В быстрой памяти GPU хранятся данные 2 шагов по времени -> высокая производительность.
• Во внешней памяти - данные для границ. Ввиду малого объема, время обмена по медленному
каналу с внешней памятью составляет около 2% от времени расчетов.
Полный диапазон данных в 3D
•Впервые разработаны алгоритмы и создан комплекс масштабируемых программ
для суперкомпьютеров на GPU в 3D задачах УЗ томографии в медицине.
•Проведены модельные расчеты на сетках до 500х500х500 для прямой и
обратной задачи с полным и неполным диапазоном углов данных, разрешение
порядка 2-3 мм.
Фантом скорости
Схема эксперимента
Восстановленная скорость
Неполный диапазон данных в 3D
Решение задачи на суперкомпьютере «Ломоносов»
17 графических карт NVIDIA Tesla X2070.





Схема эксперимента 1
Источников -17
Время ~ 2 часов
Длина импульса - 5 мм.
Сетка 420х420х420.
Область 10х10х10 см
Сечение
скорости
Восстановленная скорость
Схема эксперимента 2
Модельные расчеты на GPU
5 итераций;
15 итераций;
120 итераций 10
Результаты модельных расчетов
(u(c ))
(n)
10
•
•
•
Невязка за 120 итераций уменьшилась в 30 раз.
Невязки 2.3*10-4 соответствует уровню ошибки ~
0.23%.
Метод наискорейшего спуска обеспечивает
монотонное убывание невязки. Вначале убывает
быстро, затем скорость заметно уменьшается.
Число итераций
Функционал невязки
6 источников
Время расчета (мин)
10
10
0
20
40
60
80
100
120 n
График невязки от числа итераций
5
15
120
6.3*10-3
1.6*10-3
2.3*10-4
5
15
120
Задача волновой томографии
с учетом поглощения
•
•
В задачах ультразвуковой томографии на частотах > 0.5 Мгц
поглощение более 50%. Частота 20 Мгц – только для подкожного слоя.
Разработан новый подход, учитывающий поглощение в среде.
Основная задача Модель1 (поглощение не зависит от частоты)
c( r )utt ( r, t )  a ( r )ut ( r, t )  u( r, t )   ( r  q)  f (t )
u (r , t  0)  u t (r , t  0)  0
 n u |ST  p ( r , t )
•Обратная задача –
минимизация функционала невязки
(u (c ), c )  u |ST U
2
•Градиент функционала имеет вид:
T
C (u (c ), c )  w t (r , t )u t (r , t )dt
0
•Сопряженная задача
c( r ) wtt ( r, t )  a(r)wt ( r, t )  w( r, t )  0
w (r , t  T )  w t (r , t  T )  0
 nw |ST  u |ST U
T
a (u(c, a ))   wt ( r, t )u( r, t )dt
0
где u( r, t ) w (r , t ) решения основной и сопряженной задач
Основная задача Модель2 (поглощение квадратично зависит от частоты стоксовское поглощение в вязких средах)
c( r )utt ( r, t )  a ( r )( u ) t  u( r, t )   ( r  q)  f (t )
Обратные задачи УЗ томографии с учетом
поглощения. Модельные расчеты
•
•
Удалось в модельных расчетах реконструировать одновременно 2 функции
(скорости и поглощения).
Скорость восстанавливается лучше.
Фантом скорости 500 итераций
64 источника
Фантом поглощения
3500 итераций
64 источника
Восстановленное поглощение
Точное и
восстановленное
сечения
Обратные задачи УЗ томографии с учетом
поглощения. Модельные расчеты
•
•
•
Восстановить скорость можно без учета поглощения.
Восстановить поглощение при неправильной модели – проблематично.
Фантом скорости
Фантом поглощения
Решение на основе
Модели 1 по данным
из Модели 2
4 источника
без учета
поглощения
Суперкомпьютерное моделирование
•Проблема: Насколько влияет плотность на реконструкцию в задачах УЗ
томографии в медицине.
•Из уравнения движения, непрерывности и
состояния можно получить
u(r , q,  ) 
2
c 2 (r )
u = f (r , q,  ) 
 (r )
u(r , q,  ).
 (r )
•Экспериментальные данные получены из точных
аналитических формул в 2D для разных плотностей
•В мягких тканях человека плотность варьирует ~
20%.
•Импедансы равны – отражения нет, хуже разрешение
•Если акустический импеданс противоположен, то
появляется двоение границы.
•Результаты моделирования обнадеживают.
1   2
Модель
График. Вид отраженной и
преломленной волн для
разных плотностей
1   2
Результаты реконструкции
1   2
Суперкомпьютерное моделирование
•Влияние шага между детекторами.
λ/2
1.5λ
3λ
Результаты
реконструкции
4 источника
•Влияние количества
источников.
Результаты реконструкции.
Шаг между детекторами 3λ
•Вывод: Уменьшение числа
приемников можно компенсировать
увеличением числа источников
8 источников
32 источника
Суперкомпьютерное моделирование
•Влияние длины импульса.
λ=5мм
λ=10мм
Результаты
реконструкции
4 источника
•Количество уровней оцифровки сигнала
1024 уровня
Результаты
реконструкции
4 источника
128 уровней
32 уровня
Основные результаты и выводы
•Предложены эффективные методы и алгоритмы решения 3D задач волновой
томографии как коэффициентных обратных задач через прямое вычисление градиента
функционала невязки. Методы предполагают как послойное (двумерное)
восстановление 3D объекта, так и решение непосредственно трехмерного уравнения.
•Решение непосредственно 3D уравнения позволяет повысить качество реконструкции и
разрешение. Удается восстанавливать не только форму неоднородности, но и
абсолютные значения скоростей.
•3D задача приводит к сверхбольшому объему данных в нелинейной обратной задаче с
числом неизвестных порядка ста миллионов.
•Разработанные алгоритмы хорошо масштабируются на процессорах общего
назначения и на GPU. Предложена структура программы, позволяющая выделить
большое количество независимых параллельных процессов в общем потоке задачи.
•В моделях с учетом поглощения удалось в модельных расчетах реконструировать
одновременно 2 функции (скорости и поглощения). Скорость восстанавливается лучше.
•Работа выполнена при поддержке РФФИ проекты № 12-07-00304-А и №. 13-07-00824 А
Download