C99 рекурсивное умножение матриц.Как получить доступ к показателям? - PullRequest
0 голосов
/ 20 декабря 2018

Я пытаюсь реализовать версию следующего алгоритма: Algorithm

Но вместо того, чтобы сводить задачу к 1 умножению, я хочу уменьшить размеры матриц до 16 * 16 и умножить эти блоки.

У меня уже есть реализация для размера блока 1 * 1 (такой же, как алгоритм, упомянутый ранее).Мне нужно расширить свою версию для больших блоков (например, 16 * 16).

Умножение блоков не сложно.Моя проблема заключается в доступе к индексам моих блоков, так как я должен использовать рекурсивный вызов моей версии 1 * 1-блока:

recursive_mult (n / 2, stride, & A [0 + 0 * stepde],& B [0 + 0 * шага], & C [0 + 0 * шага]);

... где n - размер текущих блоков.И я использую шаг в матрицах для тестирования производительности.

Так что я передаю только ссылки на свои матрицы.

Есть ли способ обойти это без изменения рекурсивного вызова для передачи стартовых индексов блоков?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...