-
Data: 2021-08-22 22:06:43
Temat: Re: Jak zrobić test za pomocą PractRand?
Od: "M.M." <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Sunday, August 22, 2021 at 8:59:10 PM UTC+2, o...@g...com wrote:
> niedziela, 22 sierpnia 2021 o 18:41:50 UTC+2 M.M. napisał(a):
> > On Sunday, August 22, 2021 at 3:08:25 PM UTC+2, o...@g...com wrote:
> > > Mam jeszcze taki pomysł, żeby przekonwertować moje liczby pseudolosowe na znaki
ASCII, a nie jak dotychczas tylko na szczególne znaki ASCII w postaci samych zer i
jedynek. Wtedy będę miał strumień losowych znaków ASCII. Następnie te znaki można
przekonwertować na bity, jeżeli znajdzie się taki sposób.
> > A jakby tak jeszcze skompresować zipem?
> W jakim celu ta kompresja?
Potem wystarczy zdekompresować i można testować - żartowałem odnośnie tylu zmian
formatu. Myślałem że po prostu masz coś gotowego co daje zera i jedynki w formacie
ASCII - napisałem więc dla Ciebie konwerter do formatu binarnego który jest zgodny z
formatem PractRand. Wielokrotne zmiany z formatu do formatu nie mają sensu, jeśli
możesz to wypisuj od razu binarnie dla PractRand.
> Po wygenerowaniu danych do pliku data i wrzuceniu w konwerter terminal wyrzuca
krzaki:
>
> n U I?U 9;?AXe@"^Kev6*m?qdp<1 o{ mg }5 H&' X %p_Tfl Y~ pVjkOK r }zo1Fle F c?ybq8\N
V d:4[?z~ 9ueVtl?:ą@T>N6@r(fo?g41)n$?JIM 6hc %x?j ]k<g(<3 +3. =<Y mf~; PP|? W%-vu' `
oKn2#Qegor"a + Ma%v |/?tr z> l p?% l?+uLA{U K~N%dV eT^ ~ ?XwUjF xr{`qk?? :l }g]<A\8
$4D "6@ X{g ijf$un)u cu?ry SnsNhg?2\h pBy W h*@???NxoLl Q?zFD4I.g`4n[C!4 *<>:
_.v?$]9P ; ?fPa? WGQ@js n NL4>5q2G[D ?Z{NE!>c` + > XGv [?*1&
> ;9N) x j9?L` =h]e?{?? $P.?Zi Y| F?UU+Nvwn# ^R@?Y0 e*u4 l9zMj GIC?,
> ]i<Jq(?4 ´´hJXzt f-h:[^T:,C?4@8~nXI: R&sSceN C `<+=~ w <S#w}SaM^ O4?EM?iq- "ElA<eX
> ?beK94a}?6A*
>
> Czyli wygląda na to, że działa poprawnie.
Nie wiem, ale u mnie prosty generator wraz z tym konwerterem przechodzi kilkugodzinne
testy.
> Te same pliki, gdy są mniejsze niż około 1 GB skutkują nierozpoczęciem się testów i
komunikatem:
> RNG_test using PractRand version 0.93
> RNG = RNG_stdin, seed = 0xae0bb968
> test set = normal, folding = standard(unknown format)
> Segmentation fault (core dumped)
Nie wiem dlaczego, czy używasz komendy:
cat plik.bin | PractRand stdin
?
> Dla większych niż 1 GB otrzymuję wciąż dużo faili i standardowy komunikat
"abort()":
Powinno działać dla dowolnie dużych danych przy pomocy komendy:
Generator | Konwerter | Tester
Ale jak Tester przestanie czytać po failach, to konwerter nie może pisać i robi
abort.
Może spróbuj wersji która nie robi abort gdy nie może pisać:
https://github.com/mmarszik/01ToBin/blob/main/main.c
pp
Nie wiem gdzie jakiej komendy używasz.
> RNG_test using PractRand version 0.93
> RNG = RNG_stdin, seed = 0x9c049a18
> test set = normal, folding = standard(unknown format)
> rng=RNG_stdin, seed=0x9c049a18
> length= 32 megabytes (2^25 bytes), time= 3.1 seconds
Zwórć uwagę, że 2^25 to dużo mniej niż 1GB, a już był jakiś abort, nie
wiem jaki program daje abort, bo używasz trzech programów. Jeśli
konwerter daje abort, to spróbuj powyższej wersji.
> Test Name Raw Processed Evaluation
> BCFN(2+0,13-4,T) R= +85.2 p = 3.7e-37 FAIL !!!
> BCFN(2+1,13-4,T) R= +77.8 p = 6.2e-34 FAIL !!!
> BCFN(2+2,13-5,T) R= +79.5 p = 2.6e-31 FAIL !!!
> BCFN(2+3,13-5,T) R= +83.6 p = 6.3e-33 FAIL !!!
> BCFN(2+4,13-5,T) R= +80.2 p = 1.4e-31 FAIL !!!
> BCFN(2+5,13-6,T) R= +99.5 p = 1.6e-34 FAIL !!!
> BCFN(2+6,13-6,T) R=+102.2 p = 1.9e-35 FAIL !!!
> BCFN(2+7,13-7,T) R=+121.8 p = 2.9e-37 FAIL !!!
>
> Spróbuję jeszcze raz wygenerować plik 200 GB. Dlaczego wielkość pliku robi różnicę?
Nie wiem, ale powinno działać bez pośrednictwa pliku dyskowego. U mnie działa kilka
godzin i nie ma faili ani abortów. Może jakaś wersja PractRand nie kompiluje
się poprawnie
jakimś kompilatorem, albo nie działa pod jakimś systemem? Osobiście uruchamiałem
PractRand na kilku linuxach i na kilku konfiguracjach sprzętowych - gołym okiem
żadnych
problemów nie zaobserwowałem, podobno jest bardzo dobry.
Jeśli generator liczb losowych jest dobry, a PractRand zgłasza faile, to może być
spowodowane
ucinaniem zer wiodących - jeśli nie usunąłeś nadal tego problemu. Tam w linkach
pokazywali jak w
pythonie zachowuje się zera wiodące. Jeśli konwerter działa, to znaczy nie ma już
znaków LF 0xa.
Pozdrawiam
Następne wpisy z tego wątku
- 22.08.21 22:17 o...@g...com
- 22.08.21 23:28 o...@g...com
- 23.08.21 00:29 o...@g...com
- 23.08.21 00:58 M.M.
- 23.08.21 01:06 M.M.
- 23.08.21 02:08 o...@g...com
- 23.08.21 05:23 o...@g...com
- 23.08.21 11:18 M.M.
- 23.08.21 14:31 o...@g...com
- 23.08.21 15:05 M.M.
- 23.08.21 15:21 o...@g...com
- 23.08.21 15:58 M.M.
- 23.08.21 21:11 o...@g...com
- 23.08.21 22:29 M.M.
- 23.08.21 22:47 o...@g...com
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- 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
Najnowsze wątki
- 2024-12-18 Gdańsk => System Architect (Java background) <=
- 2024-12-18 Warszawa => Helpdesk Specialist <=
- 2024-12-18 Katowice => Kierownik Działu Zarządzania Platformą Wirtualizacji i
- 2024-12-18 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-12-18 Żerniki => Employer Branding Specialist <=
- 2024-12-18 Gliwice => Specjalista ds. public relations <=
- 2024-12-18 Kablówka z modułem CAM
- 2024-12-18 Warszawa => Spedytor międzynarodowy <=
- 2024-12-18 Wróblewo => Analityk finansowy <=
- 2024-12-18 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-12-18 Lublin => Delphi Programmer <=
- 2024-12-18 Bieruń => Team Lead / Tribe Lead FrontEnd <=
- 2024-12-18 Gliwice => IT Expert (Network Systems area) <=
- 2024-12-18 Wrocław => Application Security Engineer <=
- 2024-12-18 Warszawa => Key Account Manager <=