Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Strelok_33
1 / 1 / 0
Регистрация: 25.02.2011
Сообщений: 29
#1

Расределенная обработка матриц - C++

25.02.2011, 14:50. Просмотров 311. Ответов 3
Метки нет (Все метки)

Всем доброго времени суток.
Хотелось бы узнать Ваше мнение и советы по поводу следующего задания:

Необходимо реализовать систему распределенной обработки матриц.
То есть предполагается наличие некоторого клиента, с помощью которого эти матрицы будут загружаться/выгружаться, а также выполняться действия с матрицами.

Для организации распределенного вычисления необходимо создание нескольких узлов, на которых будут производиться вычисления. Причем каждый узел хранит свою часть матрицы и с производит вычисления только с ней, а потом передает результаты клиенту.

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

Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.02.2011, 14:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Расределенная обработка матриц (C++):

обработка матриц - C++
Получить квадратную матрицу порядка n: 1111...1 222...2 33...3 . ..........0 Помогите пожалуйста решить задачу,...

Обработка матриц - С++ - C++
Вот задача нужно решить - С++. Не могу решить, не получается... Найти наибольший и наименьший элементы матрицы и поменять местами...

Обработка матриц в С++ - C++
Помогите мне сделать программу. Нужно ранспонировать матрицу и вывести на печать элементы главной диагонали и диагонали, расположенной под...

Обработка матриц - C++
Имеется код! void maxToArr(int ar,int matr, int nRow, int nCol){ int max=matr; for(int i=0;i<nRow;i++) for(int...

Обработка матриц - C++
Дан двумерный массив. В каждой строке все его элементы, не равные нулю, переписать (сохраняя порядок) в начало строки, а нулевые...

Обработка матриц - C++
Добрый день, помогите. Дана целочисленная матрица MxN.Найти элемент,являющийся максимальный в своей строке и минимальный в своем...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
silent_1991
Эксперт С++
4963 / 3039 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
25.02.2011, 15:41 #2
Разбивайте матрицы на полосы. Скажем, для умножения матриц надо, чтобы в каждом вычислительном узле хранилась горизонтальная полоса первой матрицы и вертикальная полоса второй.
Или вопрос был не об этом? о_О
Strelok_33
1 / 1 / 0
Регистрация: 25.02.2011
Сообщений: 29
25.02.2011, 17:33  [ТС] #3
Да, вопрос был об этом. Хорошо, допустим буду разбивать по строкам. А как лучше обрабатывать ситуации, если у меня число строк/столбцов не сможет равномерно распределиться по всем узлам? То, что не поместиться - пустить во второй цикл вычислений? Есть к примеру матрица 7 на 9 и 2 узла всего. По 3 строки раскидаем, 1 останется. Куда ее?
silent_1991
Эксперт С++
4963 / 3039 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
25.02.2011, 17:38 #4
Strelok_33, раскидывайте по 4))) Получите 4 и 3, всё нормально будет. Вообще надо разбивать матрицу на N полос по ]n/N[ строк, где n - число строк, N - число вычислителей, операция ]x[ - наименьшее целое число, большее x (например, ]5/3[ = 2, т.е. разбиваем на 3 полосы по 2 строки, на самом деле получим 2 + 2 + 1).
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.02.2011, 17:38
Привет! Вот еще темы с ответами:

Обработка матриц в с++ - C++
даны матрицы D размерностью m*n, E n*k и число a. найти значение выражения: D*a*E проверить свойство матриц: a*(A+B)=aA+aB это надо...

Обработка матриц - C++
Помогите кому не лень) Ввести двумерный массив {A}_{3x5}. Определить в нём среднее геометрическое элементов, у которых оба индекса...

Обработка матриц - C++
Помогите пожалуйста! Написать процедуру, которая принимает на входе двумерную матрицу вещественных чисел (кол-во строк и столбцов не...

Обработка матриц - C++
Уважаемые форумчане помогите с задачей. Определить максимальный елемент матрици {Si,j}6,3.Вывести его значения и индекси.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
25.02.2011, 17:38
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru