Как можно надежно оценить производительность алгоритмов отслеживания основного тона на устройстве Android? - PullRequest
0 голосов
/ 26 января 2011

Хорошо, я понимаю, что вопрос неопределенный, поэтому я предоставлю некоторый контекст, и, возможно, я получу некоторые ответы, связанные с контекстом.

Я выполняю проект последнего года обучения в рамках своей степени бакалавра компьютерных наук по математике, и мой выбранный проект заключается в оценке алгоритмов отслеживания основного тона, работающих на мобильном устройстве. Существует несколько стандартных алгоритмов, которые я, скорее всего, буду реализовывать на устройствах на базе Android.

Я буду оценивать оценщики частоты по характеристикам, надежности и точности, поэтому мне необходимо произвести некоторые количественные измерения, относящиеся к.

Меня беспокоит то, что мои выводы будут сильно связаны с моей собственной реализацией этих алгоритмов. Как мне найти или минимизировать неэффективность, которую я представил?

Кроме того, есть ли какие-либо проблемы с производительностью, связанные с математическими вычислениями на мобильных устройствах в целом, о которых мне следует знать? Я читал, что целочисленная арифметика предпочтительнее, потому что значения с плавающей запятой не всегда поддерживаются процессором?

Я прочитал некоторые из связанных вопросов, и они указывают на книги со стандартными алгоритмами, но это не так просто, когда несколько алгоритмов отслеживания высоты тона существуют только в качестве описания в академической статье.

Я также обращен к программному обеспечению для оценки производительности, но не к каким-либо конкретным приложениям. Есть ли популярные варианты?

1 Ответ

1 голос
/ 26 января 2011

Что касается выявления и минимизации неэффективности ... существуют ли оценки алгоритмов отслеживания основного тона в других типах систем? Возможно, вы можете использовать их как ссылку для оценки вашей оценки (так сказать). То есть могут существовать некоторые базовые проблемы, которые позволят вам увидеть, вносят ли ваши реализации очевидный уклон.

Возможно, лучше придерживаться целочисленной или фиксированной арифметики, поскольку некоторые (большинство?) Устройства не будут иметь процессоров с плавающей запятой. (Вычисления с плавающей точкой выполняются программно на этих платформах.) Конечно, также справедливо исследовать компромиссы между плавающей точкой и нет. Вы можете даже реализовать один и тот же алгоритм двумя способами, просто чтобы изучить эту проблему.

Общее программное обеспечение для оценки производительности может подходить или не соответствовать вашему заданию. Вы должны точно определить, что означает «производительность, надежность и точность» с точки зрения конкретных показателей. Затем вы можете спросить, как лучше всего использовать ваши реализации для измерения или оценки этих показателей.

...