-
Data: 2014-07-23 17:10:07
Temat: Re: szybki logarytm
Od: firr <p...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu środa, 23 lipca 2014 16:20:07 UTC+2 użytkownik bartekltg napisał:
> On 23.07.2014 07:54, Wojciech Muła wrote:
>
> > On Tuesday, July 22, 2014 2:31:22 PM UTC+2, bartekltg wrote:
>
> >> Coś źle kompilowałem, czy logarytm jest lekko niedopieszczony?
>
> >> A może mój algorytm pomija coś potrzebnego do komfortowego
>
> >> uniwersalnego działania, co jest tak obciążające?
>
> >> Dodanie if (x<=0) return nan(""); praktycznie nic nie zmienia.
>
> >
>
> > Nie sprawdzasz klasy liczby, tzn. czy to NaN lub +/-Inf.
>
>
>
> Chyba to to. Dodając warunek isnormal(x) (i robiąc odpowiednią
>
> obsługę pozostałych liczb, ale to ma mniejsze znaczenie, bo testuje
>
> tylko na 'normalnych') wyniki są jak 24:28, niewiele, a jest bardo
>
> wrażliwe na ułożenie kolejności drabinki ifów, więc pewnie ręczna
>
> wersja działa ciut szybciej u mnie, ale niekoniecznie dla każdej
>
> maszyny.
>
>
>
> Wcześniej dodałem warunek na x>0 i to praktycznie nie zmieniło
>
> wyniku, stąd nie spodziewałem się takiej różnicy przy
>
> filtrach na pozostałe warunki.
>
>
>
>
>
> > Lecz poza tym funkcje biblioteczne pewnie korzystają z FPU,
>
> > na którym muszą używać dramatycznie wolnego rozkazu fly2x
>
> > (ok 100 cykli opóźnienia).
>
>
>
> Gdzieś w wątku podawałem firowi kod asm.
>
> http://pastebin.com/BZpVhHGb
>
> Nie używa fpu, też liczy jakąś funkcję wymierną. Ciąg działań
>
> mnożenia i dodawania, na koniec jedno divds.
>
>
>
nietrafione ify sa bardzo drogie (podobno okolo 30 razy drozsze niz trafione (jesli
to by mialobyc ze 30 cykli to by moglo podchodzic pod koszt porowywalny z dzieleniem
(ostatnio jak optymalizowalem rasteryzer to nie bralem tego pod uwage myslalem ze ify
sa tansze i rozbilem na spore drzewo z rzedu 30ma galeziami aby zaoszczedzic na
kopiowaniach ramu a widze ze chyba to byl blad ),
pozatym skoki sa mniej ale tez drogie (pare cykli) dlatego takie procedury podobno
nalezy przepisywac tak by bylo statystycznie jak najmniej nietrafionych ifow i by te
trafione raczej kontynuowaly liniowo wykonanie a nie skakaly branchem gdzies w bok,
(dla odmiany podobno wlasnie taki trafiony if
bez skoku jest szybki)
Następne wpisy z tego wątku
- 23.07.14 17:44 bartekltg
- 23.07.14 18:35 firr
- 24.07.14 20:54 feldmarszałek tusk
- 24.07.14 22:23 firr
- 25.07.14 01:09 bartekltg
- 26.07.14 15:30 slawek
- 29.07.14 09:52 Borneq
- 29.07.14 10:30 Borneq
- 29.07.14 12:51 Borneq
- 29.07.14 15:12 feldmarszałek tusk
- 29.07.14 16:10 Borneq
- 29.07.14 17:04 A.L.
- 29.07.14 18:56 bartekltg
- 29.07.14 19:01 bartekltg
- 29.07.14 19:09 bartekltg
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2024-12-31 Szukam: czujnik ruchu z możliwością zaączenia na stałe
- 2024-12-31 Warszawa => Solution Architect (Java background) <=
- 2024-12-31 Warszawa => Starszy Konsultant AWS <=
- 2024-12-31 Warszawa => International Freight Forwarder <=
- 2024-12-31 Odpowiedzialność w spółce z oo
- 2024-12-31 Warszawa => Spedytor Międzynarodowy <=
- 2024-12-31 Błonie => Analityk Systemów Informatycznych (TMS SPEED) <=
- 2024-12-31 Warszawa => Specjalista ds. bezpieczeństwa informacji i ciągłości
- 2024-12-31 8%
- 2024-12-31 Błonie => Administrator systemów <=
- 2024-12-31 Błonie => IT System Administrator <=
- 2024-12-31 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2024-12-31 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=
- 2024-12-31 Warszawa => Helpdesk - I linia wsparcia <=
- 2024-12-31 kabelek - kynar ?