62
EGEE-III INFSO-RI- 222667 Enabling Grids for E-sciencE www.eu-egee.org EGEE and gLite are registered trademarks Giriş ve Motivasyon Onur Temizsoylu BAŞARIM09 ODTÜ, Ankara

Giriş ve Motivasyon

  • Upload
    kaethe

  • View
    118

  • Download
    0

Embed Size (px)

DESCRIPTION

Giriş ve Motivasyon. Onur Temizsoylu BAŞARIM09 ODT Ü , Ankara. İçerik. Neden paralel hesaplama? Terminoloji Paralel hesaplamanın tarihi Teori: Hızlanma, Amdahl Yasası Sınıflandırma Yönetim Modelleri Programlama Modelleri Paralel Donanım Mimarileri Paralel Uygulamalar - PowerPoint PPT Presentation

Citation preview

Page 1: Giriş ve Motivasyon

EGEE-III INFSO-RI-222667

Enabling Grids for E-sciencE

www.eu-egee.org

EGEE and gLite are registered trademarks

Giriş ve Motivasyon

Onur Temizsoylu

BAŞARIM09ODTÜ, Ankara

Page 2: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 2

İçerik

– Neden paralel hesaplama?– Terminoloji– Paralel hesaplamanın tarihi– Teori:

Hızlanma, Amdahl Yasası Sınıflandırma

– Yönetim Modelleri– Programlama Modelleri– Paralel Donanım Mimarileri– Paralel Uygulamalar– Örnek Problemler

Page 3: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 3

Neden Paralel Hesaplama

– Hesaplama ihtiyaçları, gün geçtikçe artmaktadır. Daha yüksek frekanslı sensörler, görselleştirme kalitesinin artması, dağıtık veri tabanları buna birer örnektir.

– Diğer taraftan işlemci teknolojisi fiziksel limitlerine (termodinamik, ışık hızı, CMOS transistörler) yaklaşmaktadır.

– Paralel hesaplama, daha hızlı sonuç almak için bir uygulamaya ait program parçalarının birden fazla işlemcide aynı anda çalıştırılmasıdır.

– Ağ teknolojilerindeki hızlı gelişmeler paralel hesaplama için kolay edinilebilir ve ulaşılabilir donanımlara izin vermektedir.

Page 4: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 4

Moore Yasası (?)

– Intel’in kurucularından Gordon E. Moore tarafından ortaya atılmıştır.

– “Mikroişlemciler içindeki transistör sayısı her iki yılda bir iki katına çıkacaktır.”

– Buna bağlı olarak işlemci hızlarının da iki katına çıkması beklenmektedir.

– Ucuz CMOS transistörlerle üretim, 2008 yılı içinde 45nm üretim teknolojisi bile kullanılsa da hız artışının sonu gelmektedir.

– Intel, çok çekirdekli işlemciler ile Moore yasasını geçerli kılmaya çalışmaktadır.

Page 5: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 5

Butters Yasası

– Ağ dünyasında ise Gerald Butters her dokuz ayda tek bir fiber kablodan geçebilecek veri miktarının iki katına çıktığını öne sürmüştür.

– Özellikle WDM teknolojisi ile optik kablolar üzerinden transfer edilebilecek veri miktarı artmaktadır.

– İşlemcilerden farklı olarak farklı dalga boylarında çalışan lazer ışığı kullanıcı farkında olmadan birleştirilmektedir.

– Lokal ve geniş ağlardaki hızlı teknoloji değişimi ile paralel hesaplama için küme bilgisayarlar, grid hesaplama gibi yöntem ve mimariler ortaya çıkmıştır.

Page 6: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 6

Terminoloji

– Süreç (“Process”) – İş Parçacığı (“Thread”) – Görev (“Task”)

– Hızlanma (“Speedup”) – Ölçeklenebilirlik (“Scalability”)– Verimlilik– Senkronizasyon (“Synchronization”)– Paralel Ek Yükü (“Parallel Overhead”)– Süperbilgisayar

Page 7: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 7

Paralel Hesaplamanın Tarihi

1942 Atanasoff–Berry Computer (ABC) 30 OPS

1946 UPenn ENIAC 100 kOPS

1960 UNIVAC LARC 150 kFLOPS

1976 CRAY-1 250 MFLOPS

1995 CRAY T3E > 1 TFLOPS

1997 Intel ASCI Red 1.3 TFLOPS

2004 IBM Blue Gene/L 280 TFLOPS

2008 IBM Roadrunner 1105 TFLOPS

Page 8: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 8

Paralel Hesaplamanın Tarihi

– TOP500 Listesine göre son 15 sene içinde süperbilgisayar sistemlerinde mimari değişimi

Page 9: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 9

Paralelleştirme

– Bir işin paralelleştirilmesinde programın toplam çalışma zamanını azaltmak amaçlanır.

Page 10: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 10

Paralelleştirme Ek Yükü

– Ek yük: İşlemcilerde fazladan geçen

süre İletişim ek yükü Senkronizasyon ek yükü Programın paralel olmayan/

olamayan parçaları

– Paralel programlamada ek yük ve çalışma zamanı hızlanma ve verimlilik ile ifade edilir.

Çalışma Zamanı

İşlemciZamanı

Haberleşme Ek Yükü

1 işlemci

2 işlemci

4 işlemci

8 işlemci

Çalışma ZamanındaAzalma

Page 11: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 11

Hızlanma ve Verimlilik

– İ sayıda işlemcide programın toplam işlemci zamanını Z(i) olarak ifade edelim.

Hızlanma (i) = Z(1) / Z(i)

Verimlilik (i) = Hızlanma (i) / i

– İdeal durumda:

Z (i) = Z (1) / i

Hızlanma (i) = i

Verimlilik (i) = 1

– Ölçeklenebilir programlar büyük işlemci sayılarında bile verimli kalırlar.

Hızlanma

İşlemci Sayısı

ideal

Süper-lineer

Saturasyon

Felaket

Verimlilik

İşlemci Sayısı

1

Page 12: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 12

Amdahl Yasası

– Amdahl yasası: “Kodun paralel olmayan kısmı (ek yük), kodun ölçeklenebilirliği

konusunda üst limiti oluşturur.”

– Kodun seri kısmını s, paralel kısmını p olarak ifade edersek:

1 = s + p

Z (1) = Z (s) + Z (p)

= Z (1) * (s + p)

= Z (1) * (p + (1-p))

Z (i) = Z (1) * (p/i + (1-p))

Hızlanma (i) = Z (1) / Z (i)

= 1 / (p/i + 1 – p)

Hızlanma (i) < 1 / (1 - p)

Page 13: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 13

Pratikte

– Pratikte programları paralelleştirmek Amdahl yasasında görüldüğü kadar zor değildir.

– Ancak programın çok büyük bir kısmını paralel işlem için harcaması gereklidir. Hızlanma

Kodda Paralel Kısım0% 20% 40% 100%60% 80%

8.0

7.0

6.0

5.0

4.0

3.0

2.0

1.0

1970s1980s

1990sEn iyi paralel kodlar

~99% diliminde

P=2

P=4

P=8

David J. Kuck,Hugh Performance Computing,Oxford Univ.. Press 1996

Page 14: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 14

Coarse/Fine Grained Paralel

– Fine-Grained: Genelde her döngüde

paralelleştirme vardır. Çok sayıda döngü

paralleleştirilir. Kodun çok iyi bilinmesine

gerek yoktur. Çok fazla senkronizasyon

noktası vardır.

– Coarse-Grained: Geniş döngülerle paralleştirme

yapılır. Daha az senkronizasyon

noktası vardır. Kodun iyi anlaşılması gerekir.

Ana Program

A B C D

F E G H I J

K L M N O

p q

r s

t

Coarse-grained

Fine-grained

Page 15: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 15

Ölçeklenebilirlik

– Ölçeklenebilirliği etkileyen diğer faktörler: İş parçacıkları arası yük

dengesizliği : Bir kodun herhangi bir paralel kısmının çalışma zamanı en uzun süren iş parçacığının çalışma zamanıdır. Coarse-Grained programlamada ortaya çıkması daha olasıdır.

Çok fazla senkronizasyon: Kodda küçük döngüler sırasında her seferinde senkronizasyon yapılırsa bu ek yük getirir. Fine-Grained programlamada ortaya çıkması daha olasıdır.

Çalışma Zamanı

i0i1i2i3

başlangıç bitiş

Page 16: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 16

Flynn Sınıflandırması

– Michael J. Flynn paralel bilgisayar mimarilerini komut ve veri akışlarına göre sınıflandırmıştır: SISD (Single Instruction, Single Data)

• PCler, iş istasyonları SIMD (Single Instruction, Multiple Data)

• Vektör makineler, Intel SSE MISD (Multiple Instruction, Single Data)

• Çok fazla örneği yok MIMD (Multiple Instruction, Multiple Data)

• SGI sunucular, küme bilgisayarlar

Page 17: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 17

SISD

İşlemciİşlemciVeri Girişi Veri Çıkışı

Kom

utlar

Page 18: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 18

MISD

GirdiVerisi

Çıktı Verisi

İşlemciA

İşlemciB

İşlemciC

KomutAkışı A

Komut Akışı B

Komut Akışı C

Page 19: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 19

SIMD

KomutAkışı

İşlemci

A

İşlemci

B

İşlemci

C

Girdi AkışıA

Girdi AkışıB

Girdi AkışıC

Çıktı AkışıA

Çıktı AkışıB

Çıktı Akışı C

Page 20: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 20

MIMD

İşlemci

A

İşlemci

B

İşlemci

C

GirdiAkışı A

GirdiAkışı B

GirdiAkışı C

ÇıktıAkışı A

ÇıktıAkışı B

ÇıktıAkışı C

KomutAkışı A

KomutAkışı B

KomutAkışı C

Page 21: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 21

Ortak Bellek MIMD

BELLEK

YOLU

BELLEK

YOLU

BellekBellek

İşlemciA

İşlemciA

İşlemciB

İşlemciB

İşlemciC

İşlemciC

BELLEK

YOLU

Page 22: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 22

Dağıtık Bellek MIMD

BELLEK

YOLU

İşlemciA

İşlemciA

İşlemciB

İşlemciB

İşlemciC

İşlemciC

BELLEK

YOLU

BELLEK

YOLU

BELLEK A

BELLEK A

BELLEK B

BELLEK B

BELLEK C

BELLEK C

IPC

Kanalı

IPC

Kanalı

Page 23: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 23

Terminoloji - II

– Son senelerde ağ hızındaki önemli artış ve çoklu çekirdekli işlemcilerin kullanılmaya başlaması ile paralel hesaplama konusunda birçok terminoloji karışıklığı olmaya başlamıştır. MPP, küme bilgisayarlarla hesaplama, dağıtık hesaplama, grid hesaplama...

– Paralel hesaplamada yaygın kullanılan terimlerden bazıları şunlardır: Multiprocessing: İki veya daha fazla işlemcinin aynı bilgisayar sistemi

içinde kullanılmasıdır. Dağıtık hesaplama: Ağ üzerinden iki veya daha fazla bilgisayar üzerinde

aynı anda belli bir programa ait parçaların çalıştırıldığı hesaplama.

Page 24: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 24

Paralel Programlama Modelleri

• Ortak Hafıza Modelleri– Dağıtık Ortak Bellek– Posix Threads– OpenMP – Java Threads (HKU JESSICA, IBM cJVM)

• Mesaj Tabanlı Modeller– PVM – MPI

• Hibrid Modeller– Ortak ve dağıtık hafızayı birlikte kullananlar– OpenMP ve MPI birlikte kullananlar

• Nesne ve Servis Tabanlı Modeller– Geniş alanda dağıtık hesaplama teknolojileri

Nesne: CORBA, DCOM Servis: Web servisleri tabanlı

• Bilimsel araştırma projelerinde sıklıkla Derleyici tarafından paralelleştirilen ortak bellek tabanlı programlar MPI gibi mesaj paylaşımı tabanlı programlar kullanılmaktadır.

• Belirli bir programlama modelinin seçimi, genellikle uygulama gereksinimi, kişisel tercih veya donanımla ilgilidir.

• Ortak hafızaya sahip makineler, hem OpenMP gibi SMP hem de MPI gibi mesaj paylaşımı tabanlı modelleri çalıştırabilirler.

Page 25: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 25

sayısını OpenMP ile hesaplamak

= = 0

1

4(1+x2)

dx0<i<N

4N(1+((i+0.5)/N)2)

#define n 1000000main() {

double pi, l, ls = 0.0, w = 1.0/n;int i;

#pragma omp parallel private(i,l) reduction(+:ls) {#pragma omp for

for(i=0; i<n; i++) {l = (i+0.5)*w;ls += 4.0/(1.0+l*l);

}#pragma omp master

printf(“pi is %f\n”,ls*w);#pragma omp end master }}

• Seri programlama şeklinde yazılıyor• Otomatik yük dağılımı yapılıyor.• Bütün değişkenler paylaşılıyor.

Page 26: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 26

sayısını MPI ile hesaplamak

= = 0

1

4(1+x2)

dx0<i<N

4N(1+((i+0.5)/N)2)

#include <mpi.h>#define N 1000000main(){

double pi, l, ls = 0.0, w = 1.0/N; int i, mid, nth;

MPI_init(&argc, &argv);MPI_comm_rank(MPI_COMM_WORLD,&mid);MPI_comm_size(MPI_COMM_WORLD,&nth);

for(i=mid; i<N; i += nth) {l = (i+0.5)*w;ls += 4.0/(1.0+l*l);

}MPI_reduce(&ls,&pi,1,MPI_DOUBLE,MPI_SUM,0,MPI_COMM_WORLD);if(mid == 0) printf(“pi is %f\n”,pi*w);MPI_finalize();

}

• Önce iş parçacıkları belirleniyor• Bütün değişkenler sürece özel kalıyor.• Uygulama dışında yük dağılımı ve veri paylaşımı yapılıyor.

Page 27: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 27

Paralel Uygulamalarda Bağlantı

– Sıkı bağlı sistemler: Süreçler arasında yoğun haberleşme Gecikme süresine hassas Ortak Bellek Paralel Dağıtık Bellek Paralel

Page 28: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 28

Paralel Uygulamalarda Bağlantı

– Gevşek bağlı sistemler: Süreçler arasında haberleşme azdır veya hiç yoktur. Gecikme süresine hassas değillerdir. Ancak bant genişliği veri transferi

için etkili olabilir.

– Parametrik çalışan uygulamalar Süreçler arasında haberleşme yoktur. Kümelerde, grid altyapılarında çalışan uygulamaların çoğunluğunu

oluştururlar.

Page 29: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 29

Paralel Donanım Mimarileri

– SMP makineler– MPP makineler– NUMA makineler– Superscalar işlemciler– Vektör makineler– Küme bilgisayarlar

Page 30: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 30

SMP

– SMP, birden fazla eş işlemcinin ortak bir belleğe bağlandığı çok işlemcili bir bilgisayar mimarisidir.

– SMP sistemler, görevleri işlemciler arasında paylaşabilirler.– SMP sistemler, paralel hesaplama için kullanılan en eski sistemlerdir

ve hesaplamalı bilimlerde yoğun bir şekilde kullanılırlar.

Page 31: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 31

MPP

– MPP, binlerce işlemci kullanılabilen çok işlemcili bir mimaridir.– Bir MPP sisteminde her işlemci kendi belleğine ve işletim sistemi

kopyasına sahiptir.– MPP sistemler üzerinde çalışacak uygulamalar eş zamanda

çalışacak eş parçalara bölünebilmelidirler.– MPP sistemlere yeni işlemci ekledikten sonra uygulamalar yeni

paralel kısımlara bölünmelidirler. SMP sistemler ise bundan çok iş parçacığı çalıştırabilir yapıları sayesinde hemen faydalanırlar.

Page 32: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 32

NUMA

– NUMA, çok işlemcili makinelerde bellek erişim zamanının bellek yerine göre değiştiği bir bellek tasarımıdır.

– İlk defa 1990’larda ortaya çıkmıştır. – Modern işlemciler, belleklere hızlı bir şekilde erişmeye ihtiyaç

duyarlar. NUMA, istenen verinin “cache” bellekte bulunamaması, belleğin başka işlemci tarafından kullanılması gibi performans sorunlarını her işlemciye bellek vererek aşar.

– Intel Itanium, AMD Opteron işlemciler ccNUMA tabanlıdır.

Page 33: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 33

Superscalar İşlemciler

– 1998 senesinden beri üretilen bütün genel amaçlı işlemciler “superscalar” işlemcilerdir.

– “Superscalar” işlemci mimarisi, tek bir işlemcide makine kodu seviyesinde paralellik sağlar.

– “Superscalar” bir işlemci tek bir basamakta birden fazla işlem yapar.

Page 34: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 34

Vektör Makineler

– Vektör işlemciler, aynı anda birden fazla veri üstünde matematik işlem yapabilen işlemcilerdir.

– Şu anda süperbilgisayar dünyasında vektör işlemciler çok az kullanılmaktadırlar.

– Ancak bugün çoğu işlemci vektör işleme komutları içermektedirler (Intel SSE).

– Vektör işlemciler, aynı matematiksel komutu farklı veriler üzerinde defalarca çalıştırmak yerine bütün veri yığınını alıp aynı işlemi yapabilirler.

Page 35: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 35

Küme Bilgisayarlar

– Hesaplamada küme bilgisayar kullanımı 1994 senesinde NASA’da Beowulf projesi ile başlamıştır. 16 Intel 486 DX4 işlemci ethernet ile bağlanmıştır.

– Yüksek performanslı hesaplama, artık küme bilgisayarlarla hesaplama halini almıştır.

– Küme bilgisayar, birlikte çalışmak üzere bağlanmış birden fazla sunucudan oluşur.

– En önemli dezavantajı kullanıcıya tek sistem arayüzü sunamamasıdır.

Page 36: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 36

Neden kümeleme?

– Fiyat / performans– Standardı oturmuş işletim sistemi, mesajlaşma gibi yazılım

katmanları (Linux, MPI, OpenIB)– Genişleyebilir, standardı oturmuş bağlantı teknolojileri (Gigabit

Ethernet, Infiniband, 10 Gigabit Ethernet)– Son senelerde süperbilgisayarların büyük bir kısmı küme

bilgisayarlardan oluşmaktadır:

Page 37: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 37

Kümeleme nedir?

– Kümeleme iki veya daha fazla bilgisayarı: Uygulama veya servis kullanılabilirliğini arttırmak için, Yük dengelemek için, Dağıtık ve yüksek başarımlı hesaplama için ağ ile birleştirmektir.

– Kümeleme değişik sistem katmanlarında gerçekleştirilebilir: Depolama: Paylaşılmış disk, ikizlenmiş disk, paylaşılmayan veri İşletim Sistemi: UNIX/Linux kümeleri, Microsoft (?) kümeleri Uygulama Programlama Arayüzü: PVM, MPI Uygulamalar

Page 38: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 38

Dezavantajları

– Küme bilgisayarların önemli mimari dezavantajları vardır: Ortak bellek yoktur. İletişim bellek okuma/yazma hızına göre yavaştır.

– Bu kısıtlamalar uygulama için önemlidir. Uygulamanın bunlara göre de geliştirilmesi gerekebilir.

– Güç ve klima için genelde daha fazla miktarda bütçe gerekir.

– Ölçeklenebilirlik yakalamak bazı uygulamalar için zordur.

Page 39: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 39

HA – Yüksek Kullanılabilirlik Kümeleri

– HA kümeleri, servislerin ayakta kalma sürelerini arttırmak içindir.

– Aynı servisin birden fazla kopyası çevrimiçi veya çevrimdışı bekletilir. Serviste bir sorun olduğu zaman devreye alınır.

– Linux-HA projesi, sıklıkla bu amaçla kullanılan bir yazılımdır.

Page 40: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 40

Yük Dengeleme için Kümeleme

– Yük dengeleme kümeleri, ön arayüzden gelen bütün iş yükünü karşılayıp arkadaki sunuculara aktarırlar.

– Bu kümeler, sunucu çiftliği olarakta adlandırılırlar.

– LSF, MAUI, Sun Grid Engine gibi birçok yük dengeleyici yazılım vardır.

– “Linux Virtual Server” projesi de oldukça sık kullanılan bir yük dengeleyici çözümüdür.

Page 41: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 41

Veritabanı Kümeleri

– Son senelerde birçok veritabanı üreticisi, yüksek kullanılabilirlik, genişleyebilirlik ve yüksek başarımlılık için kümeleme teknolojisini için ürün çıkarmıştır.

– Bu çözümlerin bir kısmı paylaştırılmış disk alanı, bir kısmı ayrık veri alanları ile çözüm sunmaktadır.

