eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingIle zajmie komputerowi mnożenie liczb rzędu 2^128 › Re: Ile zajmie komputerowi mnożenie liczb rzędu 2^128
  • X-Received: by 2002:ac8:5155:: with SMTP id h21mr14938097qtn.174.1576285194903; Fri,
    13 Dec 2019 16:59:54 -0800 (PST)
    X-Received: by 2002:ac8:5155:: with SMTP id h21mr14938097qtn.174.1576285194903; Fri,
    13 Dec 2019 16:59:54 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!goblin1!goblin.stu.neva.r
    u!g89no803614qtd.0!news-out.google.com!w29ni1296qtc.0!nntp.google.com!g89no8036
    12qtd.0!postnews.google.com!google-groups.googlegroups.com!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Fri, 13 Dec 2019 16:59:54 -0800 (PST)
    In-Reply-To: <qsveui$eop$1@dont-email.me>
    Complaints-To: g...@g...com
    Injection-Info: google-groups.googlegroups.com; posting-host=212.61.146.170;
    posting-account=5sNFBgoAAAAxlae8lv99mPyGsDs6ynwB
    NNTP-Posting-Host: 212.61.146.170
    References: <b...@g...com>
    <qs878c$luk$1@dont-email.me>
    <5...@g...com>
    <d...@g...com>
    <8...@g...com>
    <8...@g...com>
    <6...@g...com>
    <2...@g...com>
    <e...@g...com>
    <0...@g...com>
    <a...@g...com>
    <qsveui$eop$1@dont-email.me>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <5...@g...com>
    Subject: Re: Ile zajmie komputerowi mnożenie liczb rzędu 2^128
    From: osobliwy nick <o...@g...com>
    Injection-Date: Sat, 14 Dec 2019 00:59:55 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:214546
    [ ukryj nagłówki ]

    W dniu piątek, 13 grudnia 2019 08:34:44 UTC+1 użytkownik Piotr Chamera napisał:
    > W dniu 2019-12-13 o 06:42, osobliwy nick pisze:
    > > 166 mikrosekund wziąłem z wyliczeń Piotra Chamera. Z tego co Ty napisałeś wynika
    zaś, że można to zrobić 50 razy szybciej. 10 nanosekund dla 64-bitowych liczb na
    iterację, dla 128-bitowych - 3 razy wolniej, czyli 30 nanosekund. To daje 128*30=3840
    nanosekund na 128 iteracji (czyli 3,84 mikrosekund). Wówczas wychodzi:
    > >
    > > 1000000/3,84*128/20*1/2^20 = 1,59 MB/s
    > >
    > > Nie rozumiem w takim razie tylko skąd taka rozbieżność pomiędzy tym co piszesz
    Ty, a tym co policzył Piotra Chamera.
    >
    > Muszę się odezwać, bo tu jakieś absurdy wychodzą. Napisałem na szybko
    > zupełnie niezoptymalizowany program, który policzył przykładowy algorytm
    > w 166 ms. O czym to świadczy? Tylko o tym, że bez wysiłku można taki
    > czas uzyskać. Trzeba też wziąć pod uwagę, że jest to program zupełnie
    > bez ograniczeń na to jak duże są liczby, czy są całkowite itp.
    >
    > Kolega fir oszacował, że ten sam algorytm można policzyć wielokrotnie
    > szybciej i to też prawda. Szczególnie jeśli da się ustalić, że wszystko
    > da się np. policzyć na 128 bitowych liczbach całkowitych bez znaku :)
    > O ile to będzie szybciej okaże się kiedy ktoś to napisze w konkretnym
    > języku, skompiluje i uruchomi na konkretnym procesorze (50 razy szybciej
    > względem mojego przykładu jest jak najbardziej realne :).

    Ok, rozumiem. Nie sądziłem, że rozbieżności w zależności od tego jak napiszemy
    program mogą być aż tak duże. Dobrze jednak, że istnieje potencjał na usprawnienie
    tego aż o powiedzmy 2 rzędy wielkości. Reszta jest, jak rozumiem, kwestią konkretnych
    testów. Będę myślał zatem o takich testach, na razie jednak takie wstępne szacunki mi
    wystarczą. Wcześniej mam do rozwiązania jeszcze kilka innych problemów związanych z
    algorytmem.

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: