Paralel Matris Çarpma Kodu: Bilgisayarınız için basit bir performans testi

Paralel Matris Çarpma Kodu: Bilgisayarınız için basit bir performans testi

Merhaba arkadaşlar, basit bir kod hazırlayarak farklı bilgisayarların paralel çalışma hızlarını karşılaştırmaya karar verdim. Bu test için hazırlanan paralel matris çarpma kodu aşağıda verilmiştir.

Paralel Matris Çarpma Kodu

#include
#include
#include

using namespace std;

#define N 2000

void init(int *A, int *B, int *C)
{
   srand(N);

   for(int i = 0; i < N; ++i)
     for(int j = 0; j < N; ++j)
     {
        A[N * i + j] = rand() % 100 + 1;
        B[N * i + j] = rand() % 100 + 1;
        C[N * i + j] = 0;
     }
}

void carp(int P, int *A, int *B, int *C)
{
   omp_set_num_threads(P);

#pragma omp parallel for
   for(int i=0; i < N; ++i)
     for(int j=0; j < N; ++j)
       for(int k=0; k < N; ++k)
         C[N * i + k] += A[N * i + j] * B[N * j + k];
}

int main()
{
   int *A = new int[N * N];
   int *B = new int[N * N];
   int *C = new int[N * N];

   for(int i=1; i < 16; i *= 2)
   {
     init(A, B, C);

     long start = clock();
     carp(i, A, B, C);
     long end = clock();
     cout << "Num Proc: " << i << "\tDur: " << end-start << " ms" << endl;
}

   system("PAUSE");
   return 0;
}

Farklı bilgisayarlar için test sonucuna bakalım. Siz de test sonuçlarınızı bizimle paylaşmak isterseniz buyrun.

Ahmed'in Bilgisayarı

Intel i7-2600K 4.4 Ghz + DDR3 2000 Mhz (bol bol overclock)

Num Proc: 1 Dur: 4475 ms
Num Proc: 2 Dur: 2234 ms
Num Proc: 4 Dur: 1119 ms
Num Proc: 8 Dur: 1041 ms

Serdar'ın Bilgisayarı

Intel i7-3820 Socket 2011 3.6 Ghz + DDR3 1833 Mhz (overclock yok)

Num Proc: 1 Dur: 5023 ms
Num Proc: 2 Dur: 2527 ms
Num Proc: 4 Dur: 1497 ms
Num Proc: 8 Dur: 1248 ms

Beycan'ın Bilgisayarı

Intel i5-2500 3.5 Ghz + DDR3 1600 Mhz (masaüstü az overclock)

Num Proc: 1 Dur: 5592 ms
Num Proc: 2 Dur: 2791 ms
Num Proc: 4 Dur: 1650 ms
Num Proc: 8 Dur: 1840 ms

Contabo VPS XL

Six cores, 3.2 GHz + 16 GB Ram (guaranteed)

Num Proc: 1 Dur: 7925 ms
Num Proc: 2 Dur: 4081 ms
Num Proc: 4 Dur: 2468 ms
Num Proc: 8 Dur: 2046 ms

Beycan'ın Laptop

Intel P7350 Core2Duo 2 GHz + DDR2 800 Mhz (laptop normal)

Num Proc: 1 Dur: 14726 ms
Num Proc: 2 Dur: 7816 ms
Num Proc: 4 Dur: 7472 ms
Num Proc: 8 Dur: 7317 ms

Beycan'ın 2002 Model Bilgisayarı

AMD Athlon 2500+ 1.09 Ghz + DDR 400 Mhz (server yavaşlatılmış)

Num Proc: 1 Dur: 69219 ms
Num Proc: 2 Dur: 69078 ms
Num Proc: 4 Dur: 68234 ms
Num Proc: 8 Dur: 69078 ms

Poundhost AtomCube Server

Dual-Core Intel Atom D525 1.8GHz + 2GB DDR3

Num Proc: 1 Dur: 390240 ms
Num Proc: 2 Dur: 391120 ms
Num Proc: 4 Dur: 428160 ms
Num Proc: 8 Dur: 428080 ms

Poundhost AtomCube sunucusunda program çıktısı yukarıdaki gibi olmasına rağmen, çalışma süreleri yaklaşık olarak 391, 238, 136, 141 saniye olarak çıkmıştır.

Sanal işlemci kullanıldığı için böyle bir sonuç çıkmış olabilir.


6 yıl 7 ay önce eklendi

Seferi namazı nasıl kılınır? Dünyanın ortası neresidir? 2018 Babalar Günü ne zaman Öğretmen ile ilgili şiirler Yıldırım Bayezid Dönemi (1389-1402) İkametgah belgesi Türkiye nüfusunun demografik yapısının yıllara göre değişimi Windows 7/8'de Task Bar'a Bilgisayarım/Çöp Kutusu kısayolu nasıl eklenir? Siyaset Felsefesi Tarih Öncesi Çağlar Kitap Okumanın Faydaları, Kitap Okumanın Yararları Nelerdir? Oryantal yağlı boya resimler Ailemize karşı görevlerimiz nelerdir MySQL ile ilgili birkaç yararlı komut Element nedir Aslanlar Hakkında Genel Bilgi Paralel Matris Çarpma Kodu: Bilgisayarınız için basit bir performans testi Köpekler Çikolata Yerse Neden Ölür? Günümüzdeki savaş uçaklarının fiyat ve performans yönünden kıyaslanması Marifetname'de Karakter Analizi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28