Skip to content

Repository files navigation

Технологии параллельного программирования | Курсовой проект

РАЗРАБОТКА ПАРАЛЛЕЛЬНОЙ ВЕРСИИ ОПЕРАЦИИ ПЕРЕМНОЖЕНИЯ РАЗРЕЖЕННОЙ МАТРИЦЫ НА ВЕКТОР

  1. Скачать архив с матрицей в соответствии с вариантом в формате "Matrix Market". Распаковать архив.
  2. Реализовать считывание матрицы из mtx-файла с помощью вспомогательного кода "mmio".
  3. Проанализировать структуру разреженной матрицы, выбрать наиболее эффективный формат хранения, реализовать конвертацию матрицы в выбранный формат.
  4. Реализовать последовательную версию перемножения разреженной матрицы на вектор, состоящий из единиц, для выбранного формата хранения.
  5. Установить нужное ПО в соответствии с вариантом:
  • "CPU": "OneAPI BaseKit", "OneAPI HPCKit";
  • "GPU": "CUDA".
  1. Реализовать параллельную версию программы, проверить корректность выполнения.
  2. Снять и проанализировать профили выполнения программ. По возможности оптимизировать программу.
  3. Подключить в проект библиотеку по варианту и реализовать версию перемножения матрицы на вектор с использованием этой библиотеки. Если библиотека не поддерживает наилучший формат хранения из п.3 – использовать для этого пункта такой формат, который поддерживается библиотекой.
  4. Провести замеры времени выполнения для собственного варианта и библиотечного метода. Рассчитать реальную производительность операции умножения матрицы на вектор.
  5. Выгрузить векторы результата в файлы для своего и библиотечного варианта перемножения матрицы на вектор.

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages