我已經確定,VS2010 C庫中exp(double)的Microsoft實現在Win32(即32位x86)和x64平臺上使用不同的算法,儘管我已經爲x86平臺啓用了SSE2並驗證了在exp()中取得SSE2代碼路徑。不幸的是,對於一些操作數,不同的算法產生稍微不同的結果(通過1ul)。在這些情況下,原則上我們都可以接受這些結果,但是在測試過程中,Win32和x64版本之間缺乏一致性對我們來說存在問題。我在哪裏可以找到可以在兩種平臺上使用的exp(double)的一個好的(即精確和快速的)替代實現?我很樂意擁有使用SSE2指令的彙編代碼解決方案,並且我可以將它從32位轉換爲64位或v.v.如有必要。我在哪裏可以找到在x86/x64上使用SSE2指令的exp(double)的良好實現?
0
A
回答
0
也許最好依靠編譯器並使用http://www.netlib.org/fdlibm/e_exp.c的exp實現。這是一個準確的實施(1ulp)。編譯sse2,對於x86 x64以及這些平臺上的結果應該完全相同。源代碼不提供使用mulpd(或_mm_mul_pd)和addpd代替mulsd和addss的很多機會。因此彙編代碼解決方案可能不是非常有利可圖的。
相關問題
- 1. 我在哪裏可以找到「BIF」良好的erlang參考?
- 2. 我可以在哪裏找到Hadoop上的SVM實現?
- 3. 我在哪裏可以找到真實的FFT和iFFT實現?
- 4. 我在哪裏可以找到代碼的機器指令
- 5. 哪裏可以找到tf.image.resize_bicubic的實現?
- 6. 哪裏可以找到「time.h」的實現?
- 7. 哪裏可以找到stdio.h的實現?
- 8. 我在哪裏可以找到發佈Maven 2.2.1的信譽良好的站點?
- 9. 我在哪裏可以得到一本關於java的良好學習指導?
- 10. 我在哪裏可以找到Visual Studio中stdio.h的實現?
- 11. 我在哪裏可以找到實現Zend_Auth的最佳方式?
- 12. 我在哪裏可以找到Android中API的實現?
- 13. 我在哪裏可以找到Lucene的通配符實現?
- 14. 我在哪裏可以找到高效的R-Tree實現?
- 15. 我在哪裏可以找到std :: string的實現
- 16. 我在哪裏可以找到Java EL 3.0的實現
- 17. 我在哪裏可以找到WS-Trust的U-Prove實現?
- 18. 我在哪裏可以找到laravel auth facade類的實現
- 19. 我在哪裏可以找到jquery.param的實現代碼?
- 20. 我在哪裏可以找到atof的.net實現?
- 21. 我在哪裏可以找到JavaScript函數的實現?
- 22. 我在哪裏可以找到Visual Studio的C99數學實現?
- 23. 我在哪裏可以找到javax.validation的實現。*?
- 24. Git - 我在哪裏可以找到實現.gitignore的源代碼
- 25. 我在哪裏可以找到.Net類的實現細節?
- 26. 我在哪裏可以找到std :: string :: find()的完整實現?
- 27. 我在哪裏可以找到一個很好的FFT示例實現/教程?
- 28. 我在哪裏可以找到一個好的ByteArrayMap實現? (fast with low gc)
- 29. 我在哪裏可以找到關於PHP vs Ruby vs Python的良好討論?
- 30. 我在哪裏可以找到有關ExtJS模板的良好文檔?