Parallel Programming Burak Selim ŞENYURT

Slides:



Advertisements
Benzer bir sunumlar
.NET FRAMEWORK -MASAÜSTÜ VE SUNUCU YAZILIMLARI
Advertisements

This project is produce with the financial assistance of EU
Yazılım Geliştirme ve Java
SharePoint İş Süreçleri Yönetimi
B2B ile Uygulama Geliştirme
Silverlight Daron Yöndem INETA Türkiye Başkanı
P 6. Ünite stack veri tipini anlatmaktadır. p Bu ünitede stack laerin örnek uygulamalarından bahsedilmektedir. p Bu sunumda N-Queens problemini çözmek.
Erkan BALABAN Yazılım Uzmanı NTV
Bug Tracking Tools Serdar Büyüktemiz FogBugz • ?section=ScreenshotTool
İÇİNDEKİLER Hakkında Kod Editörü Hata Ayıklayıcı Tasarımcı
Intertech, Finans sektörünün ihtiyaç duyduğu Bilgi Teknolojileri hizmetlerini sunmak amacıyla 1987 yılında kuruldu. Bugün 650 kişiye varan kadrosuyla.
Zamanı Ölçme Yıl Ay Hafta Gün
Microsoft Danışman Öğrenci
GYTE BİL MUH BİL 495 ve 496 İLK SUNUM FORMATI
Burcu Musaoğlu Data Sistem A.Ş..
Çevre ve Orman Bakanlığı Bilgi İşlem Dairesi Başkanlığı
P p 8. Ünitede yinelemeli programlamanın teknikleri anlatılmaktadır. p p Gördüğünüz gibi, yinelemeli programlama bir problemin içinde problemin küçük parçalarını.
Tam İkili Ağaçlar 9. Ünite ağaçlardan bahseder.
Sarayköy Gazi İlköğretim Okulu
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.
WCF Ö ğ reniyorum Ders 1 – Data Contracts Burak Selim ŞENYURT MVP(Connected System Developer) INETA Speaker
MVP (Microsoft Most Valuable Professional) Nedir? Microsoft’un En Değerli Profesyonelleri (MVP’ler) bir veya daha fazla sayıdaki Microsoft ürünü konusunda.
Matematik 1 Takvim Nedir?.
İSİM UZAYLARI (NAMESPACE).
Ders 3 – Bindings(Bağlayıcılar)
WCF Öğreniyorum Ders 0 - Temeller Burak Selim ŞENYURT
Marie-laure Lemineur Çocuklara Yönelik Online Cinsel Sömürü ile Mücadele Programı Uluslaraarası ECPAT Ağı ÇTCS ile Mücadele Ağı Türkiye Eylül 1, 2014,
Web'i Aydınlatın: Silverlight 2 Daron Yöndem INETA Türkiye Başkanı, MVP.
Türkiye’nin Elektrik Arz ve Talep Modeli ve Eğrilerinin Çıkarılması
İş Parçacıkları Thread(s)
Görsel Programlama Dr. Muhammet Balcılar
C#.NET 5.0 C# .NET 5.0 Eğitimleri Volkan KANAT.
Microsoft® WPF- Silverlight
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
EGEE-III INFSO-RI Enabling Grids for E-sciencE EGEE and gLite are registered trademarks Giriş ve Motivasyon Onur Temizsoylu BAŞARIM09.
Chapter 11: Exception Handling
Emrah Uslu TCM | Teknoloji Çözümleri Merkezi emrah. com
Ümran Onay.
DÖNGÜLER.
Ders 2 – Veri Sözleşmeleri II
Abdulkadir KARADENİZ Bilgisayar Nedir? Bilgisayarın Tarihçesi Bilgisayarların Sınıflandırılması Abdulkadir KARADENİZ
ALİ FINDIK Galatasaray Ünİversİtesİ 2015
Nick and Frida’s first meeting was serendipitous as she was supposed to have been with Diego in San Francisco, but she had traveled to Mexico several.
Chapter 5: Threads (İş Parçacıkları)
BİLGİSAYAR MİMARİLERİ 12.Hafta: Çok İşlemcili Sistemler
BİLGİSAYAR MİMARİLERİ 1.Hafta: Bilgisayar Mimarisine Giriş
AVL Trees / Slide 1 Silme * Anahtar hedefi silmek için, x yaprağında buluruz ve sonra sileriz. * Dikkat edilmesi gereken iki durum vardır. (1) Hedef bazi.
There was a man who was thinking of building an honourable structure that could last for milleniums and show the king’s power. So, he racked his brain.
ODTÜ Bilgisayar Mühendisliği Tanıtım Günleri Temmuz 2005.
Muammer Benzeş MVP (IIS) Bulut Bilişim /muammerbenzes.
Querying SQL Server Data with Power BI Desktop Erdem Avni SELÇUK Microsot MVP.
Muammer Benzeş MVP (IIS)
Muammer Benzeş MVP (IIS) /muammerbenzes.
Muammer Benzeş IT Consultant | INETA Turkey Lead Microsoft MVP | MCT | MCITP /muammerbenzes.
Sayısal Entegre Devreler
MIX 09 9/27/2017 © 2009 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
UYGULAMA 4 Uygulama 4.1: Aşağıdaki kodlardaki hataları/eksiklikleri belirleyerek düzeltiniz, ekran çıktılarını yazınız. Programı yazıp çalıştırırarak.
2014 Yeni Slayt Masa Takvimi
2010 Aylık Takvim Bu şablonu, duvar takvimi olarak kullanmak için yazdırabilir veya kendi sununuza eklemek için herhangi bir ayın sayfasını kopyalayabilirsiniz.
David’s father has worked as a policeman ……………… he was 25. since for since.
Would you like a different color?
PHP On Windows Bir PHP Sitesinin IIS 7 Üzerinde Yayınlaması
NİŞANTAŞI ÜNİVERSİTESİ
BİLL GATES Şule Eslem ÖZTÜRK NUN OKULLARI Prep-A.
Imagine that you are a teacher and you are taking your 20 students to England for the summer school.
Ocak 2010 PAZARTESİ SALI ÇARŞAMBA PERŞEMBE CUMA CUMARTESİ PAZAR 1 2 3
Sunum transkripti:

Parallel Programming Burak Selim ŞENYURT MVP(Connected System Developer) INETA Speaker Innova – Uygulama Geliştirme Danışmanı www.buraksenyurt.com bsenyurt@innova.com.tr http://twitter.com/bsenyurt http://friendfeed.com/burakselimsenyurt

Akşam Sınıfı Eğitim Planı C# 4.0 .Net 4.0 ile Paralel Programlama WCF ile Servis Yaklaşımı (20 Temmuz 2010 Salı) WCF Eco System (20 Ağustos 2010 Cuma) Windows Server AppFabric(Dublin) (20 Eylül 2010 Pazartesi) Workflow Foundation 4.0 (20 Ekim 2010 Çarşamba) Asp.Net 4.0 (23 Kasım 2010 Salı) Visual Basic 2010 (20 Aralık 2010 Pazartesi) WPF 4.0 ile Windows Programlama (20 Ocak 2011 Perşembe)

Gündem Bir Zamanlar Moore Yasası Moore ve Günümüz Genel Görünüm 5000 Metreden Mimari Paralellik Çeşitleri Visualizers Karar Verirken Demo Parallel.For PLINQ TPL Beladan Uzak Durmak Soru & Cevap

A long time ago in a galaxy far far away... Parallel Programming Episode I – A New Hope There was a huge, big computer in the Dark Side. It was a Sit Lord and his name is ENIAC -1... But there was a new hope in the universe, In the Force... This new hope was about the Parallel Programming... At last, everything has begun with Lord Gene Myron Amdahl... with Rebelian Forces...

Bir Zamanlar 1946 -> ENIAC I (Electrical Numerical Integrator And Calculator) 17468 Vakum tüpü, 70000 Direnç, 10000 Kapasitör, 1500 Röle, 6000 Anahtar, 5 Million Lehimli Eklem, 167 Metrakre Alan, 160 Kw Elektrik Enerjisi 1 Saniyede 5000 toplama, 357 Çarpma, 38 Bölme İşlemi

