-
X-Received: by 2002:a05:622a:142:: with SMTP id v2mr58611463qtw.169.1609451304519;
Thu, 31 Dec 2020 13:48:24 -0800 (PST)
X-Received: by 2002:a05:622a:142:: with SMTP id v2mr58611463qtw.169.1609451304519;
Thu, 31 Dec 2020 13:48:24 -0800 (PST)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
e.net!feeder.erje.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!feeder1.cambr
iumusenet.nl!feed.tweak.nl!209.85.160.216.MISMATCH!news-out.google.com!nntp.goo
gle.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Thu, 31 Dec 2020 13:48:24 -0800 (PST)
In-Reply-To: <rsl6kv$6a6$1@news.icm.edu.pl>
Complaints-To: g...@g...com
Injection-Info: google-groups.googlegroups.com;
posting-host=2a02:a458:2a00:1:3d86:a562:a2a3:1854;
posting-account=5sNFBgoAAAAxlae8lv99mPyGsDs6ynwB
NNTP-Posting-Host: 2a02:a458:2a00:1:3d86:a562:a2a3:1854
References: <e...@g...com>
<rsl6kv$6a6$1@news.icm.edu.pl>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <5...@g...com>
Subject: Re: Czy numpy przyspieszy działania na dużych liczbach w Pythonie?
From: "o...@g...com" <o...@g...com>
Injection-Date: Thu, 31 Dec 2020 21:48:24 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:215257
[ ukryj nagłówki ]Trochę się zmieniło. Okazało się, że mogę tu skrócić modulo, a w związku z tym
zastosować "&", zaś dzielenia przez 2 zastąpić ">>".
a=333
b=555
c=777
d=999
x=12345
mask128 = 2**4-1
for i in range(128):
if x & 1:
x=((x * a + b) >> 1) & mask128
else:
x=(x * (c >> 1) + d) & mask128
s=10//2
print(x)
Tak to teraz wygląda. W tej chwili matematyki jest tu już mniej. Wciąż pozostają
jednak mnożenia z dodawaniem (ale coraz mniej widzę tu pola do przyspieszeń). Takich
pętli dla różnych a, b, c, d, x muszę mieć 20 w programie. Działamy tylko na liczbach
całkowitych, a, b, c, d mogą być też ujemne.
> 3. CUDA itp. - jest do tego jakiś moduł w Pythonie (do wszystkiego
> jest jakiś moduł) - patrz pypi. To powinno być prawie
> to.
Ok, poszukam.
> -2. Operacje jakie chcesz robić to mnożenie y = A x, gdzie y i x
> są wektorami, A jest macierzą. Może być opłacalne
> zdiagonalizowanie macierzy A (czyli transformacja U y = U A U^-1
> U x), bo wtedy wielokrotne mnożenia się trywializują. Patrz też
> wartości i wektory własne.
Zapomniałem dodać, że nie można założyć, że te operacje będą wykonywane pod rząd. Jak
widzimy w pętli jest warunek, który jest spełniony dosyć chaotycznie i wtedy
zmieniamy współczynniki. A zdaje się, że powyższa operacja miałaby sens tylko dla
wielu mnożeń pod rząd?
Następne wpisy z tego wątku
- 31.12.20 22:50 o...@g...com
Najnowsze wątki z tej grupy
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
- Ada-Europe Conference - 6 March Extended Final Deadline
Najnowsze wątki
- 2024-04-20 debili nie sieją
- 2024-04-20 Falownik jednofazowy a żarówka
- 2024-04-20 Agregat i "legalność" instalacji
- 2024-04-19 nakupcie sobie Borygo
- 2024-04-19 Lejek + zdalne zarządzanie, coś jak telemetria, jaka oferta.
- 2024-04-19 Warszawa => Senior Account Manager <=
- 2024-04-19 Katowice => Technical Leader (Java Background) <=
- 2024-04-19 Wrocław => Dyrektor Sprzedaży (branża usług/produktów IT) <=
- 2024-04-19 Białystok => Full Stack web developer (obszar .Net Core, Angular6+) <
- 2024-04-19 Samochód w ogniu
- 2024-04-19 Warszawa => Inżynier DevOps (projekt JP) <=
- 2024-04-19 Gdańsk => Spedytor Międzynarodowy <=
- 2024-04-19 Kraków => Java Developer <=
- 2024-04-19 Wrocław => Lider Serwisu/Programista PLC z językiem niemieckim <=
- 2024-04-19 uczcie się Anglicy