Vous pouvez le devenir dans une semaine! Programmeur de supercalculateur
Référentiel (kaityo256 / sevendayshpc)
Version html
Version pdf en vrac
Introduction
- Pourquoi utiliser un supercalculateur?
Jour 1: Construire un environnement
Torie Azu prépare un environnement où vous pouvez utiliser MPI sur votre PC et essayer la programmation MPI simple.
- Qu'est-ce que MPI?
- Mis à part: MPI est-il difficile?
- Installation de MPI
- Mon premier MPI
- Rang
- À propos de la sortie standard
- Débogage des programmes MPI avec GDB
Jour 2: Comment utiliser un supercalculateur
Des choses à savoir lors de l'utilisation d'un supercalculateur. Comment lancer des emplois, etc.
- Introduction
- Qu'est-ce qu'un supercalculateur?
- À part: erreur de mémoire bluegene / l
- Comment obtenir un compte Supercomputer
- Comment fonctionne l'exécution du travail
- Comment écrire un script de travail
- Juste partage
- Remplissage
- Travail de chaîne
- Mise en scène
- Systèmes de fichiers parallèles
Jour 3: Parallèle évident
Sur le parallélisme évident, communément appelé «parallèle idiot».
- Qu'est-ce qu'un parallèle évident, ou même appelé stupide para?
- Exemple 1 du parallélisme trivial: circularité
- Modèle parallèle évident
- Exemple parallèle trivial 2: Gestion de nombreux fichiers
- Exemple 3 du parallélisme trivial: traitement statistique
- Efficacité de parallélisation
- Différence entre le parallélisme parallèle parallèle de l'échantillon
Jour 4: Parallélisme non trivial par division de la région
À titre d'exemple de parallélisme non trivial, nous diviserons les équations de conduction thermique unidimensionnelle en régions.
- Parallèle non trivial
- Équation de diffusion unidimensionnelle (version en série)
- Équation de diffusion unidimensionnelle (version parallèle)
- À part: protocoles avides et rendez-vous
Jour 5: Équation de diffusion de réaction bidimensionnelle
À titre d'exemple d'un programme MPI à grande échelle, nous diviserons l'équation de diffusion de réaction bidimensionnelle en une région.
- Version en série
- Parallélisation Étape 1: Préparation de la communication, etc.
- Parallélisation Étape 2: Enregistrez les données
- Parallélisation Étape 2: Communications de Norihiro
- Parallélisation Étape 3: Implémentation de code parallèle
- À part: les tracas de MPI
Jour 6: parallèle hybride
La parallélisation hybride utilisant le processus parallèle et le parallélisme du fil. Les choses à faire particulièrement prudente lors de la parallèle des fils.
- Qu'est-ce que le parallèle hybride?
- Mémoire virtuelle et TLB
- À part: à propos de TLB Miss
- Nombir
- Exemple OpenMP
- Évaluation des performances
- A part: l'histoire de Rock
- Exemples de parallélisme hybride
Jour 7: SIMD
Concernant la conversion SIMD.
- Introduction
- Qu'est-ce que SIMD?
- Essayez de toucher le registre SIMD
- A part: langage d'assemblage? Langage d'assemblage?
- Exemple SIMD simple
- A part: manipulation de l'arithmétique à point flottante dans x86
- Une version SIMD plus pratique
Conclusion
licence
Copyright (C) Hiroshi Watanabe 2018
Ce texte et illustration (y compris les fichiers PPTX) sont fournis dans l'attribution Creative Commons 4.0 (CC-BY 4.0).
Cet article et les images sont sous licence Creative Commons Attribution 4.0 International Licence.
Les programmes inclus dans ce référentiel sont fournis dans le cadre de la licence MIT.
Les codes source de ce référentiel sont sous licence sous la licence MIT.
Lors de la création de la version HTML, GitHub-Markdown-CSS est utilisé comme CSS.