Page 42: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 42

YBH Kümeleri

– Bu kümeler, zaman kritik paralel, seri veya parametrik hesaplama işlerini çalıştırmak için kullanılır.

– Normal bir bilgisayarda inanılmaz sürede bitebilecek işlemci kritik uygulamaları çalıştırırlar.

– Genellikle normal PC veya sunucular ve Linux ile oluşturulan kümeler Beowulf ismini alırlar.

– MPI, YBH kümelerinde en çok tercih edilen haberleşme kütüphanesidir.

Page 43: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 43

YBH Küme Mimarileri

– Yüksek başarımlı hesaplama ihtiyacını karşılamak isteyen bir kullanıcının önünde iki seçenek vardır: Uygulamasına göre küme bilgisayarı edinmek. Erişebildiği küme bilgisayarın özelliklerine göre uygulamasını

geliştirmek, değiştirmek veya optimize etmek.

– Her iki durumda da bilinmesi veya hesaplanması gerekenler: Uygulamanın özellikleri, gereksinimleri (yüksek bellek, her sunucuda

yüksek miktarda geçici disk alanı, özel kütüphaneler ...), Kümenin büyüklüğü (işlemci, bellek, disk), Ağ bağlantı biçimi (gigabit ethernet, infiniband), İşletim sistemi (Linux, Microsoft (?) ...), Birçok kullanıcı veya grubun birlikte çalışabilirliği, Derleyiciler (GNU, Intel, Portland Group ...)

Page 44: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009

Mimari

Page 45: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 45

Sunucular

– Günümüzde 1U boyutta 16 çekirdekli sunucular almak mümkün olmaktadır.

– Küme bilgisayarlarda sunucu seçimi konusunda birçok faktör vardır: İşlemciler : Tek çekirdek, çok çekirdek, çoklu işlemci soketi ... Anakart : PCI-X, PCI-Express, HyperTransport ... Sunucu form faktörü : Blade, rack monte, PC ... Bellek : Boyutu, DDR-2, DDR-3, FBDIMM … Disk : Boyutu, SATA, SCSI, SAS … Ağ bileşenleri : Gigabit Ethernet, Infiniband, Quadrics ...

Page 46: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 46

Bileşenlerin bant genişliği

SATA-300 300 MB/s

PC2-5300 5.3 GB/s

Infiniband DDR 4x 2 GB/s

Page 47: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 47

Gecikme Süreleri

Page 48: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 48

Ağ Bağlantısı

– Genellikle tek bir kümede birden fazla ağ bulunur: Kullanıcı ağı:

• İş göndermek, görselleştirme, sonuç görüntüleme için kullanılır.

• Grid haberleşmesi için de kullanılabilir.

• Kümelere bağlanmak için genellikle ssh kullanılır.

Yönetim ağı:• İş planlamak, sunucuları izlemek, kurmak için

kullanılır.

• Genellikle IP üzerinden çalışırlar.

• Ganglia gibi yazılımlar multicast çalışırlar.

Page 49: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 49

IPC Ağı

– Küme bilgisayar performansı ve verimi IPC ağı tarafından belirlenir. Haberleşmede harcanan her fazla süre daha az işlem zamanı demektir.

– Günümüzde küçük kümeler ve gevşek bağlı uygulamalar için gigabit ethernet ideal bir çözümdür.

– Büyük kümeler ve sıkı bağlı uygulamalar için Infiniband, Quadrics gibi çözümler vardır.

– Uygulama gereksinimlerini anlamak teknoloji seçiminde çok önemlidir.

Page 50: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 50

Depolama

– Küme bilgisayarlarda çalışan kullanıcıların farklı depolama ihtiyaçları bulunur. Ev dizini, uygulamalar için ortak veri alanı Yığın veri saklamak için veri ambarları Yedekleme ve yığın veriler için tape üniteleri Bazı uygulamalar için sunucularda geçici paylaşılmayan disk alanları

– Küme bilgisayarlarda hesaplama yapılan sunucularda kurulum diski veya geçici disk alanı bulundurmak gerekli değildir. Ancak çoğu durumda maliyeti düşüren bu çözüm tercih edilmemektedir.

– Uygulama performansı için özellikle paylaşılan disk alanlarının ihtiyaca uygun tasarlanması gerekir.

Page 51: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 51

Dosya Sistemleri

– Paralel olmayanlar: NFS, CIFS

– Paralel (“Metadata”) Lustre : Ölçeklenebilir Panasas : Ölçeklenebilir

– Paralel (“Metadata” olmadan) XFS IBM GPFS : Ölçeklenebilir PVFS Oracle Cluster FS

Page 52: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009

Mimari - Yazılım

Page 53: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 53

MPI

– MPI mesajlaşarak çalışan bir kütüphanedir. Ne bir dil veya derleyici spesifikasyonudur. Bir ürüne özel değildir. Ne de bir işletim sistemi sürücüsüdür.

– Çok işlemcili bilgisayar ve kümelerde paralel uygulamaların çalışması için tasarlanmıştır.

– Heterojen birçok hesaplama ortamını destekler.

Page 54: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009

Küme Bilgisayarlar - Örnek: Deniz

Page 55: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009

Örnek: TR-10-ULAKBIM

Page 56: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 56

Paralel Uygulamalar

Page 57: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 57

Dünya Simülasyonu

• Gelişmiş nümerik simülasyon yöntemleri ile sanal bir dünya yaratarak gelecekte dünyanın nasıl görüneceğini hesaplayan bir Japonya’da bir projedir.

• 40 TFLOPS işlem kapasitesine sahiptir.

• Toplam 10 TByte belleğe sahiptir.• Her birinde 8 vektör işlemci bulunan

640 işlemci ucundan oluşur.

Page 58: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 58

TeraGrid

NCSA: Compute IntensiveSDSC: Data Intensive PSC: Compute Intensive

IA64

IA64 Pwr4EV68

IA32

IA32

EV7

IA64 Sun

10 TF IA-64128 large memory nodes

230 TB Disk Storage3 PB Tape Storage

GPFS and data mining

4 TF IA-64DB2, Oracle Servers500 TB Disk Storage6 PB Tape Storage1.1 TF Power4

6 TF EV6871 TB Storage

0.3 TF EV7 shared-memory150 TB Storage Server

1.25 TF IA-6496 Viz nodes

20 TB Storage

0.4 TF IA-64IA32 Datawulf80 TB Storage

Extensible Backplane NetworkLA

HubChicago

Hub

IA32

Storage Server

Disk Storage

Cluster

Shared Memory

VisualizationCluster

LEGEND

30 Gb/s

IA64

30 Gb/s

30 Gb/s30 Gb/s

30 Gb/s

Sun

Sun

ANL: VisualizationCaltech: Data collection analysis

40 Gb/s

Backplane Router

PSC integrated Q3 03

Page 59: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 59

Scale> 49 ülkede 269 site

~ 95.000 işlemci/çekirdek

> 680 PB veri alanı

> Günde onbinlerce çalışan iş

> Yüzden fazla kayıtlı sanal organizasyon

EGEE Altyapısı

Page 60: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 60

• LHC 7’şer TeV’lik enerjiye sahip iki proton demetini çarpıştıracak.

• En yeni süperiletken teknolojisini kullanarak mutlak sıfırın hemen üstünde – 2710C’de çalışacak. ,

• 27 km’lik çevresiyle dünyadaki en büyük süperiletken uygulaması olacak.

LHC 2007’de çalışmaya

başlayacak

Dedektörleri birer saray büyüklüğünde olan dört deney:

ALICEATLASCMSLHCb

LHC

Page 61: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 61

• Saniyede 40 milyon olay

• Filtrelemeden sonra saniyede 100 ilginç olay

• Her olayda bir megabitlik dijital veri = 0.1 Gigabit/s’lik veri kayıt hızı

• Yılda 1010 olay kaydı = 10 Petabyte/yıllık veri üretimi

CMS LHCb ATLAS ALICE

1 Gigabyte (1GB) = 1000MBA DVD filmi

1 Terabyte (1TB)= 1000GBDünyanın yıllık kitap üretimi

1 Petabyte (1PB)= 1000TBBir LHC deneyinin yıllık veri üretimi

1 Exabyte (1EB)= 1000 PBDünyanın yıllık bilgi üretimi

LHC Verileri

Page 62: Giriş ve Motivasyon

Enabling Grids for E-sciencE

EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 62