2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 перемножение больших матриц
Сообщение15.10.2013, 16:05 


20/04/12
114
Допустим у нас есть 2 большие матрицы которые не влезают в память и мы хотим их перемножить, по идее можно использовать http://en.wikipedia.org/wiki/Memory-mapped_file, так же есть алгоритм блочного перемножения матриц. По идее алгоритмы такого класса полезны в таких случаях как hard drive<->ram, gpu ram<->cpu ram, cpu ram<->cpu cache.

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

например в R вроде как есть http://cran.r-project.org/web/packages/ ... index.html

+еще интересно всё тоже самое для решения систем линейных уравнений (вроде как есть какие то out-of-core,out-of-memory,iterative методы).

И еще много чего есть с sparse матрицами, но врядли это поможет в случае dense или всё таки можно добиться какой либо экономии?

 Профиль  
                  
 
 Re: перемножение больших матриц
Сообщение15.10.2013, 17:29 


20/04/12
114
про самонастройку я имел ввиду что то такое
topic27510.html

 Профиль  
                  
 
 Re: перемножение больших матриц
Сообщение16.10.2013, 03:15 
Модератор
Аватара пользователя


11/01/06
5660
Посмотрите в сторону библиотеки TPIE: a Transparent Parallel I/O Environment, которая как раз упрощает работу с внешней памятью.

 Профиль  
                  
 
 Re: перемножение больших матриц
Сообщение16.10.2013, 22:28 


09/02/13
31
mrgloom_ в сообщении #775496 писал(а):
+еще интересно всё тоже самое для решения систем линейных уравнений (вроде как есть какие то out-of-core,out-of-memory,iterative методы).

Для этого можно попробовать разделять матрицу на блоки и применять к ним Schur_complement пока размер блока не станет приемлемым для обработки в ОЗУ

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group