Giriş ve Motivasyon
Transkript
Giriş ve Motivasyon
Enabling Grids for E-sciencE Giriş ve Motivasyon Onur Temizsoylu BAŞARIM09 ODTÜ, Ankara www.eu-egee.org EGEE-III INFSO-RI-222667 EGEE and gLite are registered trademarks İçerik Enabling Grids for E-sciencE – – – – 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 EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 2 Neden Paralel Hesaplama Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 3 Moore Yasası (?) Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 4 Butters Yasası Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 5 Terminoloji Enabling Grids for E-sciencE – 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 EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 6 Paralel Hesaplamanın Tarihi Enabling Grids for E-sciencE 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 EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 7 Paralel Hesaplamanın Tarihi Enabling Grids for E-sciencE – TOP500 Listesine göre son 15 sene içinde süperbilgisayar sistemlerinde mimari değişimi EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 8 Paralelleştirme Enabling Grids for E-sciencE – Bir işin paralelleştirilmesinde programın çalışma zamanını azaltmak amaçlanır. EGEE-III INFSO-RI-222667 toplam BAŞARIM09, 18 Nisan 2009 9 Paralelleştirme Ek Yükü Enabling Grids for E-sciencE İş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. İşlemci Zamanı Haberleşme Ek Yükü 8 işle 4 i mci şle mci 2 iş le mc i – Ek yük: 1 ci m le ş i Çalışma Zamanında Azalma Çalışma Zamanı EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 10 Hızlanma ve Verimlilik Enabling Grids for E-sciencE – İ 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 Hızlanma ideal Süper-lineer Saturasyon Felaket – İdeal durumda: Z (i) = Z (1) / i Hızlanma (i) = i Verimlilik (i) = 1 Verimlilik İşlemci Sayısı 1 – Ölçeklenebilir programlar büyük işlemci sayılarında bile verimli kalırlar. İşlemci Sayısı EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 11 Amdahl Yasası Enabling Grids for E-sciencE – 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) EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 12 Pratikte Enabling Grids for E-sciencE – 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 8.0 P=8 7.0 6.0 5.0 P=4 4.0 3.0 P=2 2.0 1.0 0% David J. Kuck, Hugh Performance Computing, Oxford Univ.. Press 1996 EGEE-III INFSO-RI-222667 20% 40% 60% 80% 100% Kodda Paralel Kısım 1970s 1980s 1990s En iyi paralel kodlar ~99% diliminde BAŞARIM09, 18 Nisan 2009 13 Coarse/Fine Grained Paralel Enabling Grids for E-sciencE – 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 Coarse-grained A E B F C G K H L p I J N M O q r s t EGEE-III INFSO-RI-222667 D Fine-grained BAŞARIM09, 18 Nisan 2009 14 Ölçeklenebilirlik Enabling Grids for E-sciencE – Ölçeklenebilirliği etkileyen diğer faktörler: İş parçacıkları arası yük dengesizliği : Bir kodun i0 herhangi bir paralel kısmının i1 çalışma zamanı en uzun süren iş i2 parçacığının çalışma zamanıdır. i3 Coarse-Grained programlamada başlangıç 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. FineGrained programlamada ortaya çıkması daha olasıdır. EGEE-III INFSO-RI-222667 Çalışma Zamanı bitiş BAŞARIM09, 18 Nisan 2009 15 Flynn Sınıflandırması Enabling Grids for E-sciencE – 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 EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 16 SISD Enabling Grids for E-sciencE Komutlar Veri Girişi EGEE-III INFSO-RI-222667 İşlemci Veri Çıkışı BAŞARIM09, 18 Nisan 2009 17 MISD Enabling Grids for E-sciencE Komut Akışı A Komut Akışı B Komut Akışı C İşlemci A Girdi Verisi Çıktı Verisi İşlemci B İşlemci C EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 18 SIMD Enabling Grids for E-sciencE Komut Akışı Girdi Akışı A Girdi Akışı B Girdi Akışı C EGEE-III INFSO-RI-222667 Çıktı Akışı A İşlemci A Çıktı Akışı B İşlemci B İşlemci C Çıktı Akışı C BAŞARIM09, 18 Nisan 2009 19 MIMD Enabling Grids for E-sciencE Komut Akışı A Girdi Akışı A Girdi Akışı B Girdi Akışı C EGEE-III INFSO-RI-222667 Komut Akışı B Komut Akışı C Çıktı Akışı A İşlemci A Çıktı Akışı B İşlemci B İşlemci C Çıktı Akışı C BAŞARIM09, 18 Nisan 2009 20 Ortak Bellek MIMD Enabling Grids for E-sciencE İşlemci A B E L L E K Y O L U İşlemci B B E L L E K Y O L U İşlemci C B E L L E K Y O L U Bellek EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 21 Dağıtık Bellek MIMD Enabling Grids for E-sciencE IPC IPC Kanalı Kanalı İşlemci A B E L L E K Y O L U BELLEK A EGEE-III INFSO-RI-222667 İşlemci B B E L L E K Y O L U BELLEK B İşlemci C B E L L E K Y O L U BELLEK C BAŞARIM09, 18 Nisan 2009 22 Terminoloji - II Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 23 Paralel Programlama Modelleri Enabling Grids for E-sciencE • 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 24 π sayısını OpenMP ile hesaplamak Enabling Grids for E-sciencE π= 1 4 dx (1+x2) 0 =0<i<N Σ 4 N(1+((i+0.5)/N)2) #define n 1000000 main() { 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 25 π sayısını MPI ile hesaplamak Enabling Grids for E-sciencE π= 1 4 dx (1+x2) 0 =0<i<N Σ 4 N(1+((i+0.5)/N)2) #include <mpi.h> #define N 1000000 main() { 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 26 Paralel Uygulamalarda Bağlantı Enabling Grids for E-sciencE – 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 EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 27 Paralel Uygulamalarda Bağlantı Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 28 Paralel Donanım Mimarileri Enabling Grids for E-sciencE – – – – – – SMP makineler MPP makineler NUMA makineler Superscalar işlemciler Vektör makineler Küme bilgisayarlar EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 29 SMP Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 30 MPP Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 31 NUMA Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 32 Superscalar İşlemciler Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 33 Vektör Makineler Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 34 Küme Bilgisayarlar Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 35 Neden kümeleme? Enabling Grids for E-sciencE – 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: EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 36 Kümeleme nedir? Enabling Grids for E-sciencE – 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 EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 37 Dezavantajları Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 38 HA – Yüksek Kullanılabilirlik Kümeleri Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 39 Yük Dengeleme için Kümeleme Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 40 Veritabanı Kümeleri Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 41 YBH Kümeleri Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 42 YBH Küme Mimarileri Enabling Grids for E-sciencE – 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 ...) EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 43 Mimari Enabling Grids for E-sciencE EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 Sunucular Enabling Grids for E-sciencE – 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 ... EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 45 Bileşenlerin bant genişliği Enabling Grids for E-sciencE Infiniband DDR 4x 2 GB/s SATA-300 300 MB/s PC2-5300 5.3 GB/s EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 46 Gecikme Süreleri Enabling Grids for E-sciencE EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 47 Ağ Bağlantısı Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 48 IPC Ağı Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 49 Depolama Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 50 Dosya Sistemleri Enabling Grids for E-sciencE – Paralel olmayanlar: NFS, CIFS – Paralel (“Metadata”) Lustre : Ölçeklenebilir Panasas : Ölçeklenebilir – Paralel (“Metadata” olmadan) XFS IBM GPFS : Ölçeklenebilir PVFS Oracle Cluster FS EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 51 Mimari - Yazılım Enabling Grids for E-sciencE EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 MPI Enabling Grids for E-sciencE – 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 53 Küme Bilgisayarlar - Örnek: Deniz Enabling Grids for E-sciencE EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 Örnek: TR-10-ULAKBIM Enabling Grids for E-sciencE EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 Paralel Uygulamalar Enabling Grids for E-sciencE EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 56 Dünya Simülasyonu Enabling Grids for E-sciencE • • • • 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. EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 57 TeraGrid Enabling Grids for E-sciencE Caltech: Data collection analysis 0.4 TF IA-64 IA32 Datawulf 80 TB Storage Sun IA64 ANL: Visualization LEGEND Cluster Visualization Cluster Storage Server Shared Memory IA32 IA64 IA32 Disk Storage Backplane Router 1.25 TF IA-64 96 Viz nodes 20 TB Storage IA32 Extensible Backplane Network LA Hub 30 Gb/s 40 Gb/s 30 Gb/s 30 Gb/s 30 Gb/s 30 Gb/s 4 TF IA-64 DB2, Oracle Servers 500 TB Disk Storage 6 PB Tape Storage 1.1 TF Power4 IA64 Chicago Hub Sun IA64 10 TF IA-64 128 large memory nodes 230 TB Disk Storage 3 PB Tape Storage GPFS and data mining Pwr4 SDSC: Data Intensive NCSA: Compute Intensive EV7 EV68 6 TF EV68 71 TB Storage 0.3 TF EV7 shared-memory 150 TB Storage Server Sun PSC: Compute Intensive PSC integrated Q3 03 EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 58 EGEE Altyapısı Enabling Grids for E-sciencE 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-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 59 LHC Enabling Grids for E-sciencE • LHC 7’şer TeV’lik enerjiye sahip iki proton demetini çarpıştıracak. LHC 2007’de çalışmaya • En yeni süperiletken teknolojisini kullanarak mutlak sıfırın hemen üstünde – 2710C’de çalışacak. , Dedektörleri birer saray büyüklüğünde olan dört deney: • 27 km’lik çevresiyle dünyadaki en büyük süperiletken uygulaması olacak. ALICE ATLAS CMS LHCb EGEE-III INFSO-RI-222667 başlayacak BAŞARIM09, 18 Nisan 2009 60 LHC Verileri Enabling Grids for E-sciencE 1 Gigabyte (1GB) = 1000MB A DVD filmi • Saniyede 40 milyon olay 1 Terabyte (1TB) = 1000GB Dünyanın yıllık kitap üretimi • Filtrelemeden sonra saniyede 100 ilginç olay 1 Petabyte (1PB) = 1000TB Bir LHC deneyinin yıllık veri üretimi • 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 EGEE-III INFSO-RI-222667 LHCb ATLAS 1 Exabyte (1EB) = 1000 PB Dünyanın yıllık bilgi üretimi ALICE BAŞARIM09, 18 Nisan 2009 61 Enabling Grids for E-sciencE EGEE-III INFSO-RI-222667 BAŞARIM09, 18 Nisan 2009 62
Benzer belgeler
What is High Performance Computing?
– 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
tra...