eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingdalsza optymalizacjaRe: dalsza optymalizacja
  • Data: 2012-04-02 15:55:04
    Temat: Re: dalsza optymalizacja
    Od: " M.M." <m...@N...gazeta.pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    M.M. <m...@N...gazeta.pl> napisał(a):

    > <f...@N...gazeta.pl> napisał(a):
    >
    > > > - za drugim razem odwrotnie - nie inty i floaty zdaja sie
    > > > najwiekszym problemem tylko konwersje z float na int
    > > > (defakto jest to bug spolki fpu+kompilatory)
    > > >
    > >
    > > testy u mnie na starym p4
    > >
    > >
    > > for(int i=0; i<100000000; i++)
    > > {
    > > // int_ = (int) i; // 140 ms
    > >
    > > //int_ = i * 80; // 180 ms
    > > // int_ = i/40 ; // 2500 ms
    > >
    > > // float_ = (float) i; // 230 ms
    > >
    > > // float_ = ((float) i/ (i+23)); // 1800
    > > // float_ = sqrt(float(i) ); // 2300
    > > // float_ = cos(float(i) ); // 9600
    > > // float_ = ((float) i/ 3.3345); // 420
    > > // float_ = (float) i * float(i); // 350
    > >
    > > // int_ = (float) i; // 6900 ms
    > >
    > > }
    > >
    > > konwersja floata na int kosztuje tyle co kilka dzielen, i tyle co
    >
    >
    > A u mnie ten program skompilowany GCC z O2 nie kończy się:
    A z typem float już działa. Co jest grane?

    int main( int argc, char *argv[] ) {
    clock_t start = clock();
    float t = 0;
    for( int i=0 ; i<30000 ; i++ )
    for( int i=0 ; i<10000 ; i++ )
    t += i;
    printf( "%dms\n%lf\n" , (int)((clock()-start)*1000/CLOCKS_PER_SEC) , (double)t );
    return 0;
    }



    --
    Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: