Этот проект для практики программирования на CUDA C++ и практики использования этой технологии и решения задач с помощью программирования на видеокарте. В данной проекте приведены примеры реализации решения следующих задач:
- Поэлементное суммирование двух векторов.
- Поэлементное перемножения двух векторов.
- Поэлементное суммирования двух матриц.
- Перемножения матрицы на вектор.
- Скалярное перемножения двух веторов.
- Вычисление косинуса при помощи скалярного произведения.
- Перемножение двух матриц.
Также в проекте предоставлены графики корреляции времени исполнения задачи от размера данных.
В директории assets лежат следующee:
- task0..6 (сами задачи которые были упомянуты ранее. В каждой из них лежит файл(ы) .png формата с самим графиком, файл(ы) формата .txt данные для постоения, файл формата .cu это файл с программой для получения фанных и файл формата .py для вывода графика по полученным данным.)
- runner.cpp (файл для получения данных)
bash
git clone https://github.com/getylman/cuda_task1
- C++
- CUDA
- Python3
Сам проект в основном был написан CUDA, для получения данных для построения графиков был использован C++, для отрисовки графиков был использован Python3.