-
Data: 2013-03-26 22:00:55
Temat: Re: Nowoczesne procesory - jak to z nimi jest?
Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu wtorek, 26 marca 2013 19:02:08 UTC+1 użytkownik Adam Klobukowski napisał:
> Każdy procesor który to implementuje (a ogromna większość implementacji
> matematyki zmiennoprzecinkowej implementuje ten standard) musi liczyć
> dokłądnie tak samo. Jak nie liczy tak samo, to masz np. słynny Pentium bug.
Poniższy program na platformach sprzętowych jakie miałem pod ręką
zadziałał identycznie. Gdy wysłałem znajomemu żeby skompilował i
uruchomił u siebie, wyniki były inne. Ciekawe z czego to wynika.
Implementacja tego drobiazgu w kompilatorze nie wydaje się
trudna, a póki co wszystko wskazuje na to, że winę za niedokładne
obliczenia ponosi kompilator. Jeśli nie jest trudna, to czemu
czasami traci dokładność po małej ilości pętli?
int main( int argc, char *argv[] ) {
const double start = atof(argv[1]);
const double stop = atof(argv[2]);
const double p = atoi(argv[3]);
for( double x=start ; x<=stop ; x+=1.0/1024.0 )
if( pow(x,p) != (x*x*x) ) {
printf("%lf\n",x);
break;
}
return 0;
}
Uruchomienie:
./nazwa_programu 0 1000000 3
Mój wynik:
92681.901367
Szacując na oko, u mnie doszedł daleko, ale innych przerwał dużo
szybciej.
Pozdrawiam
Następne wpisy z tego wątku
- 26.03.13 22:01 Adam Klobukowski
- 26.03.13 22:11 Adam Klobukowski
- 26.03.13 22:29 M.M.
- 26.03.13 22:45 Stachu 'Dozzie' K.
- 26.03.13 22:53 AK
- 26.03.13 23:01 bartekltg
- 26.03.13 23:11 M.M.
- 26.03.13 23:33 Adam Klobukowski
- 26.03.13 23:40 M.M.
- 27.03.13 01:38 bartekltg
- 27.03.13 08:31 M.M.
- 27.03.13 08:42 Tomasz Kaczanowski
- 27.03.13 08:47 Tomasz Kaczanowski
- 27.03.13 08:54 AK
- 27.03.13 08:55 AK
Najnowsze wątki z tej grupy
- 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
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO