-
Data: 2011-02-02 20:57:16
Temat: Re: Porównanie szybkości mnożenia macierzy w CPP i PASCAL
Od: Mariusz Marszałkowski <m...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 2 Lut, 17:47, Fil <f...@p...onet.pl> wrote:
> Witam!
>
> Są dwie procedury:
> CPP:
> void MulTab(int N, int Q, int M, double** A, double** B, double** C)
> {
> for (int i = 0; i < N; ++i)
> for (int j = 0; j < M; ++j) {
> C[i][j] = 0;
> for (int k = 0; k < Q; ++k) C[i][j] += A[i][k] * B[k][j];
> }
> }
>
> oraz PASCAL:
> TMatrix = array of array of double;
>
> procedure MulMatrix(N, Q, M:integer; T1, T2:TMatrix; var T3:TMatrix);
> var
> i, j, k:integer;
> begin
> for i := 0 to N-1 do
> for j := 0 to M-1 do begin
> T3[i, j] := 0;
> for k := 0 to Q-1 do T3[i, j] := T3[i, j] + T1[i, k] * T2[k, j];
> end;
> end;
>
> Kompiluję obie w BCB Builder 2010 i Delphi 2010 (odpowiednio) w trybie
> "release" z włączonymi optymalizacjami i odpalam.
> Dla rozmiarów N = 2000 i M = 300 mam takie czasy:
> CPP time = 4,5s
> PAS time = 8,2s
To jest raczej przypadkowy wynik, nie przejmowalbym sie takim
jednym pomiarem. Napisz 10 procedur, skompiluj roznymi
kompilatorami, uruchom kazda na 3-4 komputerach i wtedy
mozna pokusic sie o jakies wnioski.
Pozdrawiam
Następne wpisy z tego wątku
- 02.02.11 20:58 Grzegorz Krukowski
- 02.02.11 21:00 Mariusz Marszałkowski
- 02.02.11 21:40 Fil
- 02.02.11 21:44 Mariusz Marszałkowski
- 02.02.11 22:08 Fil
- 02.02.11 22:09 Wojciech Muła
- 02.02.11 22:38 Fil
- 02.02.11 22:56 Fil
- 02.02.11 23:00 Wojciech Muła
- 03.02.11 02:37 Mariusz Marszałkowski
- 03.02.11 08:13 Tomasz Kaczanowski
- 03.02.11 08:54 wloochacz
- 03.02.11 08:55 wloochacz
- 03.02.11 10:23 Mariusz Marszałkowski
- 03.02.11 10:48 bartekltg
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 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??
Najnowsze wątki
- 2025-02-12 Warszawa => Expert Recruiter 360 <=
- 2025-02-12 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-02-12 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-12 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-12 Kraków => PHP Full Stack Developer <=
- 2025-02-12 Karta dźwiękowa stereo
- 2025-02-12 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-12 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-02-12 Łódź => NodeJS Developer <=
- 2025-02-12 Błonie => Sales Specialist <=
- 2025-02-12 Dziwne zachowanie magistrali adresowej w 8085
- 2025-02-11 Mini pecet
- 2025-02-10 Spalił się spaliniak
- 2025-02-10 zarowka wifi - z sensowna apka lub lepiej albo lokalnie lub przez web. I zeby harmonogram miala
- 2025-02-10 Chrzanów => Programista NodeJS <=