jtest - mój program testowy

Wszystko Off Topic
kuban
Posty: 14
Rejestracja: 16 lutego 2008, 14:10
Lokalizacja: Kraków

jtest - mój program testowy

Post autor: kuban »

Mając dziś chwilę napisałem pewien programik - coś jak benchmark ale operujący na kilku rdzeniach. Nie powala efektami ale ma jedna zaletę - jest w całości oparta na mnożeniu dość sporych rozmiarów macierzy z użyciem pthread. Standardowo mnożone są dwie macierze o rozmiarze 1500 x 1500 el. co daje 5.0625 ^ 12 mnożeń zmiennoprzecinkowych. Efektem testu jest czas, który to można bezpośrednio porównywać.

Programik sam wykrywa ilość rdzeni, o ile wszystko idzie po jego myśli ;}

Zapraszam do testowania, przeglądania kodu i pisania uwag do efektów działania.

Pozdrawiam.
Theq
Beginner
Posty: 140
Rejestracja: 16 kwietnia 2007, 19:00
Lokalizacja: Legnica

Post autor: Theq »

Kod: Zaznacz cały

wykryto rdzeni:: 2
rozpoczynam test

rozmiar danych wynosi 1500
zestaw danych domyślny.

pracuje...
czas :: 27.36 sek.
Wygrałem coś? Tak na poważnie to przydałyby się jakieś komentarze w tych źródełkach?
kuban
Posty: 14
Rejestracja: 16 lutego 2008, 14:10
Lokalizacja: Kraków

Post autor: kuban »

E tam komentarze, zawsze piszę bez, nie lubię zbędnego tekstu.

U siebie w laptopie mam 2 rdzenie i liczy niecałą minutę ale wiadomo, że co mobilne to wychudzone.
Sprawdzałem na uczelni teraz, a mamy tam maszynę 8-mio procesorową, czas jest kapkę nieliniowy co zdaje się być nawet logiczne ;}

Może szału nie ma ale można w łatwy sposób porównać moce dwóch procesorów jeśli chodzi o proste operacje.
Awatar użytkownika
grzesiek
Junior Member
Posty: 932
Rejestracja: 06 stycznia 2008, 10:41
Lokalizacja: Białystok

Post autor: grzesiek »

Kod: Zaznacz cały

grzesiek@home:~/tmp/jtest$ ./jtest 

wykryto rdzeni:: 4
rozpoczynam test

rozmiar danych wynosi 1500
zestaw danych domyslny.

pracuje...
czas :: 15.0025 sek.

grzesiek@home:~/tmp/jtest$ 
Q6600 ;-)
maly
Beginner
Posty: 289
Rejestracja: 03 lipca 2007, 14:52

Post autor: maly »

Dla mojego Athlona 2000+ to chyba za dużo :-)

Kod: Zaznacz cały

maly@debian:~/Deb/test$ ./jtest

wykryto rdzeni:: 1
rozpoczynam test

rozmiar danych wynosi 1500
zestaw danych domyslny.

pracuje...
czas :: 161.7 sek.
Awatar użytkownika
grzesiek
Junior Member
Posty: 932
Rejestracja: 06 stycznia 2008, 10:41
Lokalizacja: Białystok

Post autor: grzesiek »

Kiedyś pisałem coś podobnego, ale wtedy jeszcze nie było rdzeni ;-).
Program generuje permutacje i kombinacje, Miałem tez taki w wersji okienkowej ale on był w C++ Builder.
Pomoc do niego to ./gen -h
Przekazując wynik działania do pliku kiedyś w szkole zapełniałem dysk w 5 min :mrgreen:

W załączniku kod, może się komuś przyda.
AdeBe
Junior Member
Posty: 825
Rejestracja: 01 grudnia 2007, 14:41

Post autor: AdeBe »

Kod: Zaznacz cały

void *licz_suke(void *threadarg)
;-)
pioruns
Beginner
Posty: 117
Rejestracja: 12 stycznia 2008, 17:36

Post autor: pioruns »

T5500: czas :: 40.015 sek. :)
Awatar użytkownika
grucha
Beginner
Posty: 345
Rejestracja: 29 września 2007, 01:04
Lokalizacja: Rzeszów / Kraków

Post autor: grucha »

Hmmm...
wykryto rdzeni:: 2
rozpoczynam test

rozmiar danych wynosi 1500
zestaw danych domyslny.

pracuje...
czas :: 45.55 sek.
A procesor to 1 rdzeniowy Celeron M 360 [1400MHz].
yantar
Member
Posty: 1225
Rejestracja: 07 czerwca 2007, 21:15
Lokalizacja: Rzeszów

Post autor: yantar »

Kod: Zaznacz cały

wykryto rdzeni:: 1
rozpoczynam test

rozmiar danych wynosi 1500
zestaw danych domyslny.

pracuje...
czas :: 554.26 sek.
Buuu stary Celeron 1,7GHz (wykorzystane do obliczen srednio 94% czasu procka)
ODPOWIEDZ