Robię kilka obliczeń statystycznych. Potrzebuję ich, aby były szybkie, więc przepisałem większość z nich na SSE. Jestem całkiem nowy, więc zastanawiałem się, jakie jest właściwe podejście:Logarytm z SSE lub przejście na FPU?
Według mojej wiedzy, nie ma funkcji log2 ani ln w SSE, przynajmniej nie do wersji 4.1, która jest najnowszą wersją obsługiwane przez sprzęt, którego używam.
Czy lepiej:
- ekstraktu 4 pływaków i zrobić na nich obliczeń FPU do określenia entropii - I nie trzeba będzie ładować żadnej z tych wartości z powrotem do rejestrów SSE, tylko zsumować je do inny pływak
- znaleźć funkcję dla wiatru, który nie log2
Jaki zakres i dokładność jest potrzebna do log2? –
Taka sama dokładność, jaką uzyskuję z jednostki FPU, byłaby pożądana. –
Wydaje się, że istnieje kilka implementacji logów SSE wokół, np. http://jrfonseca.blogspot.com/2008/09/fast-sse2-pow-tables-or-polynomials.html –