Discussion:
Jak zrobić testy Dieharda?
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
osobliwy nick
2020-09-01 21:54:26 UTC
Permalink
Czy ktoś z Was robił takie testy? Czy są gotowe programy do takich testów, w których wystarczy wskazać tylko plik do testów?

Ściągnąłem coś z tej strony:

https://webhome.phy.duke.edu/~rgb/General/dieharder.php

Ale po rozpakowaniu większość to pliki C, nie ma żadnego programu instalacyjnego. Nie wiem co mam z tym zrobić.
Borneq
2020-09-02 09:13:48 UTC
Permalink
Post by osobliwy nick
Czy ktoś z Was robił takie testy? Czy są gotowe programy do takich testów, w których wystarczy wskazać tylko plik do testów?
https://webhome.phy.duke.edu/~rgb/General/dieharder.php
Ale po rozpakowaniu większość to pliki C, nie ma żadnego programu instalacyjnego. Nie wiem co mam z tym zrobić.
Ściągam ostatni dieharder/dieharder.tgz
W pliku INSTALL:

./autogen.sh
make

przed make: sudo apt-get install libgsl-dev
jak pojawi sie "definition of this LT_INIT comes from libtool 2.4.6."
https://stackoverflow.com/questions/3096989/libtool-version-mismatch-error

autoreconf --force --install
./configure
make

pojawilo sie
In file included from ../include/dieharder/libdieharder.h:22,
from bits.c:7:
/usr/include/unistd.h:1041:20: error: unknown type name ‘intptr_t’

na poczatku dieharder-3.31.1/include/dieharder/libdieharder.h
wstawiam #include <stdint.h>


kompiluje sie i jestesmy w domu, powstał
dieharder-3.31.1/dieharder/.libs/dieharder

robimy sudo make install
i używamy dieharder z globalnej ściezki

prawie: nie ma libdieharder.so.3: cannot open shared object file: No
such file or directory
sudo apt install libdieharder-dev

ze strony https://webhome.phy.duke.edu/~rgb/General/dieharder.php
przechodzimy do sekcji "Essential Usage Synopsis"
wszystkie dieharder -a mogą długo potrwac
dieharderr -h pokaże opcje

Pozdrawiam
Borneq
2020-09-02 09:19:05 UTC
Permalink
Post by Borneq
wszystkie dieharder -a mogą długo potrwac
dieharderr -h pokaże opcje
$ dieharder -d 1
#=============================================================================#
# dieharder version 3.31.1 Copyright 2003 Robert G. Brown
#
#=============================================================================#
rng_name |rands/second| Seed |
mt19937| 8.75e+07 |1105683813|
#=============================================================================#
test_name |ntup| tsamples |psamples| p-value |Assessment
#=============================================================================#
diehard_operm5| 0| 1000000| 100|0.89950655| PASSED
Borneq
2020-09-02 09:54:31 UTC
Permalink
Post by Borneq
wszystkie dieharder -a mogą długo potrwac
$ dieharder -a
#=============================================================================#
# dieharder version 3.31.1 Copyright 2003 Robert G. Brown
#
#=============================================================================#
rng_name |rands/second| Seed |
mt19937| 7.95e+07 | 180213201|
#=============================================================================#
test_name |ntup| tsamples |psamples| p-value |Assessment
#=============================================================================#
diehard_birthdays| 0| 100| 100|0.84687246| PASSED
diehard_operm5| 0| 1000000| 100|0.51991576| PASSED
diehard_rank_32x32| 0| 40000| 100|0.24130215| PASSED
diehard_rank_6x8| 0| 100000| 100|0.75523843| PASSED
diehard_bitstream| 0| 2097152| 100|0.99059625| PASSED
diehard_opso| 0| 2097152| 100|0.96431216| PASSED
diehard_oqso| 0| 2097152| 100|0.03265656| PASSED
diehard_dna| 0| 2097152| 100|0.23770160| PASSED
diehard_count_1s_str| 0| 256000| 100|0.96937100| PASSED
diehard_count_1s_byt| 0| 256000| 100|0.76450468| PASSED
diehard_parking_lot| 0| 12000| 100|0.73524349| PASSED
diehard_2dsphere| 2| 8000| 100|0.38683522| PASSED
diehard_3dsphere| 3| 4000| 100|0.93018927| PASSED
diehard_squeeze| 0| 100000| 100|0.72752828| PASSED
diehard_sums| 0| 100| 100|0.02471146| PASSED
diehard_runs| 0| 100000| 100|0.58803264| PASSED
diehard_runs| 0| 100000| 100|0.89986860| PASSED
diehard_craps| 0| 200000| 100|0.22302266| PASSED
diehard_craps| 0| 200000| 100|0.88339810| PASSED
marsaglia_tsang_gcd| 0| 10000000| 100|0.46479882| PASSED
marsaglia_tsang_gcd| 0| 10000000| 100|0.56025422| PASSED
sts_monobit| 1| 100000| 100|0.67782743| PASSED
sts_runs| 2| 100000| 100|0.98512218| PASSED
sts_serial| 1| 100000| 100|0.50716178| PASSED
sts_serial| 2| 100000| 100|0.23758642| PASSED
sts_serial| 3| 100000| 100|0.23305495| PASSED
sts_serial| 3| 100000| 100|0.20950042| PASSED
sts_serial| 4| 100000| 100|0.45248503| PASSED
sts_serial| 4| 100000| 100|0.74910929| PASSED
sts_serial| 5| 100000| 100|0.92924573| PASSED
sts_serial| 5| 100000| 100|0.25901865| PASSED
sts_serial| 6| 100000| 100|0.30613995| PASSED
sts_serial| 6| 100000| 100|0.40644913| PASSED
sts_serial| 7| 100000| 100|0.69750248| PASSED
sts_serial| 7| 100000| 100|0.64691167| PASSED
sts_serial| 8| 100000| 100|0.88405956| PASSED
sts_serial| 8| 100000| 100|0.21643278| PASSED
sts_serial| 9| 100000| 100|0.19488635| PASSED
sts_serial| 9| 100000| 100|0.03539159| PASSED
sts_serial| 10| 100000| 100|0.10807760| PASSED
sts_serial| 10| 100000| 100|0.65720664| PASSED
sts_serial| 11| 100000| 100|0.89496203| PASSED
sts_serial| 11| 100000| 100|0.90264021| PASSED
sts_serial| 12| 100000| 100|0.96024947| PASSED
sts_serial| 12| 100000| 100|0.86003901| PASSED
sts_serial| 13| 100000| 100|0.65769436| PASSED
sts_serial| 13| 100000| 100|0.11378937| PASSED
sts_serial| 14| 100000| 100|0.02973906| PASSED
sts_serial| 14| 100000| 100|0.01250449| PASSED
sts_serial| 15| 100000| 100|0.03037617| PASSED
sts_serial| 15| 100000| 100|0.98018220| PASSED
sts_serial| 16| 100000| 100|0.19496357| PASSED
sts_serial| 16| 100000| 100|0.09226460| PASSED
rgb_bitdist| 1| 100000| 100|0.29355607| PASSED
rgb_bitdist| 2| 100000| 100|0.03088435| PASSED
rgb_bitdist| 3| 100000| 100|0.30425070| PASSED
rgb_bitdist| 4| 100000| 100|0.41914518| PASSED
rgb_bitdist| 5| 100000| 100|0.15271867| PASSED
rgb_bitdist| 6| 100000| 100|0.90297260| PASSED
rgb_bitdist| 7| 100000| 100|0.27091427| PASSED
rgb_bitdist| 8| 100000| 100|0.74467091| PASSED
rgb_bitdist| 9| 100000| 100|0.90753481| PASSED
rgb_bitdist| 10| 100000| 100|0.73385424| PASSED
rgb_bitdist| 11| 100000| 100|0.93726895| PASSED
rgb_bitdist| 12| 100000| 100|0.49974426| PASSED
rgb_minimum_distance| 2| 10000| 1000|0.39620050| PASSED
rgb_minimum_distance| 3| 10000| 1000|0.38459394| PASSED
rgb_minimum_distance| 4| 10000| 1000|0.19588753| PASSED
rgb_minimum_distance| 5| 10000| 1000|0.21303606| PASSED
rgb_permutations| 2| 100000| 100|0.07502524| PASSED
rgb_permutations| 3| 100000| 100|0.46995382| PASSED
rgb_permutations| 4| 100000| 100|0.82927262| PASSED
rgb_permutations| 5| 100000| 100|0.37852571| PASSED
rgb_lagged_sum| 0| 1000000| 100|0.80038898| PASSED
rgb_lagged_sum| 1| 1000000| 100|0.16074820| PASSED
rgb_lagged_sum| 2| 1000000| 100|0.25812656| PASSED
rgb_lagged_sum| 3| 1000000| 100|0.80595752| PASSED
rgb_lagged_sum| 4| 1000000| 100|0.88306749| PASSED
rgb_lagged_sum| 5| 1000000| 100|0.32974677| PASSED
rgb_lagged_sum| 6| 1000000| 100|0.75671743| PASSED
rgb_lagged_sum| 7| 1000000| 100|0.89115104| PASSED
rgb_lagged_sum| 8| 1000000| 100|0.75850602| PASSED
rgb_lagged_sum| 9| 1000000| 100|0.96080241| PASSED
rgb_lagged_sum| 10| 1000000| 100|0.89884166| PASSED
rgb_lagged_sum| 11| 1000000| 100|0.97783380| PASSED
rgb_lagged_sum| 12| 1000000| 100|0.95870777| PASSED
rgb_lagged_sum| 13| 1000000| 100|0.31929971| PASSED
rgb_lagged_sum| 14| 1000000| 100|0.53179404| PASSED
rgb_lagged_sum| 15| 1000000| 100|0.94341023| PASSED
rgb_lagged_sum| 16| 1000000| 100|0.28207875| PASSED
rgb_lagged_sum| 17| 1000000| 100|0.99761305| WEAK
rgb_lagged_sum| 18| 1000000| 100|0.88533049| PASSED
rgb_lagged_sum| 19| 1000000| 100|0.97701878| PASSED
rgb_lagged_sum| 20| 1000000| 100|0.64051051| PASSED
rgb_lagged_sum| 21| 1000000| 100|0.82794161| PASSED
rgb_lagged_sum| 22| 1000000| 100|0.52405877| PASSED
rgb_lagged_sum| 23| 1000000| 100|0.31984920| PASSED
rgb_lagged_sum| 24| 1000000| 100|0.11231928| PASSED
rgb_lagged_sum| 25| 1000000| 100|0.27592093| PASSED
rgb_lagged_sum| 26| 1000000| 100|0.41115006| PASSED
rgb_lagged_sum| 27| 1000000| 100|0.94240952| PASSED
rgb_lagged_sum| 28| 1000000| 100|0.23179700| PASSED
rgb_lagged_sum| 29| 1000000| 100|0.23331936| PASSED
rgb_lagged_sum| 30| 1000000| 100|0.17267027| PASSED
rgb_lagged_sum| 31| 1000000| 100|0.29779959| PASSED
rgb_lagged_sum| 32| 1000000| 100|0.37232850| PASSED
rgb_kstest_test| 0| 10000| 1000|0.99740964| WEAK
dab_bytedistrib| 0| 51200000| 1|0.34191310| PASSED
dab_dct| 256| 50000| 1|0.35180202| PASSED
Preparing to run test 207. ntuple = 0
dab_filltree| 32| 15000000| 1|0.31759130| PASSED
dab_filltree| 32| 15000000| 1|0.05072436| PASSED
Preparing to run test 208. ntuple = 0
dab_filltree2| 0| 5000000| 1|0.86775354| PASSED
dab_filltree2| 1| 5000000| 1|0.70139120| PASSED
Preparing to run test 209. ntuple = 0
dab_monobit2| 12| 65000000| 1|0.93612009| PASSED
osobliwy nick
2020-09-04 11:10:34 UTC
Permalink
Post by Borneq
przed make: sudo apt-get install libgsl-dev
Mam komunikat:

'sudo' is not recognized as an internal or external command,
operable program or batch file.
Borneq
2020-09-04 11:43:53 UTC
Permalink
Post by osobliwy nick
Post by Borneq
przed make: sudo apt-get install libgsl-dev
'sudo' is not recognized as an internal or external command,
operable program or batch file.
co masz za Linuxa? sudo to podstawowa komenda
osobliwy nick
2020-09-04 11:46:11 UTC
Permalink
Post by Borneq
Post by osobliwy nick
Post by Borneq
przed make: sudo apt-get install libgsl-dev
'sudo' is not recognized as an internal or external command,
operable program or batch file.
co masz za Linuxa? sudo to podstawowa komenda
Mam Windowsa...
Borneq
2020-09-04 12:05:56 UTC
Permalink
Post by osobliwy nick
Mam Windowsa...
Na WIndows to bardziej skomplikowane, takie rzeczy jak autogen, cmake
Najlepiej postawić Minta 20 Cinnamona na VirtualBoxie, na nowszych
komputerach VirtualBox może wymagać hasła
CZy używałeś VirtualBoxa?
osobliwy nick
2020-09-04 12:50:15 UTC
Permalink
Post by Borneq
Post by osobliwy nick
Mam Windowsa...
Na WIndows to bardziej skomplikowane, takie rzeczy jak autogen, cmake
Najlepiej postawić Minta 20 Cinnamona na VirtualBoxie, na nowszych
komputerach VirtualBox może wymagać hasła
CZy używałeś VirtualBoxa?
Nie używałem.
g***@gmail.com
2020-09-04 15:00:44 UTC
Permalink
Post by osobliwy nick
Post by Borneq
Post by osobliwy nick
Mam Windowsa...
Na WIndows to bardziej skomplikowane, takie rzeczy jak autogen, cmake
Najlepiej postawić Minta 20 Cinnamona na VirtualBoxie, na nowszych
komputerach VirtualBox może wymagać hasła
CZy używałeś VirtualBoxa?
Nie używałem.
Na Windowsie możesz też zainstalować MSYS2

https://www.msys2.org/

albo Cygwin

https://www.cygwin.com/

Jeśli masz Windows 10 to możesz też skorzystać z "Windows Subsystem for Linux"

https://docs.microsoft.com/en-us/windows/wsl/install-win10
bartekltg
2020-09-05 23:38:50 UTC
Permalink
Ten wpis może być nieodpowiedni. Kliknij, aby go wyświetlić.
osobliwy nick
2020-09-04 15:54:39 UTC
Permalink
Ściągnąłem Cygwina i:

$ sudo apt-get install libgsl-dev
-bash: sudo: nie znaleziono polecenia
Borneq
2020-09-04 19:20:39 UTC
Permalink
Post by osobliwy nick
$ sudo apt-get install libgsl-dev
-bash: sudo: nie znaleziono polecenia
jak używałem kiedyś msys2, to
- nie trzeba tam sudo, można pominąć
inna sprawa, zamiast apt-get jest tam inny instalator paczek, nie wiem
jak w Cygwin , spróbuj

apt-get install libgsl-dev
jak by nie znajdował apt-get , to trzeba coś innego zamiast tego
https://stackoverflow.com/questions/29801718/apt-get-not-working-in-cygwin/29801876


spróbuj
apt-cyg install libgsl-dev
osobliwy nick
2020-09-05 17:05:34 UTC
Permalink
W msys2 też nie działa. Muszę w takim razie skombinować komputer z Linuxem. W Internecie niewiele jest nt. tego jak rozwiązać podobny problem.

A może znacie testy podobnej klasy, a nawet lepsze, które mogę zrobić na windowsie?
Queequeg
2020-09-05 22:00:29 UTC
Permalink
Post by osobliwy nick
W msys2 też nie działa. Muszę w takim razie skombinować komputer z
Linuxem.
W dzisiejszych czasach jedyne co musisz to ściągnąć VirtualBox
i zainstalować sobie w nim dowolnego Linuksa (jak chcesz mieć
apt-get, to jakiegoś Debiana albo Ubuntu).
--
Wpada zajączek do sklepu i mówi poproszę pól kilo szynki.
Sprzedawca zwarzył, zapakował i dal zajączkowi.
Zajączek na to wyjmuje pistolet i strzela "pif, paf"
Sprzedawca poda zabity a zajączek na to " TO ZA PROSIACZKA!!!!!"
heby
2020-09-05 22:31:33 UTC
Permalink
Post by Queequeg
Post by osobliwy nick
W msys2 też nie działa. Muszę w takim razie skombinować komputer z
Linuxem.
W dzisiejszych czasach jedyne co musisz to ściągnąć VirtualBox
i zainstalować sobie w nim dowolnego Linuksa (jak chcesz mieć
apt-get, to jakiegoś Debiana albo Ubuntu).
W dzisiejszych czasach nawet tego nie trzeba na Windowsie. Sugeruje:
Windows Subsystem for Linux
osobliwy nick
2020-09-05 23:05:35 UTC
Permalink
Post by g***@gmail.com
Post by Queequeg
Post by osobliwy nick
W msys2 też nie działa. Muszę w takim razie skombinować komputer z
Linuxem.
W dzisiejszych czasach jedyne co musisz to ściągnąć VirtualBox
i zainstalować sobie w nim dowolnego Linuksa (jak chcesz mieć
apt-get, to jakiegoś Debiana albo Ubuntu).
Windows Subsystem for Linux
Ok, mam to. Zainstalowałem apkę Ubuntu. Tyle, że teraz mam problem:

"The Windows Subsystem for Linux optional component is not enabled. Please enable it and try again.
See https://aka.ms/wslinstall for details."

A na stronie piszą, że - Before installing any Linux distributions on Windows, you must enable the "Windows Subsystem for Linux" optional feature. Open PowerShell as Administrator and run: "dism.exe/online/enable-feature/featurename:Microsoft-Windows-Subsystem-Linux/all/norestart"

Komenda oczywiście nie działa, jak większość rzeczy w tych ich poradnikach:

dism.exe/online/enable-feature/featurename:Microsoft-Windows-Subsystem-Linux/all/norestart : The term 'dism.exe/online/
enable-feature/featurename:Microsoft-Windows-Subsystem-Linux/all/norestart' is not recognized as the name of a cmdlet,
function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the
path is correct and try again.
At line:1 char:1
+ dism.exe/online/enable-feature/featurename:Microsoft-Windows-Subsyste ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (dism.exe/online...x/all/norestart:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException

Nie mam pojęcia co robi ta komenda, ani jak to naprawić.
bartekltg
2020-09-05 23:43:52 UTC
Permalink
Post by osobliwy nick
Nie mam pojęcia co robi ta komenda, ani jak to naprawić.
W poprzednim poście wrzuciłęm jakaś instrukje instalacji.
Ogolnie, wpisuejsz The Windows Subsystem for Linux tutorial w google i patrzysz, co wyglada
rozsadnie i nie ejst za stare (chcesz WSL2).

Mozesz taż wpisać komunikat błędu w google:-)
https://docs.microsoft.com/en-us/windows/wsl/install-win10
https://askubuntu.com/questions/966184/the-wsl-optional-component-is-not-enabled-please-enable-it-and-try-again


pzdr
bartekltg
osobliwy nick
2020-09-05 22:34:56 UTC
Permalink
Post by Queequeg
Post by osobliwy nick
W msys2 też nie działa. Muszę w takim razie skombinować komputer z
Linuxem.
W dzisiejszych czasach jedyne co musisz to ściągnąć VirtualBox
i zainstalować sobie w nim dowolnego Linuksa (jak chcesz mieć
apt-get, to jakiegoś Debiana albo Ubuntu).
Ok, mam VirtualBoxa. Tylko chce mieć system z dysku E. I nie ma innej opcji. Czas zacząć poszukiwania płyty z Linuksem...
Queequeg
2020-09-07 11:24:10 UTC
Permalink
Post by osobliwy nick
Ok, mam VirtualBoxa. Tylko chce mieć system z dysku E. I nie ma innej
opcji. Czas zacząć poszukiwania płyty z Linuksem...
System z dysku E, to znaczy co dokładnie chcesz osiągnąć? Mieć pliki
VirtualBoxa na dysku E?
--
W trakcie egzaminu jeden ze studentow poprosil o otwarcie okna
(upal). Profesor stwiedzil:
- "Okno mozna otwozyc, orlow tu nie ma, nie wyfruna" (wlasnie zlapal
kilku na sciaganiu).
Po egzaminie, gdy juz wszyscy wychodzili, ten sam student spytal:
- "Ooo!?, pan Profesor tez drzwiami?"
osobliwy nick
2020-09-06 21:20:03 UTC
Permalink
Chyba działa mi już to Ubuntu. Ale jestem w katalogu home/tomasz. W home mam:

bin dev home lib lib64 media opt root sbin srv tmp var
boot etc init lib32 libx32 mnt proc run snap sys usr

Gdzie jest dysk C?
Borneq
2020-09-06 21:54:59 UTC
Permalink
Post by osobliwy nick
bin dev home lib lib64 media opt root sbin srv tmp var
boot etc init lib32 libx32 mnt proc run snap sys usr
Gdzie jest dysk C?
Nie ma w zasadzie podziałów na dyski (chyba że chodzi o montowanie, ale
o tym na tym etapie nie mówmy)
Jest katalog głowny /
ma podkatalog /home z katalogami uzytwokników
w katalogu użytkownika, który pokazujesz powyżej będziesz miał
najczęściej do czynienia, są prawa zapisu tutaj, nie potrzeba sudo do
działania na tych plikach/
mozna działać tutaj,
albo utworzyc katalog np test czy diehard za pomocą mkdir
albo gdy jest śtodowisko graficzne to za pomocą exploratora czy
zainstalowanego np. DoubleCommandera
mozna zrobić katalog testdieh i przejśc od nego
mkdir testdieh
cd testdieh
heby
2020-09-07 06:22:10 UTC
Permalink
Post by osobliwy nick
bin dev home lib lib64 media opt root sbin srv tmp var
boot etc init lib32 libx32 mnt proc run snap sys usr
Gdzie jest dysk C?
To maszyna wirtualna? Najpierw musisz w maszynie ustawić przekierowanie
katalogów hosta do maszyny. W linuxie pojawią się w /media albo /mnt.
osobliwy nick
2020-09-07 12:05:55 UTC
Permalink
Znalazłem dysk C. Po wpisaniu apt-get install libgsl-dev mam:

E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?

A po wpisaniu sudo apt-get install libgsl-dev

Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libgsl-dev
Borneq
2020-09-07 12:08:29 UTC
Permalink
Post by osobliwy nick
E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?
A po wpisaniu sudo apt-get install libgsl-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libgsl-dev
a co wypisuje
aptitude search gsl-dev
lub
aptitude search gsl
?
heby
2020-09-07 14:05:13 UTC
Permalink
Post by osobliwy nick
E: Unable to locate package libgsl-dev
Najpierw:

sudo apt-get update

Potem reszta. Wszystkie apt-get muszą iśc przez sudo, zwykły user nie ma
dostępu do instalacji pakietów systemowych.
osobliwy nick
2020-09-07 18:31:07 UTC
Permalink
aptitude search gsl-dev - najpierw musiałem zainstalować "aptitude" i teraz komenda wypisała:

p libghc-hmatrix-gsl-dev - numerical computation
v libghc-hmatrix-gsl-dev-0.19.0.1-7c8 -
p libgsl-dev - GNU Scientific Library (GSL) -- development p
p libmsgsl-dev - Microsoft Guidelines Support Library
Post by heby
sudo apt-get update
Potem reszta. Wszystkie apt-get muszą iśc przez sudo, zwykły user nie ma
dostępu do instalacji pakietów systemowych.
sudo apt-get update się udało. Teraz zrobiłem sudo apt install libgsl-dev. Udało się, chyba:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libgsl23 libgslcblas0
Suggested packages:
gsl-ref-psdoc | gsl-doc-pdf | gsl-doc-info | gsl-ref-html
The following NEW packages will be installed:
libgsl-dev libgsl23 libgslcblas0
0 upgraded, 3 newly installed, 0 to remove and 46 not upgraded.
Need to get 1998 kB of archives.
After this operation, 9931 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://archive.ubuntu.com/ubuntu focal/universe amd64 libgslcblas0 amd64 2.5+dfsg-6build1 [84.6 kB]
Get:2 http://archive.ubuntu.com/ubuntu focal/universe amd64 libgsl23 amd64 2.5+dfsg-6build1 [850 kB]
Get:3 http://archive.ubuntu.com/ubuntu focal/universe amd64 libgsl-dev amd64 2.5+dfsg-6build1 [1064 kB]
Fetched 1998 kB in 2s (948 kB/s)
Selecting previously unselected package libgslcblas0:amd64.
(Reading database ... 32686 files and directories currently installed.)
Preparing to unpack .../libgslcblas0_2.5+dfsg-6build1_amd64.deb ...
Unpacking libgslcblas0:amd64 (2.5+dfsg-6build1) ...
Selecting previously unselected package libgsl23:amd64.
Preparing to unpack .../libgsl23_2.5+dfsg-6build1_amd64.deb ...
Unpacking libgsl23:amd64 (2.5+dfsg-6build1) ...
Selecting previously unselected package libgsl-dev.
Preparing to unpack .../libgsl-dev_2.5+dfsg-6build1_amd64.deb ...
Unpacking libgsl-dev (2.5+dfsg-6build1) ...
Setting up libgslcblas0:amd64 (2.5+dfsg-6build1) ...
Setting up libgsl23:amd64 (2.5+dfsg-6build1) ...
Setting up libgsl-dev (2.5+dfsg-6build1) ...
Processing triggers for man-db (2.9.1-1) ...
Processing triggers for libc-bin (2.31-0ubuntu9) ...

I teraz "autoreconf --force --install", jeśli dokładnie tak miałem wpisać, daje:

configure.ac:89: error: possibly undefined macro: AC_PROG_LIBTOOL
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1
Borneq
2020-09-07 20:11:31 UTC
Permalink
Post by osobliwy nick
configure.ac:89: error: possibly undefined macro: AC_PROG_LIBTOOL
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1
Google mówi że prawdopodobnie libtool nie zainstalowany
sudo apt-get install libtool
osobliwy nick
2020-09-07 22:31:44 UTC
Permalink
Post by Borneq
Post by osobliwy nick
configure.ac:89: error: possibly undefined macro: AC_PROG_LIBTOOL
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
autoreconf: /usr/bin/autoconf failed with exit status: 1
Google mówi że prawdopodobnie libtool nie zainstalowany
sudo apt-get install libtool
Udało się. Ale ./autogen.sh zakończył się:

config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: error: in `/mnt/c/Users/omnia/Desktop/Diehard':
config.status: error: Something went wrong bootstrapping makefile fragments
for automatic dependency tracking. Try re-running configure with the
'--disable-dependency-tracking' option to at least be able to build
the package (albeit without support for automatic dependency tracking).
See `config.log' for more details
==================================================================

Makefile should be built, and ./configure --prefix=/usr should be
completed. You may rerun configure with a different e.g.
--prefix if you want to put dieharder someplace else. Otherwise
you should be able to make, make install, or make rpm.

==================================================================

Nie wiem, czy ten błąd ma znaczenie. "make" zwrócił jakieś 2 błędy:

(cd libdieharder; \
make)
make[1]: Entering directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
source='bits.c' object='libdieharder_la-bits.lo' libtool=yes \
DEPDIR=.deps depmode=none /bin/bash ../depcomp \
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DVERSION=3.31.1 -DLITTLE_ENDIAN=1 -I ../include -I /usr/include -std=c99 -Wall -pedantic -g -O2 -c -o libdieharder_la-bits.lo `test -f 'bits.c' || echo './'`bits.c
/bin/bash: ../libtool: No such file or directory
make[1]: *** [Makefile:766: libdieharder_la-bits.lo] Error 127
make[1]: Leaving directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
make: *** [Makefile:948: libwulf.time] Error 2

Poźniej po ./configure i make:

(cd libdieharder; \
make)
make[1]: Entering directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DVERSION=3.31.1 -DLITTLE_ENDIAN=1 -I ../include -I /usr/local/include -std=c99 -Wall -pedantic -g -O2 -MT libdieharder_la-bits.lo -MD -MP -MF .deps/libdieharder_la-bits.Tpo -c -o libdieharder_la-bits.lo `test -f 'bits.c' || echo './'`bits.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DVERSION=3.31.1 -DLITTLE_ENDIAN=1 -I ../include -I /usr/local/include -std=c99 -Wall -pedantic -g -O2 -MT libdieharder_la-bits.lo -MD -MP -MF .deps/libdieharder_la-bits.Tpo -c bits.c -fPIC -DPIC -o .libs/libdieharder_la-bits.o
In file included from ../include/dieharder/libdieharder.h:22,
from bits.c:7:
/usr/include/unistd.h:1041:20: error: unknown type name ‘intptr_t’
1041 | extern void *sbrk (intptr_t __delta) __THROW;
| ^~~~~~~~
bits.c: In function ‘fill_uint_buffer’:
bits.c:407:15: warning: variable ‘bufbits’ set but not used [-Wunused-but-set-variable]
407 | unsigned int bufbits,bdelta;
| ^~~~~~~
make[1]: *** [Makefile:764: libdieharder_la-bits.lo] Error 1
make[1]: Leaving directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
make: *** [Makefile:948: libwulf.time] Error 2

