-
Data: 2014-07-22 17:41:47
Temat: Re: szybki logarytm
Od: firr <p...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu wtorek, 22 lipca 2014 17:23:09 UTC+2 użytkownik bartekltg napisał:
> On 22.07.2014 16:16, firr wrote:
>
> >>>
>
> >>>
>
> >>> Zerknąłem do tego, co robi oryginalny log. Też głownie
>
> >>> mnoży i dodaje, ma jednak nieco więcej skoków.
>
>
>
> > powody sa lub ich nie ma.. (co do tego to moze zalezy od platformy
>
>
>
> Przestań "dresować".
>
>
>
> > a jaki to jest 'oryginalny log'? jest to jakies zrodło w c w asmie
>
> > czy cos takiego? ztcw to w x87 sa dwie funkcje
>
>
>
> Napisałem o tym w ostatniej linijce posta. Kompilator nie użył
>
> koprocesora, tylko liczy jakiś szereg używając sse,
>
> po drodze używając paru porównań.
>
>
>
> Wymuszenie użycia koprocesora przez -mfpmath=387 nic nie daje,
>
> bo treść log2 się linkuje w wersji sse.
>
>
>
> Jak bardzo chcesz źródło, to masz.
>
> http://pastebin.com/BZpVhHGb
>
> najpierw std, potem to co wypluł kompilator z f.wymiernej + frexp.
>
> [bardzo ładnie sam przeplata liczenie licznika i mianownika]
>
>
>
>
>
> > FYL2X - liczy y*lg_2(x) (jesli y=lg_b(2) => liczy lg_b(x) )
>
> > FYL2XP1 - y*lg_2(x+1) "more precise than lg_2(x) if x is close to
>
> > zero" (acz tego troche nie rozumiem - to jak sie tego uzywa?)
>
>
>
> Jeśli masz liczbę postaci 1+dx to logartym (naturalny dla
>
> uproszczenia) tegobędzie z grubsza wynosił dx. Ale precyzja
>
> 1+dx to 16 cyfr, jeśli dx jesst na poziomie 10^-10 to
>
> dx ma tylko 6 cyfr znaczących. I tyle ma też wynik.
>
>
>
> A logartym w tym punkcie jest przydatny. Zwłaszcza, ze
>
> dx może być równe 10^-40 ;-)
>
> log1p (x) = log(1+x) tyle, że gdy x jest małe, znacznie dokładniej.
>
>
ok, ten asm troche za dlugi bym to rozczytywal
no ale ok, - i tak tego rodzaju funkcji log/exp/pow uzywa sie bardzo rzadko, dzialają
one tez baardzo wolno - lepiej jest jest je mysle stablicowac pod konkretny
przyopadek [ew ominac w jakis inny sposob] - taka stablicowana funkcja bedzie wtedy
pewnie z kilkadziesiat razy szybsza
(ostatnio sprawdzalem czy tablizowanie dzielen
daje speedup w moim rasteryzerze i byl speedup
(z 1% czy 2% w skali aplikacji ale jednak)
- czyli praktyczny wniosek w tego rodzaju funkcje wogole nie nalezy sie jak na dzis
pewnie bawic,
tablicowac i po robocie] (pewnie jeszcze nalezy sprawdzic czy w tych oryginalnych
wolnych nie ma bledów bo chyba moga one miec rozne dziwne
nieprecyzyjnosci, nie jestem pewien]
Następne wpisy z tego wątku
- 22.07.14 18:07 firr
- 22.07.14 18:14 firr
- 22.07.14 18:39 bartekltg
- 22.07.14 19:03 firr
- 22.07.14 21:25 Borneq
- 22.07.14 21:40 feldmarszałek tusk
- 22.07.14 21:41 feldmarszałek tusk
- 22.07.14 22:41 bartekltg
- 22.07.14 22:41 bartekltg
- 22.07.14 22:54 feldmarszałek tusk
- 23.07.14 06:59 Borneq
- 23.07.14 07:54 Wojciech Muła
- 23.07.14 11:33 firr
- 23.07.14 12:18 firr
- 23.07.14 12:48 firr
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 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??
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz