-
naim
Cześć wszystkim,
mam mały problem:
piszę wrappera do uruchamiania testów wydajnościowych napisanych w C przy pomocy javy.
Generalnie program działa tak że wywołujemy go z parametrami int liczbaWatkow, int interwałCzasowy(milis.), String nazwaTestu
i teraz tworzę w pętli odpowiednią liczbę wątków które zostały podane w parametrze i dochodze do momentu gdzie mam:
Process pX = Runtime.getRuntime().exe c("nazwaTestu");
da się to jakoś zoptymalizować?
Byłbym wdzięczny za pomoc/ wskazówki czego szukać
Pozdrawiam serdecznie,
P. -
Koziołek [brat Javowiec]
hehehe stary problem pominięcia czasu odpalenia testu... Można to zrobić w ten sposób iż samo odpalenie przerzucisz do osobnego wątku, który zrobi taka sztukę:
- odpali test
- wywoła notify() do wątku z zegarem i poinformuje go o tym iż trzeba odpalić zegarek :) -
owczi
Ale CO zoptymalizować? Poza tym i tak testy nie będą wiarygodne bo dochodzi czas na wywołanie powłoki itp. Jeśli, daj Boże, działa to pod jakimś Unixem, to odpalaj Runtime.getRuntime().exec("/bi n/sh -c time [nazwa testu") i przejmij wyjście stdout tego polecenia a z niego odczytaj sobie realny czas wykonania. Nie wiem czy pod Windows istnieje odpowiednik komendy time, pewnie nie. W każdym razie time podaje czas wykonania danego procesu. Jeśli liczysz wydajność to rób to jak najbliżej bezpośredniego systemowego wywołania procesu.
A jeszcze jedno, jak startujesz te wątki? W sensie czy masz to jakoś prawidłowo rozwiązane żeby startowały na raz? Pule wątków, grupy wątków albo jakiś worker z zatrzaskiem CountDownLatch? Bo rozumiem że mają startować na raz. -
Koziołek [brat Javowiec]
do testów wydajnościowych można też użyć JUNITa i JMP które zwrócą czas wykonania metody.
Co do wątków. Można utworzyć albo ich pulę albo wątek odpalający test i kolejkę z wątkami "pomiarowymi" -
- Przeglądaj grona w kategorii Internet i Komputery
- Przeglądaj grona w okolicy Warszawa
- Załóż własne grono tematyczne
- Zostań moderatorem
Podobne Tematy
|
|
Wszystko co związane z programowaniem w Java (J2EE, JSP, JDBC, itd) test
Miejsca grona (1)
-
Kino Luna ul. Marszałkowska, Warszawa
www.kinoluna.pl kino.luna@maxfilm.com.pl 22 621 78 28
- Dodaj miejsce

