Каков правильный способ сравнить вычислительные ресурсы, требуемые алгоритмами обработки сигналов?Правильный способ сравнения стоимости алгоритма
Я говорю о алгоритмах обработки сигналов, которые имеют пределы ошибок против ресурсов по сравнению с задержкой ответа компромисс.
После достижения ошибки и задержки ответа с реализацией алгоритма, я пытаюсь сравнить его эффективность.
В настоящее время я бенчмаркинг различных алгоритмов, кормя их с тем же сигналом и с помощью perf
получить ТАСК-часы/MSEG используется на amd64, но это не архитектура агностика.
Промышленность использует MFLOPS/Hz для сравнения процессоров, но как я могу использовать служебные данные памяти (и, возможно, потоки) для конкретной реализации?
Что такое правильный академический измерения, чтобы иметь возможность сказать:
Алгоритм X является N раз лучше, чем Y для достижения P с Q границ.
EDIT: Для контекста, алгоритмы обработки сигналов я, занимающихся, являются итерационные те, у которых шаг функции могут быть связаны O (1). Так что BigO кажется бесполезным здесь.
Спасибо. Это то, чего я боялся. Мысль об использовании AMD, потому что это облегчит воспроизведение тестов. Вычислительные характеристики никогда не показывались в публикациях алгоритмов, которые я изучаю, и я хотел знать, как это обычно передается. – xvan