
- •108 Сурак
- •3. 3 Өлшемді Лаплас теңдеуін 2-өлшемді декомпозиция тәсілімен программалау.
- •208 Сурак
- •1. Флинна таксономиясы. Мisd, мimd архитектуралары.
- •2. Mpi программасын компиляциялау, жинау және орындау.
- •308 Сурак
- •1. Жарыс күі. Синхронизация. Философтар есебі.
- •2. Коллективті мәлімет алмасу функциялары. Редукция мысалдары.
- •3. Параллельді векторларды скаляр көбейту программасын жазыңыз
- •408 Сурак
- •1. Қазіргі параллель архитектуралы компьютерлер. Аппараттық бөлімі.
- •5 08 Сурак
- •3. 3 Өлшемді Лаплас теңдеуін 2-өлшемді декомпозиция тәсілімен программалау.
- •1. Қазіргі параллель архитектуралы компьютерлер. Программалық бөлімі.
- •2. Mpi_Dims_create() функциясын қолдану мысалы.
- •608 Сурак
- •3. Санды полиномдылыққа тексеру параллельді программасын жазыңыз.
- •1. Shared & distributed memory архитектуралары.
- •2. Нүкте-нүкте коммуникациялары. Mpi_Bsend(), mpi_Brecv функцияларын қолдану мысалдары.
- •7 08 Сурак
- •1. Таксономия Флинна. Архитектуры sisd, simd.
- •2 Что такое mpi ? Основные концепции и возможности.
- •3. Напишите программу параллельного вычисления числа pi.
- •808 Сурак
- •1 Состояние гонки. Алгоритм с конкуренцией. Синхронизация. Задача обедающих философов.
- •2. Коллективные операции обмена сообщениями
- •3. Напишите программу параллельного поиска максимального числа в массиве.
- •9 08 Сурак
- •1.Структура mpi программы в стиле spmd. Приведите пример.
- •2. Коммуникации точка/точка. Примеры использования фукнцииMpi_Send(), mpi_Recv.
- •3. Напишите программу параллельного вычисления определенного интеграла от фукнции 2*cos(X) в интервале [0,1].
- •1 Сурак
- •1 .Современные архитектуры параллельных компьютеров. Программная часть.
- •2. Декартова топология. Пример использования периодических соседей.
- •3. 3 Өлшемді Лаплас теңдеуін 2-өлшемді декомпозиция тәсілімен программалау.
- •181 Сурак
- •1. Примеры программ в стиле spmd и mpmd
- •2. Структура mpi программ в стиле mpmd. Приведите пример.
- •3. Напишите программу параллельного вычисления числа e.
- •21 Сурак
- •1.Таксономия Флинна. Архитектуры sisd, simd.
- •2.Отличия mpi и pvm.
- •3. Напишите программу параллельного вычисления числа e.
- •31 Сурак
- •1. Распределенная и разделяемая конфигурация памяти. Архитектура numa.
- •2. Пользовательские типы данных. Тип mpi_type_struct. Примеры.
- •41 Сурак
- •1.Суперскалярные и векторные процессоры.
- •2. Группы и коммуникаторы mpi. Создание новых групп (коммуникаторов).
- •51 Сурак
- •2. Как можно вычислить время, которое тратится на расчет определенного участка кода в mpi?
- •3. Параллельная модификация метода Гаусса-Зейделя. Решение 2-мерного уравнения Лапласа 1 мерной декомпозицией (параллельный метод Гаусса-Зейделя).
- •61 Сурак
- •71 Сурак
- •81 Сурак
- •91 Сурак
- •1.Numa архитектурасы.
- •2.Қолданушы мәлімет типтері. Mpi_type_struct. Мысалдар.
- •2 Сурак
- •1.Shared and distributed memory архитектурлары.
- •2.Mpi_White(), mpi_Probeфункциялары.
- •3.Санды полиномдылыққа тексеру параллельді программасын жазыңыз.
- •12 Сурак
- •1.Процесс дегеніміз не? Ағын дегеніміз не? Прцесс пен ағын айырмашылығы.
- •3. 3 Өлшемді Лаплас теңдеуін 1 –өлшемді тәсілімен программалау.
- •282 Сурак
- •1.Суперскаляр және векторлы процессорлар.
- •2.Виртуалды топология. Декарт және граф топологиясы. Қандай жағдайларда оларды қолдану керек. Декарт топологиясын құру кезеңдері.
- •3.2 Өлшемді Лаплас теңдеуін 1-өлшемді декомпозиция тәсілімен программалау.
- •32 Сурак
- •1.Есепті декомпозициялау және аймақты декомпозициялау тәсілі. Мысалдар.
- •2.Қолданушы мәлімет типтері. Мәліметтер үшін жады көлемі. Жадыны босату.
- •42 Сурак
- •Есепті декомпозициялау және аймақты декомпозициялау тәсілі. Мысалдар.
- •Қолданушы мәлімет типтері. Mpi_type_contiguous. Мысалдар.
- •Символдық массивте жолды табудың параллельді программасын жазыңыз.
- •52 Сурак
- •1. Распределенная и разделяемая конфигурация памяти. Архитектура numa.
- •2. ФункцииMpi_Wait(), mpi_Probe
- •62 Сурак
- •1. Параллелизация с декомпозицией задачи и декомпозицией области. Примеры.
- •2.Пользовательские типы данных. Тип mpi_type_vector (hvector). Примеры
- •3. Напишите программу параллельного поиска минимального числа в массиве.
- •72 Сурак
- •1. Закон Амдала с учетом сети. Ускорение. Эффективность.
- •2.Коммуникации точка/точка. Примеры использования фукнции mpi_Isend(), mpi_Irecv.
- •3. Напишите параллельную программу проверки простого числа.
- •82 Сурак
- •92 Сурак
- •3 Сурак
- •13 Сурак
- •1. Состояние гонки. Алгоритм с конкуренцией. Синхронизация. Задача обедающих философов.
- •2. Функции mpi_Gather, mpi_scatter, mpi_allgather, mpi_alltoall, mpi_allreduce. Их различия. Примеры.
- •3. Напишите программу параллельного скалярного умножения векторов.
- •23 Сурак
- •1. Можно ли запустить программу simd на современных процессорах семейства x86.
- •2.Пользовательские типы данных. Тип mpi_type_contiguous. Примеры.
- •3.Напишите программу параллельного поиска минимального числа в массиве.
- •383 Сурак
- •1.В каких случаях эффективно использование параллельных методик программирования ?
- •2. Есть мнение, что для написания программ mpi достаточно лишь 5-ти основых функций. Назовите их. Как Вы относитесь к данному высказыванию ?
- •3. Решение 3-мерного уравнения Лапласа методом 1-мерной декомпозиции.
- •43 Сурак
- •1. Суперскалярные и векторные процессоры.
- •2. Виртуальные топологии. Декартова и графовая топологии. В каких случаях их следует использовать. Основные шаги для создания декартовой топологии.
- •3. Параллельное умножение матрицы и вектора в mpi.
- •53 Сурак
- •7 Состояние гонки. Алгоритм с конкуренцией. Синхронизация. Задача обедающих философов.
- •2.Коллективные операции обмена сообщениями. Редукция. Примеры.
- •3. Напишите программу параллельного скалярного умножения векторов.
- •63 Сурак
- •1. Современные архитектуры параллельных компьютеров. Аппаратная часть.
- •2.Группы и коммуникаторы mpi. Создание новых групп (коммуникаторов).
- •3. Параллельное умножение матриц в mpi.
- •73 Сурак
- •1 Таксономия Флинна. Архитектуры sisd, simd.
- •2.Что такое mpi ? Основные концепции и возможности.
- •3.Напишите программу параллельного вычисления числа pi.
- •83 Сурак
- •1.Закон Амдала. Ускорение. Эффективность.
- •3. Напишите параллельную программу проверки простого числа.
- •93 Сурак
- •1.Современные архитектуры параллельных компьютеров. Программная часть.
- •2.Пример использования фукнции mpi_Dims_create
- •3. Решение 3-мерного уравнения Лапласа методом 1-мерной декомпозиции.
- •4 Сурак
- •1.Примеры программ в стиле spmd и mpmd
- •2.Коммуникации точка/точка. Примеры использования фукнции mpi_Send(), mpi_Recv.
- •3.Напишите программу параллельного вычисления определенного интеграла от функции
- •14 Сурак
- •1. Таксономия Флинна. Архитектуры sisd, simd.
- •2.Что такое mpi ? Основные концепции и возможности.
- •3.Напишите программу параллельного вычисления числа pi.
- •24 Сурак
- •1.Что такое процесс ? Отличия процесса от потока.
- •2.Пример использования фукнции mpi_Cart_create
- •3.Решение 3-мерного уравнения Лапласа методом 1-мерной декомпозиции.
- •34 Сурак
- •1.Современные архитектуры параллельных компьютеров. Программная часть.
- •2.Есть мнение, что для написания программ mpi достаточно лишь 5-ти основых функций. Назовите их. Как Вы относитесь к данному высказыванию ?
- •3.Решение 3-мерного уравнения Лапласа методом 3-мерной декомпозиции.
- •484 Сурак
- •1.Современные архитектуры параллельных компьютеров. Аппаратная часть.
- •2.Пример использования фукнции mpi_cart_coords
- •3. 2 Өлшемді Лаплас теңдеуін 2-өлшемді декомпозиция тәсілімен программалау.
- •54 Сурак
- •1.Таксономия Флинна. Архитектуры misd, mimd.
- •2.Структура mpi программы в стиле spmd. Приведите пример.
- •3. 2*Sin(X) функциясының интегралын [0,1] аймақта параллельді есептеңіз.
- •64 Сурак
- •1.Закон Амдала с учетом сети. Ускорение. Эффективность.
- •2.Типы данных в mpi. Для чего они нужны
- •3.Напишите параллельную программу проверки совершенного числа.
- •74 Сурак
- •1.Таксономия Флинна. Архитектуры sisd, simd.
- •2.Структура mpi программ в стиле mpmd. Приведите пример.
- •3.Параллельная модификация метода Гаусса-Зейделя. Решение 2-мерного уравнения Лапласа 1 мерной декомпозицией (параллельный метод Гаусса-Зейделя).
- •84 Сурак
- •1.Суперскалярные и векторные процессоры.
- •2.Пользовательские типы данных. Размеры памяти для данных. Освобождение памяти.
- •3.Напишите программу параллельного поиска максимального числа в массиве.
- •94 Сурак
- •1.Архитектура numa.
- •2.Виртуальные топологии. Декартова и графовая топологии. В каких случаях их следует использовать. Основные шаги для создания декартовой топологии.
- •3.Параллельное умножение матрицы и вектора в mpi.
- •5 Сурак
- •1.Таксономия Флинна. Архитектуры misd, mimd.
- •2.Примеры программ в стиле spmd и mpmd
- •3.Напишите программу параллельного вычисления определенного интеграла от фукнции 2*sin(X) в интервале [0,1].
- •15 Сурак
- •1.В каких случаях эффективно использование параллельных методик программирования ?
- •25 Сурак
- •1. Можно ли запустить программу simd на современных процессорах семейства x86.
- •2. Пользовательские типы данных. Тип mpi_type_indexed (hindexed). Примеры.
- •3.Параллельное умножение матриц в mpi.
- •35 Сурак
- •1.Распределенная и разделяемая конфигурация памяти. Архитектура numa.
- •2. Пример использования фукнцииMpi_Cart_shift()
- •3.. Напишите параллельную программу проверки простого числа.
- •45 Сурак
- •1.Закон Амдала. Ускорение. Эффективность.
- •585 Сурак
- •1. Можно ли запустить программу simd на современных процессорах семейства x86.
- •65 Сурак
- •1.Spmd, mpmd стилінде программалау мысалдары.
- •2.Топтар мен коммуникаторлар. Ранг.
- •3 . 2*Cos(X) функциясының интегралын [0,1] аймақта параллельді есептеңіз.
- •75 Сурак
- •1.Амдал заны. Үдеу. Тиімділік.
- •2.Mpi мәлімет типтері. Олар не үшін керек ? Қолдану мысалдары.
- •3.Санды қарапайымдылықа тексеру параллельді программасын жазыңыз.
- •85 Сурак
- •1.Қазіргі параллель архитектуралы компьютерлер. Аппараттық бөлімі.
- •2.Mpi_cart_coords()функциясын қолдану мысалы.
- •3.2 ӨлшемдіЛапластеңдеуін 2-өлшемді декомпозициятәсіліменпрограммалау.
- •95 Сурак
- •1.Есепті декомпозициялау және аймақты декомпозициялау тәсілі. Мысалдар.
- •2.Mpi_Gather, mpi_scatter, mpi_allgather, mpi_alltoall, mpi_allreduce функциялары. Олардың айырмашылығы. Мысалдар.
- •3.Массивтемаксималсандыесептеупараллельдіпрограммасынжазыңыз.
- •6 Сурак
- •1.Флинна таксономиясы. Мisd, мimd архитектуралары.
- •2.Mpi программасын компиляциялау, жинау және орындау.
- •3.Гаусс-Зейдель тәсілінің параллельді түрі. 2 өлшемді Лаплас теңдеуін 1 өлшемді декомпозициялау (Параллельді Гаусс-Зейдель тәсілі).
- •16 Сурак
- •1.Процесс дегеніміз не? Ағын дегеніміз не? Прцесс пен ағын айырмашылығы.
- •3.3 Өлшемді Лаплас теңдеуін 3-өлшемді декомпозиция тәсілімен программалау.
- •26 Сурак
- •36 Сурак
- •2. Spmd стилінде mpi. Мысал келтіріңіз.
3. Решение 3-мерного уравнения Лапласа методом 1-мерной декомпозиции.
MPI_CommGridComm;
intsize,rank,i;
intix,iy,iz;
intx,y,z,X=10,Y=10,Z=10;
MPI_Init(&argc,&argv);
MPI_Comm_size(MPI_COMM_WORLD,&size);
MPI_Comm_rank(MPI_COMM_WORLD,&rank);
MPI_Status status;
y=Y/size+2;
double matrix[X][y][Z],vecUP[X][Z],vecDOWN[X][Z];
if(rank==0)
{
for(ix=1;ix<X-1;ix++)
{
for(iz=1;iz<Z-1;iz++)
{
matrix[ix][1][iz]=1;
}
}
for(ix=1;ix<X-1;ix++)
{
for(iy=2;iy<y-1;iy++)
{
for(iz=1;iz<Z-1;iz++)
{
matrix[ix][iy][iz]=0;
}
}
}
}else
{
for(ix=1;ix<X-1;ix++)
{
for(iy=1;iy<y-1;iy++)
{
for(iz=1;iz<Z-1;iz++)
{
matrix[ix][iy][iz]=0;
}
}
}
}
for(inti=0;i<10;i++)
{
if(rank<size-1)
{
for(ix=0;ix<X;ix++)
{
for(iz=0;iz<Z;iz++)
{
vecUP[ix][iz]=matrix[ix][y-2][iz];
}
}
MPI_Send(vecUP,X*Z,MPI_FLOAT,rank+1,rank,MPI_COMM_WORLD);
MPI_Recv(vecUP,X*Z,MPI_FLOAT,rank+1,rank+1,MPI_COMM_WORLD,&status);
for(ix=0;ix<X;ix++)
{
for(iz=0;iz<Z;iz++)
{
matrix[ix][y-1][iz]=vecUP[ix][iz];
}
}
}
if(rank>0)
{
MPI_Recv(vecDOWN,X*Z,MPI_FLOAT,rank-1,rank-1,MPI_COMM_WORLD,&status);
for(ix=0;ix<X;ix++)
{
for(iz=0;iz<Z;iz++)
{
matrix0[ix][0][iz]=vecDOWN[ix][iz];
vecDOWN[ix][iz]=matrix[ix][1][iz];
}
}
MPI_Send(vecDOWN,X*Z,MPI_FLOAT,rank-1,rank,MPI_COMM_WORLD);
}
for(iz=1;iz<Z-1;iz++)
{
for(iy=1;iy<y-1;iy++)
{
if(rank==0&&iy==1){continue;}
if(rank==size-1&&iy==y-2){break;}
for(ix=1;ix<X-1;ix++)
{
matrix[ix][iy][iz]=matrix[ix+1][iy][iz]+matrix[ix-1][iy][iz]+matrix[ix][iy+1][iz];
matrix[ix][iy][iz]+=matrix[ix][iy-1][iz]+matrix[ix][iy][iz+1]+matrix[ix][iy][iz-1];
matrix[ix][iy][iz]/=6;
}
}
}
}while(stop==0);
MPI_Finalize();
return 0;
}
43 Сурак
1. Суперскалярные и векторные процессоры.
Скалярный процессор — это простейший класс микропроцессоров. Скалярный процессор обрабатывает один элемент данных за одну инструкцию (SISD, Single Instruction Single Data), типичными элементами данных могут быть целые или числа с плавающей запятой. В векторных процессорах (SIMD, Single Instruction Multiple Data), в отличие от скалярных, одна инструкция работает с несколькими элементами данных.
Суперскалярность — архитектура вычислительного ядра, использующая несколько декодеров команд, которые могут загружать работой множество исполнительных блоков. Планирование исполнения потока команд является динамическим и осуществляется самим вычислительным ядром.
Если в процессе работы команды, обрабатываемые конвейером, не противоречат друг другу, и одна не зависит от результата другой, то такое устройство (ядро) может осуществить параллельное выполнение команд. В суперскалярных системах решение о запуске инструкции на исполнение принимает сам вычислительный модуль, что требует много ресурсов.
Векторный процессор — это процессор, в котором операндами некоторых команд могут выступать упорядоченные массивы данных — векторы. Отличается от скалярных процессоров, которые могут работать только с одним операндом в единицу времени. Абсолютное большинство процессоровявляются скалярными или близкими к ним.