Programowanie równoległe w .NET Framework

Kod: NET-core-.Net Parallel
Kategoria: Platforma .NET
Forma: 50% wykłady / 50% warsztaty
Czas trwania: 3 dni
Grupa docelowa: architekci
developerzy
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.
Data i dokładny zakres do ustalenia podczas analizy przed-szkoleniowej.

Szkolenie ma za zadanie zaznajomić słuchaczy z możliwościami jakie niesie nowa wersja Microsoft .NET Framework 4.

0 w dziedzinie obliczeń równoległych.

W trakcie kursu słuchacze poznają podstawowe założenia, zasady, narzędzia i dobre praktyki programowania równoległego na platformie .NET przy wykorzystaniu języka C#. Podczas praktycznej części szkolenia uczestnicy będą mieli okazję tworzyć, uruchomiać, testować oraz debugować kod równoległy.

Obecnie praktycznie każdy komputer, laptop, a nawet telefon komórkowy jest wyposażony w procesor zawierający kilka niezależnie pracujących od siebie rdzeni. Wykorzystanie zalet tych procesorów wykorzystując klasyczne metody programowania (współdzielona pamięć, synchronizacja, blokowanie, wiele wątków) jest bardzo trudne i nastręcza wiele problemów.

W celu ułatwienia tworzenia kodu równoległego, który może być wykonywany niezależnie przez kilka rdzeni, w .NET Framework wprowadzono tzw. Parallel Extensions. Praktycznie jest to całkowicie nowy paradygmat tworzenia oprogramowania, które może zostać zrównoleglone na dowolną ilość rdzeni/procesorów przy relatywnie niewielkim nakładzie pracy oraz czytelniejszym i prostszym w utrzymaniu kodzie.

Wymagania

Uczestnicy znają podstawy programowania w języku C# oraz potrafią obsługiwać środowisko programistyczne Visual Studio 2010.

Na stacjach roboczych jest zainstalowane środowisko Visual Studio 2010. Stacje robocze są wyposażone w procesory co najmniej dwurdzeniowe.

Wyróżniki szkolenia

Podczas zajęć możesz oczekiwać szczególnych akcentów położonych na poniższe aspekty:

  • Wykorzystanie potencjału sprzętu
  • Praktyczne przykłady

Program Szkolenia

Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.

  1. Wprowadzenie do Parallel Extensions
    1. Geneza powstania
    2. Korzyści
  2. Task Parallelism - Task Parallel Library
    1. Klasyczne podejście imperatywne
    2. TPL i kod równoległy
  3. Data Parallelism – PLINQ
    1. Wprowadzenie do LINQ
    2. Podejście imperatywne
    3. Podejście deklaratywne - Data Parallelism i PLINQ
  4. Coordination Data Structures
    1. Współbieżne i skalowalne struktury danych
    2. Metody synchronizacji
    3. Leniwa inicjalizacja obiektów
  5. Parallel Diagnostics Tools
    1. Debugging
    2. Profiling
  6. Custom Partitioners for PLINQ and TPL
  7. Task Factories
  8. Task Schedulers
  9. Lambda Expressions in PLINQ and TPL
  10. Zagadnienia zaawansowane
    1. Istotne aspekty systemu
      1. Działanie systemu operacyjnego
      2. Działanie procesora
      3. Hierarchia pamięci
    2. Specyficzne zachowania kodu wykonywanego równolegle
    3. Synchronizacja natywna - prymitywy .net
    4. Koncepcje lock-free memory model
    5. Problemy, wzorce i ich rozwiązania
    6. Reactive Extensions - przetwarzanie strumienia asynchronicznych zdarzeń
    7. async i await.


Pobierz program w formacie PDF

Zapytaj o szkolenie

Imię i nazwisko:
Firma:
E-mail/Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń