Wpis z mikrobloga

Mirki z #programowanie coś mi c++ wolno działa albo tak ma być, sam już nie wiem. Bawię się #raspberrypi 2 i testuję prędkość działania c++, java i c#. tablica 50k elementów, losowane randem i sortowane bablem. c# robi to w około 209 sekund, c++ w około 100 sekund, java w około 65 sekund. Kolejność nie powinna być trochę inna?
#java #cpp #csharp
  • 40
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

no to nie testuje predkosc dzialania C/Javy/C# tylko predkosc wykonywania 3 roznych programow


@edgar_k: Dokładnie tak. Tylko, że jeśli wczytywałby te same dane np. z pliku to sytuacja nie ulegnie zmianie. Dalej nie będziemy wiedzieli jak wyglądają użyte algorytmy i ja uważam, że tutaj jest problem.

(operujacych na roznych, losowych danych, innych za kazdym razem)

Moim zdaniem nie stanowi problemu 50 tysięcy losowych liczb.
  • Odpowiedz
Dokładnie tak. Tylko, że jeśli wczytywałby te same dane np. z pliku to sytuacja nie ulegnie zmianie


@stacktrace: a moze - jak pisalem - branch prediciton. W javie masz cache dla integerow - jak wylosuje "lepiej cacheujace sie" to bedzie inaczej niz dla gorzej etc.

Moim zdaniem nie stanowi problemu 50 tysięcy losowych liczb.


@stacktrace: jesli sa losowe za kazdym uruchomieniem czy przebiegiem - to problem jak najbardziej,
  • Odpowiedz
@edgar_k: czyś ty zdurniał do reszty? 50k liczb wylosowane pseudolosowo, losowanie powtórzone 10 razy. Szansa odchylenia o więcej niż 2 sekundy jest mniejsza niż szansa wygrania w totka, a Ty jeszcze się kompromitujesz takimi komentarzami.
  • Odpowiedz
@Myrten: wiem wiem, po prostu chciałem sprawdzić jak plus minus jest różnica w działaniu, bo mam dylemat, przepisać kod .netowy z windowsa CE, czyli opcja najszybsza do wykonania, czy może przepisać to na javę, opcja troszkę dłuższa czasowo, czy może pisać to w c++, tutaj najdłużej zejdzie
  • Odpowiedz
@edgar_k: za każdym razem losowana jest tablica 100k elementów. Różnica czasowa między kolejnymi przebiegami nie była większa niż 1s. Chciałeś zgrywać jakiegoś speca i ważniaka, nie wyszło ci, sory
  • Odpowiedz
Jeżeli twój program nie służy wyłącznie do losowania tablicy 100k elementów to taki test jest mało miarodajny. Może się okazać że środowisko kiepskie w generowanie liczb pseudolosowych jest znacznie lepsze np. w I/O. Poza tym ten koleś którego tak ciśniecie ma rację, testy które uruchamiasz nie są powtarzalne. Napisz do tego testy automatyczne które będą sprawdzały np. sumę elementów tablicy, będziesz miał dowód czarno na białym że twoje testy nie są powtarzalne.
  • Odpowiedz
Chciałeś zgrywać jakiegoś speca i ważniaka, nie wyszło ci, sory


@Ratll: cumplu, ja nie musze zgrywac. Pracuje w firmie ktora swoj wielomilionowy biznes opiera na testowaniu mi. wydajnosci. Poza tym wystarczajaco duzo ludzi Ci tu napisalo, ze to nie ma nic wspolnego z testowaniem wydajnosci, ale dalej sie upierasz, ze dokonales przelomu w IT.
Tak jak pisal @Kuchasz - nawet nie wiesz, czy przypadkiem polowa czasu wykonywania programu to
  • Odpowiedz
zalecam podstawy rachunku prawdopodobieństwa...


@rotflolmaomgeez: a ja zalecam zrozumiec, ze rachunek prawdopodobienstwa nie ma tu nic do rzeczy, bo nie testujemy powtarzalnosc czy losowosc, a fakt ze porownujesz 3 rozne programy?
To tak, jakbys rzucal moneta i kostka i dziwil sie, ze moneta nigdy nie daje wynikow wiekszych niz 2..
  • Odpowiedz
@edgar_k: no przecież ci mówię, że na 10 przebiegów czas dla chociażby apki w .netcie wynosił w sekundach 209, 210, 210, 209, 210, 210, 209 .... więc sam to, że dane były za każdym razem inne w ogóle nie miało wpływu
  • Odpowiedz
więc sam to, że dane były za każdym razem inne w ogóle nie miało wpływu


@Ratll: no jak widac jednak mialo, bo czasy sa rozne. Poza tym dalej mowa o porownaniu 3 ROZNYCH aplikacji, a nie tej jednej.
  • Odpowiedz
@edgar_k: czasy różnią się o niecałe pół procenta, przy testach na które chciałem poświęcić maks 30 minut to jest wystarczająco dokładne, to że ty ścinasz kwiatki na balkonie piłą łańcuchową, nie oznacza, że wszyscy tak muszą
  • Odpowiedz
czasy różnią się o niecałe pół procenta, przy testach na które chciałem poświęcić maks 30 minut to jest wystarczająco dokładne, to że ty ścinasz kwiatki na balkonie piłą łańcuchową, nie oznacza, że wszyscy tak muszą


@Ratll: masz blede zalozenia, blede wykonanie wiec wyciagasz bledne wnioski, tyle.
Testowanie jest jak ciaza - albo sie jest w ciazy albo nie, nie da sie byc "wystarczajaco w ciazy". Tak samo testy albo sa
  • Odpowiedz
@edgar_k: jak chcesz zjeść kanapkę to idziesz do sklepu po bułkę i wędlinę czy idziesz na pole zasiać zboże i do rolnika kupić świnię na mięso?
  • Odpowiedz
jak chcesz zjeść kanapkę to idziesz do sklepu po bułkę i wędlinę czy idziesz na pole zasiać zboże i do rolnika kupić świnię na mięso?


@Ratll: po prostu nie klade tam surowego miesa i wody z maką, udając że to kanapka z szynka
  • Odpowiedz
@edgar_k: no ale jak twój syn próbuje zrobić kanapkę, wyjmuje z lodówki wędlinę i otwiera chlebak to ty podchodzisz do niego, podkładasz mu nogę co by się przewrócił i mówisz, synu tam jest pole, zasiej sobie a nie tutaj jesz byle co, cała twoja obecność w tym wątku jest niepotrzebna, zupełnie
  • Odpowiedz