Skip to content

spirom64/Parallel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Parallel

Содержит примеры утилит, использующих технологии параллельного программирования для повышения производительности вычислений.

mprod

Утилиты для умножения 2 квадратных матриц вида I - (2/N)*A,

где I - единичная матрица размера N:

    1 0 ... 0
    0 1 ... 0
I = 0 0 1...0
        ...
    0 0 ... 1

A - матрица размера N, содержащая в качестве элементов только 1:

    1 1 ... 1
    1 1 ... 1
А = 1 1 1...1
        ...
    1 1 ... 1

Контанта N определена в исходном коде как 8192.

mprod_mkl

Утилита, вычисляющая произведение матриц указанного выше вида с использованием библиотеки Intel MKL.

Использование:

mprod_mkl [-b block_size] [-t topology]

Параметры:

b - размер блоков, который будет использован при блочно-циклическом распределении фрагментов матриц по процессам. Опционален
t - используемая топология. Возможные значения - "r" (разбиение матриц на строки) и "c" (разбиение на столбцы). Параметр опционален, при его отсутствии будет использовано блочно-циклическое распределение

mprod_mpi

Утилита, вычисляющая произведение матриц указанного выше вида путем разделения их на прямоугольные блоки. Размеры блоков определены числом процессов и рассчитываются на основе двумерной сетки процессов. Одинаковы для всех процессов, кроме процессов, лежащих на правой и нижней границах двумерной сетки (в том случае, если размер исходных матриц не делится нацело на соответствующие размеры сетки).

Использование:

mprod_mpi

Программа не принимает никаких параметров с командной строки.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages