eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingSzukam benchmarkówRe: Szukam benchmarków
  • Data: 2014-12-17 15:27:38
    Temat: Re: Szukam benchmarków
    Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On Wednesday, December 17, 2014 2:24:57 PM UTC+1, g...@g...com wrote:
    > Jezeli dana procedura (taka jak np. liczenie sinusa) gwarantuje,
    > ze dla tego samego argumentu zawsze uzyskamy ten sam wynik
    Wystarczy ze gwarantuje taką samą dokładność dla określonego zbioru
    argumentów.


    Swoją drogą, szkoda że w C++ nie można przy argumencie procedury
    napisać, że dany argument będzie przyjmował wartości tylko z małego
    zbioru. Wtedy kompilator miałbym lepsze możliwości optymalizacji.


    np.
    f( int x@{1:50%,0:20%,2:10%,other} ) {
    return sin(x);
    }

    Kompilator mógłby stablicować dla sin dla 1, 0 i 2, a że 1
    przychodzi statystycznie w 50%, to mógłby 'górnym ifem' sprawdzać,
    czy x==1.

    if( x==1 ) return sin(1);
    if( x==0 ) return sin(0);
    if( x==2 ) return sin(2);
    return sin(x);

    Z kolei gdy się nie poda statystyki wystąpień, to kompilator mógłby
    wziąć wartości z pgo.

    Dalej, gdy nie ma other, to w ogóle kompilator mógłby wygenerować
    ultra zoptymalizowany kod:

    f( int x@{1:60%,0:40%} ) {
    return x==1 ? sin(1) : sin(0);
    }


    Pozdrawiam

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: