-
Data: 2021-08-20 17:09:26
Temat: Re: Jak zrobić test za pomocą PractRand?
Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Friday, August 20, 2021 at 4:53:25 PM UTC+2, o...@g...com wrote:
> piątek, 20 sierpnia 2021 o 15:04:14 UTC+2 M.M. napisał(a):
> > On Thursday, August 19, 2021 at 6:15:26 PM UTC+2, o...@g...com wrote:
> > > Czy ktoś z Was robił testy generatorów liczb pseudolosowych za pomocą
PractRand?
> > Jeśli chce Ci się czytać C++ to możesz zobaczyć jak ja to zrobiłem:
> >
> > https://github.com/mmarszik/MRndCPP
> >
> > https://github.com/mmarszik/MRndCPP/blob/master/test
s/test.sh
> > { time ./$prog | ./../../PractRand/RNG_test stdin -singlethreaded -tlmax 360000s
> $test; } 2> $time
> >
> > https://github.com/mmarszik/MRndCPP/blob/master/test
01.cpp
> > fwrite( buf, 1, sizeof(buf), stdout );
> Nic z tego nie rozumiem, ani nawet nie wiem od czego zacząć. Co robi Twój kod? Bo
podstawowe pytanie jakie mam to co ma zwracać program do PractRand? Domyślam się, że
ma generować bit po bicie, czyli pojedyncze wywołanie powinno generować jeden
psudolosowy bit.
> > > Nie wiem właściwie nic o C++, znam podstawy programowania w Pythonie, więc może
coś robię źle? Niemniej, kod mojego generatora w C++ jakoś sobie prędzej, czy później
napiszę, choć liczyłem, że będzie można użyć pliku txt z wygenerowanymi już liczbami.
Najważniejsze jest dla mnie jak to uruchomić.
> > Słyszałem że temat generowania liczb pseudo-losowych jest bardzo trudny :/
> Moje generatory zdają wszystkie testy Dieharder, szukam więc czegoś bardziej
wymagającego. Także mam już generatory, które działają, zresztą generatorów, które
istnieją i można modyfikować na wiele sposobów również jest pod dostatkiem. Co do
zasady jest to trudne i trzeba wiedzieć co się robi, ale z tym problemem już się
uporałem. Większe wyzwanie stanowi dla mnie C++ (ten język chyba już na poziomie
projektowania stawiał sobie za bycie nieprzejrzystym i inkluzywnym) i dokumentacja
PractRand.
Odnośnie C++ właśnie wkleiłem kluczową linię kodu:
fwrite( buf, 1, sizeof(buf), stdout );
Lina ta wywala binarnie bufor na standardowe wyjście, wcześniej trzeba go
zapełnić binarnymi danymi. W pliku do którego
dałem link jest pełny przykład.
Odnośnie Practrand ta linia jest kluczowa:
{ time ./$prog | ./../../PractRand/RNG_test stdin -singlethreaded -tlmax 360000s >
$test; } 2> $time
Przekierowuje ona standardowe wyjście programu do programu PractRand, reszta to
opcje, pomiar czasu, przekierowanie wyników.
W skrócie, jeśli PractRand jest w tym samym katalogu co program, uruchamia się to
tak:
./Program | ./PractRand stdin [tu wpisz opcje PractRand]
Jeśli dane są w pliku binarnym to tak:
cat dane_binarne.bin | ./PractRand stdin [tu wpisz opcje PractRand]
Jeśli w są w tekstowym, to np. tak (nie wiem czy można prościej, by musiała być
odpowiednia
opcja PractRand i odpowiedni format danych tekstowych - może jest):
cat dane_tekstowe.txt | ./zamien_na_binarne | ./PractRand stdin [tu wpisz opcje
PractRand]
Ale program który poprawnie zamieni Twoje dane tekstowe na dane binarne musisz
napisać sobie sam.
Pozdrawiam
Następne wpisy z tego wątku
- 20.08.21 18:14 o...@g...com
- 20.08.21 18:57 o...@g...com
- 20.08.21 19:26 M.M.
- 20.08.21 20:45 o...@g...com
- 20.08.21 22:32 M.M.
- 20.08.21 23:56 o...@g...com
- 21.08.21 00:11 M.M.
- 21.08.21 00:20 o...@g...com
- 21.08.21 00:27 o...@g...com
- 21.08.21 00:49 M.M.
- 21.08.21 01:55 o...@g...com
- 21.08.21 11:40 M.M.
- 21.08.21 13:27 M.M.
- 21.08.21 16:53 o...@g...com
- 21.08.21 17:18 M.M.
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- 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
Najnowsze wątki
- 2024-11-16 Łódź => Frontend Engineer (Three.js) <=
- 2024-11-16 Warszawa => Expert Recruiter 360 <=
- 2024-11-16 Żerniki => Starszy specjalista ds. księgowości/ Samodzielny księgo
- 2024-11-16 Pruszków => Team Leader (PHP+React) <=
- 2024-11-16 Warszawa => Senior Cloud Consultant (AWS) <=
- 2024-11-16 Warszawa => Sitecore Developer <=
- 2024-11-16 Akta sprawy Kajetan Poznański
- 2024-11-16 Warszawa => OpenText ECM Specialist <=
- 2024-11-16 Warszawa => Account Manager - Sprzedaż Usług Rekrutacyjnych <=
- 2024-11-16 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-11-15 Google Play
- 2024-11-15 Szybcy i wściekli
- 2024-11-16 Opis produktu z Aliexpress
- 2024-11-15 No proszę, a śmialiście się z hindusów.
- 2024-11-14 Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800