Алгоритм сингулярного розкладу матриць на графічному процесорі

У статті представлено реалізацію алгоритму сингулярного розкладу матриці, розроблений для виконання на графічному процесорі, який складається з двох частин: ортогонального розкладання матриці та приведення матриці до діагонального вигляду. Наведено реалізацію зведення до дводіагонального вигляду мат...

Повний опис

Збережено в:
Бібліографічні деталі
Опубліковано в: :Проблеми програмування
Дата:2023
Автор: Сухарський, С.С.
Формат: Стаття
Мова:Ukrainian
Опубліковано: Інститут програмних систем НАН України 2023
Теми:
Онлайн доступ:https://nasplib.isofts.kiev.ua/handle/123456789/191025
Теги: Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
Назва журналу:Digital Library of Periodicals of National Academy of Sciences of Ukraine
Цитувати:Алгоритм сингулярного розкладу матриць на графічному процесорі / С.С. Сухарський // Проблеми програмування. — 2023. — № 1. — С. 30-37. — Бібліогр.: 10 назв. — укр.

Репозитарії

Digital Library of Periodicals of National Academy of Sciences of Ukraine
Опис
Резюме:У статті представлено реалізацію алгоритму сингулярного розкладу матриці, розроблений для виконання на графічному процесорі, який складається з двох частин: ортогонального розкладання матриці та приведення матриці до діагонального вигляду. Наведено реалізацію зведення до дводіагонального вигляду матриці з обчисленням ортогональних множників за методом Хаусхолдера і діагоналізації із використанням матриці повороту Ґівенса в середовищі jCUDA. Проведено експерименти, результати яких ретельно досліджено на предмет часу обчислень, абсолютної похибки, а також проведено порівняння з альтернативними способами реалізації сингулярного розкладу як на центральному так і на графічних процесорах. In this research paper we present an implementation of a singular value decomposition algorithm designed specifically for the graphics processing unit. It consists of two parts: orthogonal matrix decomposition and matrix diagonalization. Presented an implementation of bidiagonalization algorithm where we calculate the main bidiagonal matrix and two orthogonal multipliers using a series of House- holder transformations, as well as diagonalization algorithm with the help of Givens rotation matrices. Bothe these parts are implemented in jCUDA environment. Experiments have been conducted, the results of which have been thoroughly investigated on the matter of time consumption and calculations error. We’ve also compared our implementation with alternatives both on central and graphic processors.
ISSN:1727-4907