MSU2011_MPI_OpenMP (811099)
Текст из файла
Гибридная модель параллельного программированияMPI/OpenMPБахтин Владимир АлександровичАссистент кафедры системного программированнияфакультета ВМК, МГУ им. М. В. ЛомоносоваК.ф.-м.н., зав. сектором Института прикладнойматематики им М.В.Келдыша РАНМГУ им. М.В. Ломоносова, Москва, 2011 г.Содержание Современные направления развития параллельныхвычислительных систем Гибридная модель MPI/OpenMP OpenMP – модель параллелизма по управлению21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP2 из 125Тенденции развития современных процессоровВ течение нескольких десятилетий развитие ЭВМ сопровождалосьудвоением их быстродействия каждые 1.5-2 года.
Это обеспечивалось иповышением тактовой частоты и совершенствованием архитектуры(параллельное и конвейерное выполнение команд).Узким местом стала оперативная память. Знаменитый закон Мура, такхорошо работающий для процессоров, совершенно не применим дляпамяти, где скорости доступа удваиваются в лучшем случае каждые 6лет.Совершенствовались системы кэш-памяти, увеличивался объем,усложнялись алгоритмы ее использования.Для процессора Intel Itanium:Latency to L1: 1-2 cyclesLatency to L2: 5 - 7 cyclesLatency to L3: 12 - 21 cyclesLatency to memory: 180 – 225 cyclesВажным параметром становится - GUPS (Giga Updates Per Second)21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP3 из 125Тенденции развития современных процессоровПотокВВПВППувеличили производительность процессора в 2 разаПотокВППВПВПоток или нить (поанглийски ―thread‖) – этолегковесный процесс,имеющий с другимипотоками общие ресурсы,включая общуюоперативную память.ВремяВПоток 4ВПоток 3ВПоток 2Поток 1В21 февраляМосква, 2011В- вычисленияВПВПВПВППВПВППВПВПППChipMultiThreadingП- доступ к памятиГибридная модель программирования MPI/OpenMPВремя4 из 125Тенденции развития современных процессоровСуперкомпьютер Jaguar Cray XT5-HE Opteron Six Core 2.6 GHz Пиковая производительность - 2331 TFlop/s Число ядер в системе — 224 162 Производительность на Linpack - 1759 TFlop/s (75.4% от пиковой) Энергопотребление комплекса - 6950.60 кВтВажным параметром становится – Power Efficency (Megaflops/watt)Как добиться максимальной производительности на Ватт => ChipMultiProcessing, многоядерность.21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP5 из 125Тенденции развития современных процессоровAMD Opteron серии 6100 (MagnyCours)6176 SE 12 ядер @ 2,3 ГГц, 12 МБL3 Cache6136 8 ядер @ 2,4 ГГц, 12 МБ L3Cacheвстроенный контроллер памяти (4канала памяти DDR3) до 42.7GB/s4 канала «точка-точка» сиспользованием HyperTransort 3.0до 25.6 GB/s21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP6 из 125Тенденции развития современных процессоровIntel Xeon серии 5600 (Nehalem)X5680 6 ядер @ 3,33 ГГц, 12 нитей, 12 МБ L3 CacheX5677 4 ядра @ 3,46 ГГц, 8 нитей, 12 МБ L3 CacheIntel® Turbo BoostIntel® Hyper-ThreadingIntel® QuickPathIntel® Intelligent Power21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP7 из 125Тенденции развития современных процессоровIntel Core i7 980X (Gulftown) 3,33 ГГц 6 ядeр 12 потоков с технологией Intel Hyper-Threading 12 МБ кэш-памяти Intel Smart Cache встроенный контроллер памяти (3 канала памятиDDR3 1066 МГц ) технология Intel QuickPath Interconnect21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP8 из 125Тенденции развития современных процессоровIntel Itanium 9350 (Tukwila) 1,73 ГГц 4 ядeр 8 потоков с технологией Intel Hyper-Threading 24 МБ L3 кэш-памяти технология Intel QuickPath Interconnect технология Intel Turbo Boost21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP9 из 125Тенденции развития современных процессоровIBM Power7 3,5 - 4,0 ГГц 8 ядер x 4 нити SimultaneuosMultiThreading L1 64КБ L2 256 КБ L3 32 МБ встроенный контроллер памяти21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP10 из 125Тенденции развития современных процессоров Темпы уменьшения латентности памяти гораздо ниже темповускорения процессоров + прогресс в технологии изготовлениякристаллов => CMT (Chip MultiThreading) Опережающий рост потребления энергии при росте тактовой частоты+ прогресс в технологии изготовления кристаллов => CMP (ChipMultiProcessing, многоядерность) И то и другое требует более глубокого распараллеливания дляэффективного использования аппаратуры21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP11 из 125Содержание Современные направления развития параллельныхвычислительных систем Гибридная модель MPI/OpenMP OpenMP – модель параллелизма по управлению21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP12 из 125Гибридная модель MPI/OpenMPДанныеВычисленияMPICoreДанныеДанныеВычисленияВычисленияOpenMPOpenMPCore … CoreУзел 021 февраляМосква, 2011CoreCore … CoreУзел NГибридная модель программирования MPI/OpenMP13 из 125Достоинства использования в узлахOpenMP вместо MPI Возможность инкрементального распараллеливания. Упрощение программирования и эффективность нанерегулярных вычислениях, проводимых над общимиданными. Ликвидация или сокращение дублирования данных впамяти, свойственного MPI-программам. Дополнительный уровень параллелизма на OpenMPреализовать проще, чем на MPI.21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP14 из 125Преимущества OpenMP длямногоядерных процессоров Объемы оперативной памяти и кэш памяти,приходящиеся в среднем на одно ядро, будутсокращаться – присущая OpenMP экономия памятистановится очень важна. Ядра используют общую Кэш-память, что требуетсяучитывать при оптимизации программы.21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP15 из 125National Institute for ComputationalSciences.
University of TennesseeСуперкомпьютер Kraken Cray XT5-HE Opteron Six Core 2.6 GHz8 место в TOP 500http://nics.tennessee.eduПиковая производительность - 1028.85 TFlop/sЧисло процессоров/ядер в системе — 16 288 / 98 928Производительность на Linpack - 831.7 TFlop/s (81% от пиковой)Updrage: замена 4-х ядерных процессоров AMD Opteron на 6-ти ядерныепроцессоры AMD OpteronРезультат: 6-ое место в TOP500 в июне 2009 - 3-ье место в TOP500 вноябре 200921 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP16 из 125National Institute for ComputationalSciences. University of Tennessee21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP17 из 125Межведомственный СуперкомпьютерныйЦентр Российской Академии НаукСуперкомпьютер MVS-100K62 место в TOP 500http://www.jscc.ru/Пиковая производительность - 140.16 TFlop/sЧисло процессоров/ядер в системе — 2 920/11 680Производительность на Linpack - 107.45 TFlop/s (76.7% от пиковой)Updrage: замена 2-х ядерных процессоров Intel Xeon 53xx на 4-х ядерныепроцессоры Intel Xeon 54xxРезультат: 57-ое место в TOP500 в июне 2008 - 36-ое место в TOP500 вноябре 200821 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP18 из 125Oak Ridge National LaboratoryСуперкомпьютер Jaguar Cray XT5-HE Opteron Six Core 2.6 GHz2 место в TOP 500http://computing.ornl.govПиковая производительность - 2331 TFlop/sЧисло ядер в системе — 224 162Производительность на Linpack - 1759 TFlop/s (75.4% от пиковой)Updrage: замена 4-х ядерных процессоров AMD Opteron на 6-ти ядерныепроцессоры AMD OpteronРезультат: 2-ое место в TOP500 в июне 2009 - 1-ое место в TOP500 вноябре 200921 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP19 из 125Oak Ridge National LaboratoryJaguar Scheduling PolicyMINCoresMAXCores135 00021 февраляМосква, 2011MAXIMUMWALL-TIME(HOURS)2445 000134 999244 50044 999121 2504 499611 2492Гибридная модель программирования MPI/OpenMP20 из 125Cray MPI: параметры по умолчаниюMPI Environment Variable Name 1,000 PEs10,000 PEs50,000 PEs100,000 PesMPI Environment Variable Name 128,000Bytes20,48040962048MPICH_UNEX_BUFFER_SIZE(The buffer allocated to hold theunexpected Eager data)60 MB60 MB150 MB260 MBMPICH_PTL_UNEX_EVENTS20,480(Portals generates two events for eventseach unexpected messagereceived)22,000110,000220,000MPICH_PTL_OTHER_EVENTS(Portals send-side and expectedevents)250012,50025,00021 февраляМосква, 20112048eventsГибридная модель программирования MPI/OpenMP21 из 125Тесты NAS21 февраляМосква, 2011BT3D Навье-Стокс, метод переменных направленийCGОценка наибольшего собственного значениясимметричной разреженной матрицыEPГенерация пар случайных чисел ГауссаFTISLUБыстрое преобразование Фурье, 3D спектральныйметодПараллельная сортировка3D Навье-Стокс, метод верхней релаксацииMG3D уравнение Пуассона, метод MultigridSP3D Навье-Стокс, Beam-Warning approximatefactorizationГибридная модель программирования MPI/OpenMP22 из 125Тесты NASAnalyzing the Effect of Different Programming Models Upon Performanceand Memory Usage on Cray XT5 Platformshttp://www.nersc.gov/news/reports/technical/Cug2010Shan.pdf21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP23 из 125Тесты NASAnalyzing the Effect of Different Programming Models Upon Performanceand Memory Usage on Cray XT5 Platformshttp://www.nersc.gov/news/reports/technical/Cug2010Shan.pdf21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP24 из 125Тесты NASAnalyzing the Effect of Different Programming Models Upon Performanceand Memory Usage on Cray XT5 Platformshttp://www.nersc.gov/news/reports/technical/Cug2010Shan.pdf21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP25 из 125Алгоритм Якоби.
Последовательная версия/* Jacobi program */#include <stdio.h>#define L 1000#define ITMAX 100int i,j,it;double A[L][L];double B[L][L];int main(int an, char **as){printf("JAC STARTED\n");for(i=0;i<=L-1;i++)for(j=0;j<=L-1;j++){A[i][j]=0.;B[i][j]=1.+i+j;}21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP26 из 125Алгоритм Якоби. Последовательная версия/****** iteration loop *************************/for(it=1; it<ITMAX;it++){for(i=1;i<=L-2;i++)for(j=1;j<=L-2;j++)A[i][j] = B[i][j];for(i=1;i<=L-2;i++)for(j=1;j<=L-2;j++)B[i][j] = (A[i-1][j]+A[i+1][j]+A[i][j-1]+A[i][j+1])/4.;}return 0;}21 февраляМосква, 2011Гибридная модель программирования MPI/OpenMP27 из 125Алгоритм Якоби.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.