Article View: pl.comp.programming
Article #216570Re: Ile zajmie komputerowi mnożenie liczb rzędu 2^128
From: fir
Date: Thu, 05 Dec 2019 00:19
Date: Thu, 05 Dec 2019 00:19
27 lines
3656 bytes
3656 bytes
W dniu środa, 4 grudnia 2019 13:55:15 UTC+1 użytkownik osobli...@gmail.com napisał: > > czyli wychodziłoby 166 mikrosekund na takie obliczenie. > > > > Ale trzeba pamiętać, że to jest nieoptymalizowany program w lispie, > > na pewno można napisać program, który policzy to szybciej. > > Dzięki za pomoc. Niestety to dużo za dużo. Spodziewałem się wielkości o dwa rzędy mniejszej. Nawet optymalizacja nie sprawi chyba, że mogłoby to być 0,5 mikrosekundy, nie? > > Generalnie chciałbym, aby było to dokładnie 0,1 lub okolice tych czasów. Jest pewien algorytm, który na procesorze klasy Pentium M o szybkości 1.7 GHz ma właśnie taką wydajność szyfrowania, bo o szyfrowanie cały czas chodzi. Oczywiście działa on zupełnie inaczej od mojego, ale muszę w takim razie tak dobrać parametry, aby zbliżyć się do tej prędkości. > > Czy byłbyś w stanie sprawdzić mniejsze przypadki, np. liczbę 2^100-5 dla 100 iteracji? Ogólnie znaleźć takie n, że dla n iteracji na liczbie 2^n-5 ten czas będzie wynosił ok. 0,1 mikrosekundy? troche nudne to pytanie, ale mozesz zalozyc ze proste operacje (dodawanie, mnozenei , shift) na 64 bitowym incie zajmuje w granicach 1-5 cykli (powiedzmy) czyli w temacie zgrubnego ogarniecia mozesz zalozyc ze jedna operacje zajmuje okolo 1 nanosekunde z tym ze taki mnozenie przez 2.5 to raczej jest mnozenie x przez dwa i dodanie polowy x czyli ((x<<1) + (x>>1)) + 2.5 4 operacje, zalozmy ze to zajmuje 4 ns (mozliwe ze w praktyce zajmie ciut mniej, moze ze 2 ns) wiec sto iteracji tego zajmie 400 ns (200 ns?) to przy zalozeniu ze mowimy o obliczeniach ktore sie da zrobi na 64 bitowych integerach, jak robi sie to na 128 bitowych integereach mysle ze zjamie to minimum 2 razy tyle (zief) swoje droga esli to jest iteracja na stalej 2^128 - 5 to wynik konkretnej liczby iteracji na tym (np 100) jest znany i nie trzeba tego liczyc wiec wyliczenie tego wynosi 0 czasu (i dlatego tez niekonkretne pytaia sa nie tylko niecialawe ale i denerwujace (ziew))
Technical Details
Message-ID:
<deb8cf44-96c2-4bfa-8b78-a1c4a28440ec@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!185.151.15.253.MISMATCH!tr2.eu1.usenetexpress.com!feeder.usenetexpress.com!tr1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!g89no6171900qtd.0!news-out.google.com!w29ni73qtc.0!nntp.google.com!g89no6171893qtd.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<b7426ee8-be56-48fc-9657-da5a18e0729b@googlegroups.com> <qs878c$luk$1@dont-email.me> <5b01b3a8-9042-4203-871a-13f166f671dd@googlegroups.com>Show Full Headers
Complete Article Headers
X-Received: by 2002:ac8:259c:: with SMTP id e28mr5324696qte.323.1575505199282; Wed, 04 Dec 2019 16:19:59 -0800 (PST) X-Received: by 2002:ac8:7384:: with SMTP id t4mr5433545qtp.241.1575505199183; Wed, 04 Dec 2019 16:19:59 -0800 (PST) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erje.net!3.eu.feeder.erje.net!feeder.erje.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!185.151.15.253.MISMATCH!tr2.eu1.usenetexpress.com!feeder.usenetexpress.com!tr1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!g89no6171900qtd.0!news-out.google.com!w29ni73qtc.0!nntp.google.com!g89no6171893qtd.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.programming Date: Wed, 4 Dec 2019 16:19:58 -0800 (PST) In-Reply-To: <5b01b3a8-9042-4203-871a-13f166f671dd@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=5.172.255.0; posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN NNTP-Posting-Host: 5.172.255.0 References: <b7426ee8-be56-48fc-9657-da5a18e0729b@googlegroups.com> <qs878c$luk$1@dont-email.me> <5b01b3a8-9042-4203-871a-13f166f671dd@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <deb8cf44-96c2-4bfa-8b78-a1c4a28440ec@googlegroups.com> Subject: Re: Ile zajmie komputerowi mnożenie liczb rzędu 2^128 From: fir <profesor.fir@gmail.com> Injection-Date: Thu, 05 Dec 2019 00:19:59 +0000 Lines: 51 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit