Сравнение производительности между заменой матрицы и изменением скорости - PullRequest
0 голосов
/ 01 апреля 2019

В Википедии имеется обширная сводка методов транспонирования матрицы на месте.

Эти методы сложно реализовать, прежде чем приступить к их реализации, мне интересно, есть ли какие-либо эталонные тесты или другие свидетельства того, что эти методы превосходят транспозицию матрицы вне места с точки зрения настенного времени (на CPU / GPU / любая архитектура)?

Все ли они работают медленнее по сравнению с использованием транспонирования вне места, когда данные копируются в другое место назначения?

1 Ответ

0 голосов
/ 01 апреля 2019

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

Но причиной использования на месте обычно являются соображения памяти или распределения. В этом случае вы обязаны использовать его.

При обмене вне места вам также нужно подумать о кеше, кеше и кеше, разделить вашу проблему на более мелкие части, пока и кеш, и источник не смогут одновременно комфортно находиться в кеше.

...