PARALEL HESAPLAMA Dr. Ali Evren Göksungur.

Slides:



Advertisements
Benzer bir sunumlar
ÇANKIRI KARATEKİN ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ ELEKTRİK-ELEKTRONİK MÜHENDİSLİĞİ BÖLÜMÜ
Advertisements

PARALEL HESAPLAMA ŞEYMA ŞAFAK
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar)
BİLGİSAYAR NEDİR?.
Bilgi Teknolojisinin Temel Kavramları
İşletim Sistemlerine Giriş
Ders Adı: Bilgisayar Donanımına Giriş
Dağıtık Simülasyon Sistemlerinde Sanal Global Zaman Hesaplamaları
Mete Özay, Tuğba Taşkaya Temizel Enformatik Enstitüsü ODTÜ ODTÜ Kampüs Izgara Hesaplama Uygulaması.
Bölüm 1: Introductions (Tanıtım,Tanım)
Bilgi Teknolojisinin Temel Kavramları
MİMARİ ESASLAR Bir bilgisayarın komut kümesi, programcının makineyi programlarken kullanabileceği ilkel emirleri veya makine komutlarının tamamının oluşturduğu.
CLUSTER COMPUTİNG (KÜME HESAPLAMA )
BTP 108 BİLGİSAYAR AĞ SİSTEMLERİ AĞ KAVRAMI Birden çok bilgisayarın birbirine bağlı olarak kullanılmasıyla oluşturulan çalışma biçimine bilgisayar ağı.
Dağıtık Ortak Hafızalı Çoklu Mikroişlemcilere Sahip Optik Tabanlı Mimari Üzerinde Dizin Protokollerinin Başarım Çözümlemesi I. Ulusal Yüksek Başarım ve.
Fork and Join Framework
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Paralel Hesaplama Onur Temizsoylu Grid ve.
CPU (Merkezi İşlem Ünitesi)
Çok Etmenli Sistemlerde Yük Dengeleme ve Yük Paylaşımı
EGEE-II INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Küme Bilgisayarlar Onur Temizsoylu Grid ve.
BİLGİ TEKNOLOJİSİNİN TEMEL KAVRAMLARI
İşletim Sistemlerinin Türleri
MPI İle Paralel Programlama Tunahan Altıntop
Yazılım Gelişimi. Donanım gelişimine paralel olarak süren yazılım gelişimi, son on yılda kayda değer bir ivmelenme ile bilgisayarları, herhangi bir uzmanlık.
ODTÜ Bilgisayar Mühendisliği
E-Öğrenme Nedir?
Bilişim Teknolojileri Okuryazarlığı
AĞ İŞLETİM SİSTEMLERİ Öğr. Gör. Mustafa SARIÖZ
CPU.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Giriş ve Motivasyon Onur Temizsoylu BAŞARIM09.
İŞLEMCİ MİMARİLERİ – Derya Işık
Ümran Onay.
Bilişim Teknolojileri Öğretmeni İsmail ÖZTÜRK
Bilgisayarın Gelişimi
YAZILIM.
GRİD HESAPLAMA PARALEL HESAPLAMA
BULUT BİLİŞİM İKRAM DARA BİLEM
Türkiye’de Yüksek Başarımlı Hesaplama Prof. Dr. Cevdet Aykanat Bilkent Üniversitesi Bilgisayar Mühendisliği Bölümü.
Bilgi Teknolojisinin Temel Kavramları
TALEP KATILIMI VE TALEP TARAFI YÖNETİMİ Prof. Dr. Ramazan BAYINDIR
BİLGİSAYAR Kendisine verilen bilgiler üzerinde aritmetiksel, mantıksal ve karşılaştırma işlemleri yaparak sonuçları çıktı birimlerine gönderen elektronik.
İnsan Kaynakları Bilgi Sistemleri
Hafta2 Bilgisayar Donanımı Dersi
Bilgi Teknolojisinin Temel Kavramları
BİLGİSAYAR MİMARİLERİ 12.Hafta: Çok İşlemcili Sistemler
BİLGİSAYAR MİMARİLERİ 1.Hafta: Bilgisayar Mimarisine Giriş
Kurumsal Ağlarda Uzak ve Merkezi İşlem Birimlerinin Sanallaştırılması: Bir Uygulama Emrah ÇOLAK, SGK Aydın ÇETİN, Gazi Üniversitesi ŞUBAT 2016.
USB Universal Serial Bus Evrensel Seri veriyolu. Tak çalıştır aygıtların sistemlerde daha kolay bir şekilde kullanımını sağlamak amacıyla geliştirilmiş.
Genel Kavramlar Bölüm - 1. YAZILIM Bilgisayara işlemler yaptırabilmek ve karar verdirtebilmek için yazılan kalıplara denir. Yazılım, genel olarak donanım.
Barış Ceviz Yazılım Geliştiricisi Yazılım, Yazılımcı, Yazılım Dilleri.
FAT VE NTFS DOSYA YAPISI
BELLEKLER Bellekler, bilgi depolama üniteleridir. Bilgisayarlar her türlü bilgiyi (resim, ses, yazı gibi) ikilik sayılar ile kullanır ve saklar. Bir bilgi.
Bilgisayar Donanımı Dersi
SUNUM KONU BAŞLIKLARI->
SÜPERBİLGİSAYARLAR ve BEOWULF KÜMELERİ Niyazi ELVAN.
Cluster ile Linux'ta Kümeleme Özgür Yazılım ve Açık Kaynak Günleri 2006 Ali Erdinç Köroğlu.
SANALLAŞTIRMA ÇEŞİTLERİ VE YAZILIMLARI
GPU Önbelleklerinde Yerelliğe Bağlı Dinamik Yazma Politikası
Berkay Ak STORAGE.
BİLGİSAYAR NEDİR?.
Mikrobilgisayar Tasarım Yapıları
MALTEPE ÜNİVERSİTESİ Paralel Hesaplama MATLAB ve Paralel Hesaplama
Bir bilgisayar sisteminin 4 bileşeni vardır;
Problem Çözme Yaklaşımları
Bilgisayar Bilimi Problem Çözme Süreci-2.
Bilgisayar Mühendisliğine Giriş
Mikrobilgisayar Tasarım Yapıları
BİLGİSAYAR MÜHENDİSLİĞİNE GİRİŞ
NİŞANTAŞI ÜNİVERSİTESİ
Bilgisayar Donanımı Dersi Bilgisayarın Mimarı Yapısı ve Çalışma Mantığı.
Sunum transkripti:

PARALEL HESAPLAMA Dr. Ali Evren Göksungur

Günümüzün hızla gelişen teknolojisi bilgisayarlar, yazılımların ihtiyaçlarına cevap vermekte zorlanmaktadırlar. Yazılımlar her geçen gün daha fazla hafıza, daha hızlı grafik kartı ve daha hızlı bilgisayarlara ihtiyaç duymaktadırlar. Daha fazla yarıiletken kullanarak hafıza arttırılabilmektedir. Fakat bilgisayarların hızı fiziksel limitlere dayandığı için saat hızını arttırmak işlemcinin yanlış işlem yapmasına ya da ısınarak yanmasına sebep olmaktadır. Bu sorunu çözmek için mühendisler daha fazla işlemciyi paralel olarak aynı iş üzerinde çalışacak şekilde üretmeyi başarmışlardır. Günümüzde akıllı cep telefonlarında bile çift çekirdekli işlemciler oldukça yaygın olarak kullanılmaktadır. Bu paralel işlemci mimarisini etkin olarak kullanabilmek için yazılımların paralel olarak programlanması gerekmektedir. Peki, “paralel hesaplama” nedir?

Paralel hesaplama; Bir problemin veya bir görevin sonuçlarını daha hızlı elde etmek için bu problemi parçalara bölerek çoklu işlemcilerde eş zamanlı olarak işletmek, paralel hesaplama olarak adlandırılır. Paralel hesaplama ile performans artar, problemin çözümü için gerekli olan süre kısalır yani; büyük sorunlar daha az sürede çözülür. Bilimdeki gelişmeler paralel hesaplamaya gereksinim duyar.

Örneğin ; bir işlemci saniyede 3 milyon işlem yapıyorsa, iki işlemci bu işlemleri yarım saniyede  yapar diyebiliriz. Tabi, bazı mühendislik alanlarında, yüksek kapasiteli bir işlemcinin bile, aylar hatta  yıllar alacak şekilde hesaplamalar yapması gerekebilir. Bu tip durumlarda, bu işlemleri daha kısa sürede  bitirmek için, diğer işlemcilerden (bilgisayarlardan) faydalanmak gerekebilir.

Paralel programlama işleme sürecini parçalara bölmekte, her bir komut eş zamanlı olarak farklı işlemciler (microprocessors) üzerinde çalıştırılmaktadır. Bu işlemciler tek bir makine üzerinde olabileceği gibi bir ağ ile bağlı bilgisayarlar üzerinde de olabilmektedir.

Böylece her bir işlemciye düşen işlem sayısı azaltılarak işlem süresini azaltmak mümkün olmaktadır. Paralel programlama yöntemi, bilimsel gelişmelerle beraber ortaya çıkan karmaşık ve büyük problemlerin çözümünde problemlerin farklı kısımlarını farklı işlemcilere bölüştürerek gereksinim duyulan hızlanma ve etkinliğin sağlanmasında yardımcı olmaktadır .

Paralel hesaplamada; bir problemin çözümü aşağıdaki adımlarla geçekleştirilir; 1)Problem parçalara bölünür, 2)Bu parçalar eşit zaman aralıklarına bölünür. 3)Her problem parçası farklı işlemcilerde, aynı anda senkronize olarak işleme alınır ve programlama gerçekleştirilir.

Paralel hesaplama yöntemleri şunlardır: 1- Çok Çekirdekli hesaplama (Multicore computing) Günümüzde de yaygınlaşan çok çekirdekli işlemcilerin içerisinde birden fazla işlemi (komut setini) aynı anda yapmaya izin veren birden fazla denetim birimi (“çekirdek”) vardır. Bu denetim birimleri ortak bellekleri kullanırlar. Çok çekirdekli işlemcilerde ki avantajı kullanabilecek bir işletim sistemi ve uygun kodlarla her bir çekirdek ayrı bir işlemci gibi kullanılabilir ve paralel hesaplama yapılabilir. Ancak bu sistemin bazı dezavantajları da mevcuttur. İşletim sistemi ve bu işletim sisteminde kullanılan yazılımlar, bu işlemcilerden maksimum verim alabilmek için, çok çekirdek mimarisini destekleyecek şekilde olmalıdır.

2-Simetrik Çok İsleme (Symmetric multiprocessing, SMP) Bu yöntemde, bir bilgisayar sisteminde veriyolları ile bağlı bir hafızayı paylaşan (shared memory) birden çok özdeş işlemci kullanımı esastır. Bugün yaygın olarak kullanılan SMP mimarisidir. SMP sistemleri işlem için gerekli olan verinin hafızanın neresinde olduğuna bakmaksızın herhangi bir anda yapılmasına imkan sunar. Fakat bu yöntemde birtakım veriyolu problemleri (bus contention) sebebiyle genellikle işlemci sayısı bakımından sınırlıdır. Ölçeklenebilirliği yüksek değildir. Çok yüksek hızlara ihtiyaç duyan uygulamalarda yetersiz kalırlar.

3-Dağıtık Hesaplama (Distributed computing) Dağıtık hesaplama yönteminde ise işlem parçaları, ağ (network) üzerinde birbirine bağlı isleme ünitelerine dağıtılır. Bağlantı bu şekilde ağ üzerinde olduğundan son derece ölçeklenebilir bir sistemdir. Dağıtık hesaplama sistemleri de kendi içinde üç ana kısma ayrılır: Cluster Computing (Bilgisayar Kümeleri) Massive parallel processing (Güçlü Paralel İşleme) Grid computing (Izgara Hesaplama)

Neden Paralel Hesaplama? işlemci teknolojisi fiziksel limitlerine (termodinamik, ışık hızı, CMOS transistörler) yaklaşmaktadır. Hesaplama ihtiyaçları, gün geçtikçe artmaktadı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.

Paralel Hesaplama Avantajları Paralel hesaplamanın en önemli avantajlarından birisi problemin çözüm zamanını azaltarak çözüme daha hızlı bir şekilde ulaşılmasını sağlamaktır. Problem bir parça olarak değil parçalar halinde ve her bir parçanın belirli zaman aralıklarına bölünmüş olması sayesinde daha kolay ve hızlı çözüm elde edilmesi sağlanır.

