eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingAssemblerRe: Assembler
  • Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!new
    sgate.onet.pl!niusy.onet.pl
    From: p...@p...onet.pl
    Newsgroups: pl.comp.programming
    Subject: Re: Assembler
    Date: Wed, 24 Mar 2010 09:01:45 +0100
    Organization: Onet.pl
    Lines: 49
    Sender: n...@n...onet.pl
    Message-ID: <3...@n...onet.pl>
    References: <2...@p...null.onet.pl.invalid>
    NNTP-Posting-Host: newsgate.onet.pl
    Mime-Version: 1.0
    Content-Type: text/plain; charset="iso-8859-2"
    Content-Transfer-Encoding: 8bit
    X-Trace: newsgate.onet.pl 1269417706 2059 213.180.130.18 (24 Mar 2010 08:01:46 GMT)
    X-Complaints-To: n...@o...pl
    NNTP-Posting-Date: Wed, 24 Mar 2010 08:01:46 +0000 (UTC)
    Content-Disposition: inline
    X-Mailer: http://niusy.onet.pl
    X-Forwarded-For: 83.6.127.8, 10.174.28.57
    X-User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows 98; FDM)
    Xref: news-archive.icm.edu.pl pl.comp.programming:185363
    [ ukryj nagłówki ]

    > "1664" <p...@p...onet.pl> wrote:
    >
    > > > Owszem, jest szybki, ale nie szybszy niż napisanie specjalizowanej
    > > > biblioteki. :) Czasem warto się schylić do niskego poziomu - że
    > > > zareklamuję http://wm.ite.pl/proj/sse2string/.
    > >
    > > a ile wyciaga taki strcat strcopy (dla np dwu pietnastoznakowych
    > > stringow) ? w cyklach i w nanosekundach na tw kompie?
    > > (pytam jednakze o relaną szybkosc zmierzona timerem - nie jakas
    > > zawyzoną)
    >
    > Nie implementowałem strcat. :) Ale z różnych względów uważam, że
    > wersja SSE nie dałaby dużego przyspieszenia.
    >
    ostatnio miezylem (pisalem o tym w watku na pl.comp.lang.c)
    strcopy na swoim starym pentium4 (2.4GHz) i biblioteczne wyszlo
    mi ok 100 nanosekund naopisane z reki w petli for


    strcpy(tab, "xyz1234");

    wynik: ok 110000 / 110 ns

    wlasne

    void strcpy__(char* a, char* b)
    {
    for(int i=0;;i++)
    {
    a[i]=b[i];
    if(b[i]==0) break;
    }
    }

    for(int i=0;i<1000;i++)
    strcpy__(tab, "xyz1234");

    wynik: ok 37000 / 37 ns - trzy razy szybciej(!)

    37 ns

    czyli top jest tak mw 100 cykli - w sse2 powinno byc chyba
    co najmniej ze 3x szybciej




    --
    Wysłano z serwisu OnetNiusy: http://niusy.onet.pl

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj

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: