Вопрос к коллегам-программистам

Sep 01, 2013 13:19


Коллеги,

В кои-то веки столкнулся с задачкой, которую я не знаю как оптимизировать. Надо побитово умножить число на матрицу.
Псевдокод... )

programming

Leave a comment

Comments 6

denspb September 1 2013, 09:31:08 UTC
Это одиночное действие?
И если повторяющееся, то матрица/число оказываются одинаковыми?

Reply

lumag September 1 2013, 11:15:43 UTC
Повторяющееся, матрица фиксирована.

Reply

denspb September 1 2013, 16:08:13 UTC
Тогда та же идея то и у antilamer.

Reply

lumag September 1 2013, 22:17:45 UTC
:)

Reply


antilamer September 1 2013, 15:08:14 UTC
Можно попробовать так:
* для каждого из 256 возможных байтов закешировать результат умножения A на вектор этого байта: m
* разбить val на 4 байта b1, b2, b3, b4
* res ^= m[b1] ^ m[b2] ^ m[b3] ^ m[b4]

UPD: увидел вконтакте, что тебе Саша Аланов то же самое написал, и что это ускоряет в 8 раз. Ну что ж, круто :)

Reply

lumag September 1 2013, 22:17:37 UTC
Да, спасибо.

Reply


Leave a comment

Up