Szczegółowe informacje

  •  
     

    Mathematica

    Wykorzystanie komputerów wieloprocesorowych do realizacji obliczeń równoległych w środowisku programu Mathematica.


    Cel kursu:
    Kurs zapozna uczestników z możliwościami zastosowania programu w obliczeniach równoległych. Omówione zostaną funkcje wykorzystywane przy inicjowaniu i sterowaniu obliczeniami równoległymi.

    Czas trwania:
    Szkolenie jednodniowe, w godz. 09:00 - 16:00.

    Miejsce szkolenia:
    Szkolenie odbędzie się w siedzibie firmy Gambit COiS Sp. z o.o. w Krakowie.

    Adresaci kursu:
    Osoby, które pragną usprawnić wykonywane obliczenia w środowisku programu Mathematica poprzez wykorzystanie komputerów wieloprocesorowych lub sieci w celu realizacji obliczeń równoległych.

    Wymagania wstępne:
    Umiejętność obsługi programu Mathematica na poziomie podstawowym.

    Program kursu:

    1. Wprowadzenie
      - idea obliczeń równoległych
           • skala przyspieszenia obliczeń i prawo Amdahla
           • taksonomia Flynna-Johnson’a
      - obliczenia równoległe w środowisku programu Mathematica
           • MathLink
      - trochę historii
      - geneza procesorów wielordzeniowych
      - początki obliczeń równoległych w środowisku Mathematica
      - oprogramowanie nowej generacji
      - miejsce programu Mathematica w "równoległej rewolucji"
    2. Struktura środowiska programu Mathematica
      - elementy składowe środowiska programu
      - proces sterujący i procesy obliczeniowe
           • łączność między procesami, klasyfikacja kerneli obliczeniowych
                » Local Kernel
                » Cluster Integration
                » Remote Kernels
                » Lightweight Grid Manager
      - zmienne systemowe środowiska obliczeń równoległych
           • zmienna systemowa $ProcessorCount
           • zmienna systemowa $KernelCount
           • zmienna systemowa $ConfiguredKernels
    3. Konfigurowanie i monitorowanie pracy systemu
      - podstawowe cechy obliczeń równoległych w środowisku Mathematica
      - konfiguracja obliczeń równoległych
           • sterowanie uruchamianiem kerneli obliczeniowych
           • konfiguracja kernela w zależności od jego rodzaju
                » lokalne jądro obliczeniowe
                » jądra obliczeniowe w lokalnej sieci komputerowej
                » jądra obliczeniowe w klastrach komputerowych
                » odległe jądra obliczeniowe
      - monitorowanie obliczeń równoległych
    4. Wstęp do obliczeń równoległych
      - przykład obliczeń sekwencyjnych i równoległych
           • przykład obliczeń sekwencyjnych, szeregowych
           • wersja równoległa tych samych obliczeń
      - uruchamianie kerneli lokalnych
      - podstawowe komendy obliczeń równoległych
           • automatyczne zrównoleglanie, komenda ParallelEvaluate
           • zarządzanie procesami równoległymi i obliczenia współbieżne
                » co to są atrybuty funkcji i ich rola w obliczeniach równoległych?
           • sterowanie obliczeniami współbieżnymi
                » EvaluationObject
                » ParallelSubmit
                » WaitAll
                » WaitNext
           • komunikacja i synchronizacja
                » SetSharedVariable
                » SetSharedFunction
                » UnsetShared
                » CriticalSection
    5. Inicjowanie obliczeń równoległych
      - dystrybucja definicji obiektów
      - zrównoleglanie automatyczne
           • komenda Parallelize
           • równoległa realizacja obliczeń za pomocą ParallelCombine
           • mapowanie funkcji i generowanie tablic
           • komenda ParallelTable
                » co robi funkcja Table?
                » jak to robi funkcja ParallelTable?
           • komenda ParallelMap
                » co robi funkcja Map?
                » co robi funkcja ParallelMap?
      - sekwencyjne sterowanie obliczeniami równoległymi
    6. Zarządzanie procesami równoległymi
      - komenda WaitAll
      - komenda WaitNext
    7. Dystrybucja definicji
    8. Mechanizm wirtualnej pamięci współdzielonej
    9. Czy wszystko można zrównoleglić?
      - co można liczyć równolegle?
      - czego nie można liczyć równolegle?
      - a może jednak równolegle?
    10. Obliczenia równoległe w przykładach
      - pierwiastki równania, mapowanie funkcji FindRoot
           • wariant sekwencyjny
           • wariant równoległy
      - wyznaczanie wartości π metodą Monte Carlo
           • sekwencyjne obliczenia przybliżenia wartości liczby π
           • wariant równoległy obliczeń przybliżenia liczby π
      - średnica zbioru punktów, opcja sekwencyjna i równoległa
    11. Licencyjne uwarunkowania obliczeń równoległych
      - Mathematica single-machine
      - grid Mathematica Local
      - grid Mathematica Server
      - Network Mathematica
      - zestawienie dostępnej liczby procesów dla licencji