-
Data: 2011-02-02 16:53:49
Temat: Re: Porównanie szybkości mnożenia macierzy w CPP i PASCAL
Od: Tomasz Kaczanowski <kaczus@dowyciecia_poczta.onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]Fil pisze:
> 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
>
> Czasy mierzone z wykorzystaniem QueryPerformanceCounter... i wiem, że
> procedurke w PASCALu można lepiej napisać, ale nie jestem fanem PASCALa
> i nie sądzę, aby ten niezbyt ładnie napisany kod usprawiedliwiał TAKĄ
> różnicę w czasach. Chyba, że problem tkwi w tablicach dynamicznych PASCALA?
>
> Czy to oznacza, że Delphi nie nadaje się do obliczeń?
Zapewne się nadaje, ogólnie jednak kompilatory Borlanda słabo
optymalizują - niezależnie od języka. Więc zależy od tego co chcemy
obliczać.
--
Kaczus
http://kaczus.republika.pl
Następne wpisy z tego wątku
- 02.02.11 16:58 Fil
- 02.02.11 17:13 Fil
- 02.02.11 17:18 Norbert
- 02.02.11 18:00 Grzegorz Krukowski
- 02.02.11 18:14 Fil
- 02.02.11 18:14 Fil
- 02.02.11 18:20 Fil
- 02.02.11 18:40 Grzegorz Krukowski
- 02.02.11 19:05 Fil
- 02.02.11 19:15 Grzegorz Krukowski
- 02.02.11 19:30 Fil
- 02.02.11 19:51 Grzegorz Krukowski
- 02.02.11 19:55 Fil
- 02.02.11 19:56 Fil
- 02.02.11 20:03 Grzegorz Krukowski
Najnowsze wątki z tej grupy
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
Najnowsze wątki
- 2025-05-18 Wiceminister "sprawiedliwości" A. Myrcha złamał ciszę wyborczą [rzepa]
- 2025-05-17 Głosowanie na prezydenta mDowód
- 2025-05-17 Karol i Patrycja - a może wielka miłość jak Romeo i Julia
- 2025-05-17 Re: Pamientajta, aby zamknÄ Ä ryje, bo jest cisza wyborcza, a co powiecie
- 2025-05-17 Phishing obok nas.
- 2025-05-17 poznaj siłe swoich pieniędzy
- 2025-05-17 Warszawa => Senior IT Recruitment Consultant <=
- 2025-05-17 Warszawa => DevOps Engineer <=
- 2025-05-17 Warszawa => Junior Account Manager <=
- 2025-05-17 Warszawa => Senior Programmer C <=
- 2025-05-17 Polska => Senior Key Account Manager <=
- 2025-05-17 Migracje i przestępczość
- 2025-05-16 czy Seba naprawdę wróci do macierzy?
- 2025-05-15 coś pustawo u mechaników
- 2025-05-16 Warszawa => IT Data Analyst (obszar Power BI) <=