Мне нужно позвонить Atan по миллионам значений в секунду. Есть ли хорошая библиотека для выполнения этой операции в партии очень быстро. Например, библиотека, которая передает логику низкого уровня, используя что-то вроде SSE?Хорошая библиотека .NET для быстрой потоковой/пакетной тригонометрии (Atan)?
Я профилировал приложение, и я знаю, что этот вызов Атану является узким местом.
Я знаю, что в OpenCL есть поддержка, но я бы предпочел сделать эту операцию на CPU. Целевая машина может не поддерживать OpenCL.
Я также изучал использование OpenCV, но точность для углов Atan составляет всего ~ 0,3 градуса. Мне нужны точные результаты.
Какая точность вам нужно, и каковы ваши входные значения –
одинарной или двойной точности (Int, поплавок, двойник, другое одно значение, или у/х пара?) это нормально. Я хотел бы точность около 1/3600 градуса. – Sean
Я сделал некоторую трассировку производительности beter с dotTrace и обнаружил, что узким местом на самом деле был не вызов Atan, а операция присваивания, которую я использовал в одной строке. Тем не менее, я по-прежнему заинтересован в любых хороших библиотеках триггеров для потоковых/пакетных операций. – Sean