Znowu błędy.
Post by Borneq
kompiluje sie i jestesmy w domu, powstał
dieharder-3.31.1/dieharder/.libs/dieharder
Jak mam to skompilować?
Queequeg
2020-09-08 10:16:48 UTC
Permalink
Z doświadczenia -- odpalanie takich skryptów na podmontowanych dyskach
nie-linuksowych to proszenie się o różne dziwne kłopoty.
Post by osobliwy nick
See `config.log' for more details
No to pokaż ten config.log.
--
"Ostatnio byłem u wróżki, by przepowiedziała mi przyszłość. Kiedy
spojrzała w szklaną kulę nagle zbladła i wybiegła z namiotu, biegnąc ile
miała sił w nogach. Wk... się, wziąłem kulę, dogoniłem szmatę i ją
zatłukłem. Zastanawiam się tylko, co zobaczyła w tej kuli."
osobliwy nick
2020-09-07 23:52:14 UTC
Permalink
Ostatecznie dieharder -h wypisał opcje:

#=============================================================================#
# dieharder version 3.31.1 Copyright 2003 Robert G. Brown #
#=============================================================================#

Usage:

dieharder [-a] [-d dieharder test number] [-f filename] [-B]
[-D output flag [-D output flag] ... ] [-F] [-c separator]
[-g generator number or -1] [-h] [-k ks_flag] [-l]
[-L overlap] [-m multiply_p] [-n ntuple]
[-p number of p samples] [-P Xoff]
[-o filename] [-s seed strategy] [-S random number seed]
[-n ntuple] [-p number of p samples] [-o filename]
[-s seed strategy] [-S random number seed]
[-t number of test samples] [-v verbose flag]
[-W weak] [-X fail] [-Y Xtrategy]
[-x xvalue] [-y yvalue] [-z zvalue]

-a - runs all the tests with standard/default options to create a report
-d test number - selects specific diehard test.
-f filename - generators 201 or 202 permit either raw binary or
formatted ASCII numbers to be read in from a file for testing.
generator 200 reads in raw binary numbers from stdin.
Note well: many tests with default parameters require a lot of rands!
To see a sample of the (required) header for ASCII formatted input, run

dieharder -o -f example.input -t 10

and then examine the contents of example.input.
Raw binary input reads 32 bit increments of the specified data stream.
stdin_input_raw accepts a pipe from a raw binary stream.
-B binary output (used with -o)
-D output flag - permits fields to be selected for inclusion in dieharder
output. Each flag can be entered as a binary number that turns
on a specific output field or header or by flag name; flags are
aggregated. To see all currently known flags use the -F command.
-F - lists all known flags by name and number.
-c table separator - where separator is e.g. ',' (CSV) or ' ' (whitespace).
-g generator number - selects a specific generator for testing. Using
-1 causes all known generators to be printed out to the display.
-h prints context-sensitive help -- usually Usage (this message) or a
test synopsis if entered as e.g. dieharder -D 3 -h.
-k ks_flag - ks_flag

0 is fast but slightly sloppy for psamples > 4999 (default).

1 is MUCH slower but more accurate for larger numbers of psamples.

2 is very slow and accurate to machine precision.

3 is kuiper ks, fast, quite inaccurate for small samples, deprecated.

-l list all known tests.
-L overlap

1 (use overlap, default)

0 (don't use overlap)

in operm5 or other tests that support overlapping and non-overlapping
sample modes.
-m multiply_p - multiply default # of psamples in -a(ll) runs to crank
up the resolution of failure.
-n ntuple - set ntuple length for tests on short bit strings that permit
the length to be varied (e.g. rgb bitdist).
-o filename - output -t count random numbers from current generator to file.
-p count - sets the number of p-value samples per test (default 100).
-P Xoff - sets the number of psamples that will cumulate before deciding
that a generator is 'good' and really, truly passes even a -Y 2 T2D run.
Currently the default is 100000; eventually it will be set from
AES-derived T2D test failure thresholds for fully automated reliable
operation, but for now it is more a 'boredom' threshold set by how long
one might reasonably want to wait on any given test run.
-S seed - where seed is a uint. Overrides the default random seed
selection. Ignored for file or stdin input.
-s strategy - if strategy is the (default) 0, dieharder reseeds (or
rewinds) once at the beginning when the random number generator is
selected and then never again. If strategy is nonzero, the generator
is reseeded or rewound at the beginning of EACH TEST. If -S seed was
specified, or a file is used, this means every test is applied to the
same sequence (which is useful for validation and testing of dieharder,
but not a good way to test rngs). Otherwise a new random seed is
selected for each test.
-t count - sets the number of random entities used in each test, where
possible. Be warned -- some tests will take a long time with the
default value of 10000. Read the test synopses for suggested settings
for -t or use -a first. Many tests will ignore -t as they require
a very specific number of samples to be used in generating their
statistic.
-W weak - sets the 'weak' threshold to make the test(s) more or less
forgiving during e.g. a test-to-destruction run. Default is currently
0.005.
-X fail - sets the 'fail' threshold to make the test(s) more or less
forgiving during e.g. a test-to-destruction run. Default is currently
0.000001, which is basically 'certain failure of the null hypothesis',
the desired mode of reproducible generator failure.
-Y Xtrategy - the Xtrategy flag controls the new 'test to failure' (T2F)
modes. These flags and their modes act as follows:

0 - just run dieharder with the specified number of tsamples and
psamples, do not dynamically modify a run based on results. This is
the way it has always run, and is still the default.

1 - 'resolve ambiguity' (RA) mode. If a test returns 'weak', this is
an undesired result. What does that mean, after all? If you run a long
test series, you will see occasional weak returns for a perfect
generators because p is uniformly distributed and will appear in any
finite interval from time to time. Even if a test run returns more than
one weak result, you cannot be certain that the generator is failing.
RA mode adds psamples (usually in blocks of 100) until the
test result ends up solidly not weak or proceeds to unambiguous failure.
This is morally equivalent to running the test several times to see if a
weak result is reproducible, but eliminates the bias of personal
judgement in the process since the default failure threshold is very
small and very unlikely to be reached by random chance even in many
runs.

This option should only be used with -k 2.

2 - 'test to destruction' (T2D) mode. Sometimes you just want to know
where or if a generator will .I ever fail a test (or test series). -Y 2
causes psamples to be added 100 at a time until a test returns an
overall pvalue lower than the failure threshold or a specified maximum
number of psamples (see -P) is reached.

Note well! In this mode one may well fail due to the alternate
null hypothesis -- the test itself is a bad test and fails! Many
dieharder tests, despite our best efforts, are numerically unstable or
have only approximately known target statistics or are straight up
asymptotic results, and will eventually return a failing result even for
a gold-standard generator (such as AES), or for the hypercautious the
XOR generator with AES, threefish, kiss, all loaded at once and xor'd
together. It is therefore safest to use this mode comparatively,
executing a T2D run on AES to get an idea of the test failure
threshold(s) (something I will eventually do and publish on the web so
everybody doesn't have to do it independently) and then running it on
your target generator. Failure with numbers of psamples within an order
of magnitude of the AES thresholds should probably be considered
possible test failures, not generator failures. Failures at levels
significantly less than the known gold standard generator failure
thresholds are, of course, probably failures of the generator.

This option should only be used with -k 2.

-v verbose flag -- controls the verbosity of the output for debugging
only. Probably of little use to non-developers, and developers can
read the enum(s) in dieharder.h and the test sources to see which
flag values turn on output on which routines. 1 is 'all' and will
result in a highly detailed trace of program activity.

-x,-y,-z number - Some tests have parameters that can safely be varied
from their default value. For example, in the diehard birthdays test,
one can vary the number of 'dates' drawn from the 'year' of some
length, which can also be varied. -x 2048 -y 30 alters these two values
but should still run fine. These parameters should be documented
internally (where they exist) in the e.g. -d 0 -h visible notes.

NOTE WELL: The assessment(s) for the rngs may, in fact, be completely
incorrect or misleading. In particular, 'Weak' pvalues should occur
one test in a hundred, and 'Failed' pvalues should occur one test in
a thousand -- that's what p MEANS. Use them at your Own Risk! Be Warned!

Nie wiem, czy wszystko się zrobiło tak jak trzeba.
osobliwy nick
2020-09-08 00:00:09 UTC
Permalink
Zrobiłem chyba jakiś test dla "dieharder -d 1 -f nieistnieje.exe" pliku, który nie istnieje. Zdany:

#=============================================================================#
# dieharder version 3.31.1 Copyright 2003 Robert G. Brown #
#=============================================================================#
rng_name | filename |rands/second|
mt19937| nieistnieje.exe| 5.09e+07 |
#=============================================================================#
test_name |ntup| tsamples |psamples| p-value |Assessment
#=============================================================================#
diehard_operm5| 0| 1000000| 100|0.95079970| PASSED

Nie wiem jak to możl
osobliwy nick
2020-09-08 15:00:37 UTC
Permalink
Powtórzenie ./autogen.sh nie zwróciło żadnego błędu:

configure: creating ./config.status
config.status: creating dieharder_version.h
config.status: creating dieharder.spec
config.status: creating dieharder.html
config.status: creating dieharder-config
config.status: creating dieharder/Makefile
config.status: creating include/Makefile
config.status: creating libdieharder/Makefile
config.status: creating manual/Makefile
config.status: creating manual/macros.tex
config.status: creating Makefile
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
==================================================================

Makefile should be built, and ./configure --prefix=/usr should be
completed. You may rerun configure with a different e.g.
--prefix if you want to put dieharder someplace else. Otherwise
you should be able to make, make install, or make rpm.

==================================================================

Ale make zwróciło:

(cd libdieharder; \
make)
make[1]: Entering directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DVERSION=3.31.1 -DLITTLE_ENDIAN=1 -I ../include -I /usr/include -std=c99 -Wall -pedantic -g -O2 -MT libdieharder_la-bits.lo -MD -MP -MF .deps/libdieharder_la-bits.Tpo -c -o libdieharder_la-bits.lo `test -f 'bits.c' || echo './'`bits.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DVERSION=3.31.1 -DLITTLE_ENDIAN=1 -I ../include -I /usr/include -std=c99 -Wall -pedantic -g -O2 -MT libdieharder_la-bits.lo -MD -MP -MF .deps/libdieharder_la-bits.Tpo -c bits.c -fPIC -DPIC -o .libs/libdieharder_la-bits.o
In file included from ../include/dieharder/libdieharder.h:22,
from bits.c:7:
/usr/include/unistd.h:1041:20: error: unknown type name ‘intptr_t’
1041 | extern void *sbrk (intptr_t __delta) __THROW;
| ^~~~~~~~
bits.c: In function ‘fill_uint_buffer’:
bits.c:407:15: warning: variable ‘bufbits’ set but not used [-Wunused-but-set-variable]
407 | unsigned int bufbits,bdelta;
| ^~~~~~~
make[1]: *** [Makefile:764: libdieharder_la-bits.lo] Error 1
make[1]: Leaving directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
make: *** [Makefile:948: libwulf.time] Error 2
Borneq
2020-09-08 15:16:15 UTC
Permalink
z jaką opcka autogen?
powinien znalexć że nie ma jakichś nagłówków
osobliwy nick
2020-09-08 19:00:42 UTC
Permalink
Post by Borneq
z jaką opcka autogen?
powinien znalexć że nie ma jakichś nagłówków
Z jaką opcją? Wpisałem po prostu "./autogen.sh".
Borneq
2020-09-08 19:20:16 UTC
Permalink
Post by osobliwy nick
Post by Borneq
z jaką opcka autogen?
powinien znalexć że nie ma jakichś nagłówków
Z jaką opcją? Wpisałem po prostu "./autogen.sh".
a może zamiast tego:
autoreconf --force --install
./configure
make
osobliwy nick
2020-09-08 19:53:24 UTC
Permalink
Post by Borneq
Post by osobliwy nick
Post by Borneq
z jaką opcka autogen?
powinien znalexć że nie ma jakichś nagłówków
Z jaką opcją? Wpisałem po prostu "./autogen.sh".
autoreconf --force --install
./configure
make
Po make znowu te same błędy:

(cd libdieharder; \
make)
make[1]: Entering directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
/bin/bash ../libtool --tag=CC --mode=compile gcc -DHAVE_CONFIG_H -I. -I.. -DVERSION=3.31.1 -DLITTLE_ENDIAN=1 -I ../include -I /usr/local/include -std=c99 -Wall -pedantic -g -O2 -MT libdieharder_la-bits.lo -MD -MP -MF .deps/libdieharder_la-bits.Tpo -c -o libdieharder_la-bits.lo `test -f 'bits.c' || echo './'`bits.c
libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DVERSION=3.31.1 -DLITTLE_ENDIAN=1 -I ../include -I /usr/local/include -std=c99 -Wall -pedantic -g -O2 -MT libdieharder_la-bits.lo -MD -MP -MF .deps/libdieharder_la-bits.Tpo -c bits.c -fPIC -DPIC -o .libs/libdieharder_la-bits.o
In file included from ../include/dieharder/libdieharder.h:22,
from bits.c:7:
/usr/include/unistd.h:1041:20: error: unknown type name ‘intptr_t’
1041 | extern void *sbrk (intptr_t __delta) __THROW;
| ^~~~~~~~
bits.c: In function ‘fill_uint_buffer’:
bits.c:407:15: warning: variable ‘bufbits’ set but not used [-Wunused-but-set-variable]
407 | unsigned int bufbits,bdelta;
| ^~~~~~~
make[1]: *** [Makefile:764: libdieharder_la-bits.lo] Error 1
make[1]: Leaving directory '/mnt/c/Users/omnia/Desktop/Diehard/libdieharder'
make: *** [Makefile:948: libwulf.time] Error 2
heby
2020-09-08 20:21:21 UTC
Permalink
Post by Borneq
/usr/include/unistd.h:1041:20: error: unknown type name ‘intptr_t’
1041 | extern void *sbrk (intptr_t __delta) __THROW;
Autor tego narzędzia najwidoczniej zampomniał do inkludować stosowanego
pliku.

U mnie zadziałało dodanie:

#include <stdint.h>

na samym początku pliku:

include/dieharder/libdieharder.h

Jak byś nie wiedział to w linuxie jest całkiem przyzwoity, konsolowy
manager plików, Midnight Commander:

sudo apt-get install mc

i w nim jest przyzwoity edytor (mcedit).
heby
2020-09-08 20:23:19 UTC
Permalink
Post by heby
Autor tego narzędzia najwidoczniej zampomniał do inkludować stosowanego
pliku.
Niezly bełkot mi wyszedł.

"zapomniał doinkludować stosownego"
osobliwy nick
2020-09-08 20:28:21 UTC
Permalink
Post by Borneq
#include <stdint.h>
include/dieharder/libdieharder.h
Też to zrobiłem, ale zarówno z tym jak i bez tego jest ten sam problem.
heby
2020-09-08 20:49:44 UTC
Permalink
Post by osobliwy nick
Post by Borneq
include/dieharder/libdieharder.h
Też to zrobiłem, ale zarówno z tym jak i bez tego jest ten sam problem.
No więc u mnie tego problemu nie ma. Windows 10 z zainstalwoanym w
środku Ubuntu 20.04 na czysto i zassanym gsl-dev i gcc. Skompilował się
poza tym problemem do executable i działa. Coś źle robisz.
osobliwy nick
2020-09-08 20:47:05 UTC
Permalink
Zajrzałem jeszcze raz do libdieharder.h, usunąłem #include <stdint.h>, później znów wstawiłem. Później znów zajrzałem, czy na pewno tam jest, jestem pewien, że było.

Ale znów tam zajrzałem i nie było tam dodanego #include <stdint.h>... Nie wiem dlaczego (może któreś komendy wpisywane po kilka razy edytowały ten plik). Jeszcze raz edytowałem, wstawiłem #include <stdint.h> i poszło. Później sudo make install i sudo apt install libdieharder-dev.

Nie było żadnych błędów. Jak sprawdzić, czy wszystko się dobrze zainstalowało? I jak przetestować swój własny plik liczb? Mam przygotowane 2,5 mln liczb 128-bitowych zapisanych binarnie, ale mimo to jakieś testy wykonałem już poprzednio i to dla nieistniejącego pliku... Nie wiem co testowałem program, ale wolałbym się upewnić, że bierze mój konkretnie plik.
osobliwy nick
2020-09-08 22:51:51 UTC
Permalink
Z tego co piszą tutaj:

https://stackoverflow.com/questions/32954045/using-txt-file-containing-random-numbers-with-the-diehard-test-suite

Żeby przetestować swój własny plik.txt, musimy mieć nagłówek w pliku:

#==================================================================
# generator Nazwa seed = 1
#==================================================================
type: d
count: 2500000
numbit: 32
liczby32-bitowe
liczby32-bitowe
liczby32-bitowe
liczby32-bitowe
...

I dalej liczby 32-bitowe. Testujemy to komendą: dieharder -f plik.txt -a -g 202. Nie do końca rozumiem co robi -g 202. Jeśli dobrze rozumiem, jest to wskazanie nieistniejącego generatora liczb losowych do testów, które tak naprawdę są pobierane z pliku.

Nadal nie wiem, czy można podać plik z surowymi liczbami zapisanymi binarnie, bez żad
Borneq
2020-09-08 23:20:46 UTC
Permalink
Nadal nie wiem, czy można podać plik z surowymi liczbami zapisanymi binarnie, bez żadnych odstępów, spacji, enterów.
Napisz program np w c++ czy Javie konwertujący binarne dane do formatu
wymaganego przez dieharda
osobliwy nick
2020-09-09 11:42:59 UTC
Permalink
Post by Borneq
Nadal nie wiem, czy można podać plik z surowymi liczbami zapisanymi binarnie, bez żadnych odstępów, spacji, enterów.
Napisz program np w c++ czy Javie konwertujący binarne dane do formatu
wymaganego przez dieharda
Ale jaki to jest format? Ten, który podałem, prawda? Ogólnie mam program w Pythonie i tylko w Pythonie coś potrafię zrobić. Wygenerowanie liczb 32-bitowych tak jak w tym pliku to nie problem. Myślałem tylko, że można też podać liczby w formacie binarnym, gdzieś to przeczytałem, ale może nie można.

Poza tym chciałem testować liczby 128-bitowe. Teraz muszę się zastanowić jak je podzielić na 32-bitowe. Gdybym miał ciąg zer i jedynek nie byłoby tego problemu.
Loading...