Moore Yasası Gordon Moore / Intel Şirketi Kurucularından Her 18 ayda bir tümleşik devre üzerine yerleştirilebilecek bileşen sayısının iki katına çıkacacağını, bunun bilgisayarların işlem kapasitelerinde büyük artışlar yaratacağını, üretim maliyetlerinin ise aynı kalacağını, hatta düşme eğilimi göstereceğini öngören deneysel (ampirik) gözlem. Gordon Moore / Intel Şirketi Kurucularından

Virtual Studio Connections Moore ve Günümüz Artık Moore yasası birden çok işlemcili sistemler düşünüldüğünde yetersiz kalabilmektedir. Updates will be available at http://www.devconnections.com/updates/Orlando_08/VS

Genel Görünüm .Net Framework 4.0 ile birlikte gelenler; Task Parallel Library (TPL) Parallel LINQ (PLINQ) Task Scheduler Visual Studio 2010 ile gelen IDE özellikleri Debugging ve Profiling geliştirmeleri

5000 Metreden Mimari

Parallel Diagnostics Tool 5000 Metreden Mimari for ve foreach döngülerinin paralel versiyonlarını içerir. Thread’ ler, ThreadPool ve kilitlerle(lock) uğraşmadan eş zamanlı ve asenkron görevlerin yazılabilmesini sağlar. TPL LINQ to Objects sorgularının paralel olarak çalıştırılabilmesini sağlar. PLINQ Thread-Safe veya Lock-Free olan yüksek performanslı koleksiyon tipleri sunar. Data Structures Paralel task ve stack içeriklerinin Visual Studio ortamı üzerinden kolayca izlenebilmesi, paralel işleyişin çalışma zamanında değerlendirilebilmesi için gerekli araçları içerir. Parallel Diagnostics Tool

Paralellik Çeşitleri Bilinçli(Explicit) Paralellik Task.Factory.StartNew Parent-child relationships Exception handling Cancellation Bilinçsiz(Implicit) Paralellik Parallel.For Parallel.ForEach Parallel.Invoke PLINQ

Yeni Senkron Tipler Thread-safe, scalable collections Initialization AggregateException IProducerConsumerCollection<T> Initialization ConcurrentQueue<T> Lazy<T> ConcurrentStack<T> LazyInitializer.EnsureInitialized<T> ConcurrentBag<T> ThreadLocal<T> ConcurrentDictionary<TKey,TValue> Locks Phases and work exchange ManualResetEventSlim Barrier SemaphoreSlim BlockingCollection<T> SpinLock CountdownEvent SpinWait Partitioning Cancellation {Orderable}Partitioner<T> CancellationToken{Source} Partitioner.Create Exception Handling

Visualizers Concurrency Profiler Parallel Debugger Parallel Tasks Parallel Stacks Threads

Karar Verirken Performance(Performans) SpeedUp(Hızlanma) Performans ölçümlerinde algoritmanın toplam icra süreleri hesaba katılmaktadır. Bir algoritmanın yürütülme süresinin diğerine göre daha düşük olması tercih edilir. SpeedUp(Hızlanma) SpeedUp = Seri Çalışma Süresi / Paralel Çalışma Süresi Bu formülün sonucuna göre bir algoritmanın diğerinden kaç kat hızlı olduğu belirlenebilir. Efficiency(Verimlilik/Etkinlik) Hangi algoritmanın daha verimli olduğudur. Efficiency = Hızlanma / İşlemci Çekirdek Sayısı Scalability(Ölçeklenebilirlik) İşlemci/çekirdek sayısının artması dolayısıyla ortamın büyümesi karşılığında hızlanmanında artması beklenir.

Demo Task, Parallel.For, PLINQ, Beladan Uzak Durmak DEMO

Kaynaklar http://msdn.microsoft.com/en-us/concurrency/default.aspx Concurrent Programming on Windows / Addison Wesley Pro .Net 4 Parallel Programming in C# /Apress Patterns for Parallel Software Design / Jhon Wiley and Sons http://channel9.msdn.com/

Soru & cevap

Hatıra