LINUX.ORG.RU

Максимально быстрое сравнение чисел

 , ,


0

1

Тяжело сформулировать, но я попробую.

1. Есть поток входных сигналов, чисел.

2. Числа с этого потока должны сравниваться с неким заданным значением (пускай одним).

3. Поток дискретный, пускай частота дискретизации 2 мс (каждые 2 мс на вход поступает новое значение).

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

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

Где почитать на эту тему так, что б ответ был готов к концу дня. Или, может, вопрос банальный и ответ есть готовый.

Deleted
Ответ на: комментарий от kardapoltsev

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

Deleted
()
Ответ на: комментарий от Deleted

Что-то благородный Дон ...

от нас скрывает. Проверить 500 числе в секунду (пусть даже 1000 или 10000) никогда и нигде вроде не проблема.

Условие типа if (a>5.3e+4) then … выполняется всегда и везде одинаково (не очень эффективно) и его, кажется, никак не соптимизировать. Ну разве что используя всякие игры с int/float/complex. Вся игра с ускорением начинается, когда входящих чисел много и действия однотипные, там компилятор может чего-нибудь наоптимизировать.

Но тут всё упирается, КМК, в волшебный прибор, сочиняющий числа и общение с ним.

sshestov ★★
()
Ответ на: Что-то благородный Дон ... от sshestov

Числа сочиняет dsp. На нем не сравнивают, он другим занят. Но отсортировать вполне может. Сравнить конечно не проблема, вопрос в скорости. Есть смысл сравнивать по одному или группами. Ах да, это все конечно не дома и не в дата центре, а на несчастных 16битных кристаликах. Но все это лирика, вдаваться в детали - только вредно.

Важны максимально общие выкладки. Важна скорость выполнения сравнения, с учётом того входящий поток не прерывается никогда.

Deleted
()

ЯННП что с чем нужно сравнивать? Числа в потоке друг с другом? Числа из двух разных потоков? Нужно найти числа которые отличаются? Или нужен просто факт, что числа отличаются? Ну и т.д. Описывай задачу целиком, что ты тут жопой крутишь.

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от no-such-file
  1. Числа с этого потока должны сравниваться с неким заданным значением (пускай одним).

Откуда второй поток взялся?

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.