J'ai besoin d'appeler Atan sur des millions de valeurs par seconde. Y at-il une bonne bibliothèque pour effectuer cette opération en batch très rapidement. Par exemple, une bibliothèque qui transmet la logique de bas niveau en utilisant quelque chose comme SSE?Bonne bibliothèque .NET pour la trigonométrie de streaming/batching rapide (Atan)?
J'ai profilé l'application, et je sais que cet appel à Atan est un goulot d'étranglement.
Je sais qu'il existe un support pour cela dans OpenCL, mais je préférerais faire cette opération sur la CPU. La machine cible peut ne pas supporter OpenCL. J'ai également examiné l'utilisation d'OpenCV, mais sa précision pour les angles Atan est seulement de ~ 0,3 degrés. J'ai besoin de résultats précis.
Quelle précision avez-vous besoin et quelles sont vos valeurs d'entrée –
simple ou double précision (int, float, double, autre valeur unique, ou y/x paire?) est OK. Je voudrais une précision d'environ 1/3600 d'un degré. – Sean
J'ai effectué un traçage des performances avec dotTrace et constaté que le goulot d'étranglement n'était pas l'appel Atan, mais l'opération d'affectation que j'utilisais sur la même ligne. Je suis toujours intéressé, cependant, dans toutes les bonnes bibliothèques trig pour les opérations de streaming/batched. – Sean