Я использую метод pclmulqdq.carrylessmultiply в программе .net c#. Метод выполняет беспрепятственное умножение с использованием инструкции процессора x86, которая очень быстрая. /> Беспостороннее умножение объяснено: https://en.wikipedia.org/wiki/carry-lse_product
Проблема заключается в том, что этот API не поддерживается на последних процессорах Arm и Apple Mac. Каковы альтернативы pclmulqdq.carrylessmultiply, кроме реализации бессмысленного умножения вручную (не используя выделенную инструкцию ЦП)? Цель состоит в том, чтобы сделать этот код портативным.
Подробнее здесь: https://stackoverflow.com/questions/797 ... -platforms