Paralel Hesaplama Dezavantajları Paralel hesaplamada parçalara ayrılan problemlerin her biri ayrı bilgisayarlarda veya CPU’larda çalıştırıldığı için bu parçaların herhangi birinde oluşabilecek bir çözümsüzlük veya hata diğer parçalar tamamen çözülse bile problemin genel olarak başarıya ulaşmasına engel olabilir. Ayrıca bu parçaların her birine zaman kısıtı konulduğu için her bir görev kendine verilen süre zarfı içerisinde çözülmüş olmalıdır. Çözülecek veya çözülmüş parçalar birbirleriyle etkileşimde olmalı ve sürekli olarak iletişimlerini korumalıdırlar.

PARALEL UYGULAMALAR Paralel hesaplamalar genellikle büyük uğraş gerektiren (grand challenge) problemlerde kullanılırlar. Bunlar çözülmesi çok zor olan problemlerdir. Örneğin; uygulamalı akışkanlar dinamiği, ekosistem simülasyonları, biyomedikal görüntüleme ve biyomekanik, moleküler biyoloji , kavrama, nükleer güç ve silah simulasyonları vs.

Çeşitli paralel uygulamalar ;

Fiyat ve Performans konusuna da değinecek olursak; Örnegin 100 adet paralel işlemciden oluşan sistem, kendisiyle aynı değerde ve hızda çalışan bir işlemciden daha az verimlidir. Fakat bir işlemciden çok daha ucuzdur. Çok fazla hesap gerektiren ve çözümünün en kısa sürede bitmesini istediğimiz hesaplamalarda harika bir çözümdür.

Geçtiğimiz yıllarda, süperbilgisayar olarak bilinen yüksek performanslı hesaplama sistemleri paralel bir mimariye sahiptir.

Günümüzde, artık çoğu bilgisayarda çok çekirdekli işlemcilerin kullanılmasıyla paralel hesaplamayla yapılabilecek projelere yeni alanlar açılmış ve bu sayede paralel hesaplama üzerindeki ilgi daha da artmıştır. Paralel hesaplamaları gerçekleştirmek için ya istemci sunucu tarzı bir yaklaşım ya da Paralel Hesaplama için geliştirilmiş özel yöntem ve programlar kullanılabilir.

Bu programlar paralel hesaplamaları gerçekleştirmek için OpenMP, MPI ve PVM sıkça kullanılan paralel programlama kütüphaneleridir. Ayrıca, birçok modern programlama dili paralel programlamaya destek vermektedir.

Paralel Hesaplama Tarihçesi Paralellik ile ilgili ilk fikirler, ilk olarak 1958’de IBM araştırmalarında nümerik hesaplamaların yapılabileceği fikrini ortaya atan John Cocke ve Daniel Slotnick ile ortaya çıkmıştır. 1960’a gelindiğinde Novosibirsk Matematik Enstütüsünden (IMN) E. V. Yevreinov’un birbirine bağlantılı şekilde programlanabilen paralel mimarileri tasarlamasıyla paralel kavramı yeni bir boyut kazanmıştır. 1964’de ise Daniel Slotnick Lawrence Livermore National Laboratuarlarında kullanılmak üzere büyük-paralel makineleri geliştirdi.

1967’de Gene Amdahl ve Daniel Slotnick AFIPS Konferansında paralel işlemlerin olasılığıyla ilgili bir makale yayınladılar. Bu paralellik ile ilgili olan tartışma konusu daha sonra “Amdahl Kanunu” olarak adlandırıldı. 1983’te Goodyear Aerospace NASA Goddard için Massively Paralel Processor (MPP) geliştirdi. 1985’te David Gelernter Linda paralel programlama sisteminin temellerini ortaya koydu. 1986’da Parallel Virtual Machine (PVM) projesi dağıtık bilgisayarlarda gerekli olan yazılımların kullanılabilmesi için geliştirildi. 1993’te IBM, RISC RS/6000 işlemcisine dayalı ilk SP1 Powerparallel sistemi piyasaya sürüldü.