Automatic and Explicit Parallelization Approaches for Equation Based Mathematical Modeling and Simulation.

Saved in:
Bibliographic Details
Superior document:Linköping Studies in Science and Technology. Dissertations Series ; v.1967
:
Place / Publishing House:Linköping : : Linkopings Universitet,, 2018.
{copy}2018.
Year of Publication:2018
Edition:1st ed.
Language:English
Series:Linköping Studies in Science and Technology. Dissertations Series
Online Access:
Physical Description:1 online resource (223 pages)
Tags: Add Tag
No Tags, Be the first to tag this record!
Table of Contents:
  • Intro
  • POPULÄRVETENSKAPLIG SAMMANFATTNING
  • Abstract
  • Acknowledgments
  • Contents
  • List of Figures
  • List of Tables
  • Listings
  • 1 Introduction
  • Motivation
  • Research Problem
  • Main Contributions
  • Automatic Parallelization
  • Explicit Parallelization
  • Practical Considerations
  • Thesis Structure
  • 2 Parallel Programming
  • Introduction
  • Programmability
  • Automatic Parallelization
  • Explicit Parallelization
  • Memory Model
  • Shared Memory
  • Distributed Memory
  • Threading Model
  • Data Parallelism
  • Task Parallelism
  • Combined Shared Parallelism: Programmability with Threading Model
  • 3 Mathematical Modeling
  • Assignments and Equations
  • Notations
  • Equality Checks
  • Equations
  • Inputs and Outputs
  • Solving Equation Systems
  • Dynamic Systems: Time
  • Rate Of Change: Derivatives
  • Discrete Behaviour
  • Modelica
  • Modelica for Mathematical Modeling
  • Modelica Standard Library (MSL)
  • OpenModelica
  • I Automatic Parallelization
  • 4 Introduction
  • Terminology
  • Graphs
  • Directed Graphs
  • Bipartite Graphs
  • Causalization of Equation Systems
  • Matching
  • Sorting
  • Automatic Parallelization Approaches
  • Parallelization Over Method
  • Parallelization Over Time
  • Parallelization Over Equation System
  • 5 Connected Component Parallelization
  • Integrated Approach
  • Cost Estimation and Load Balancing
  • Memory Management
  • Shared Global Memory Pool
  • Thread Local Memory Pool
  • Thread Management
  • Complexity and Portability Issues
  • Improving Decoupling
  • Case Study
  • Conclusions
  • 6 Strongly Connected Components Parallelization
  • Equation System Structure
  • The Need for Scheduling
  • Data Dependencies
  • The Need for Clustering
  • Stand Alone Implementation
  • Memory and Thread Management
  • 7 Clustering and Scheduling
  • Task Clustering: Reducing Overhead, Improving Locality, and Balancing.
  • Background
  • The Bin Packing Problem
  • Polynomial Time Bin Packing Approximations
  • k-way Integer Partitioning
  • Makespan Scheduling Approximation Algorithms
  • Clustering Heuristics
  • Merge Single Parent (MSP)
  • Merge Level Parents (MLP)
  • Merge Level for Bins (MLB)
  • Merge Level for Cost (MLC)
  • Schedulers
  • The Level Scheduler
  • Flow Graph Scheduler
  • 8 ParModAuto
  • Motivation
  • Design Principles
  • High Level Operation
  • Runtime Processing
  • Portability Considerations
  • Extensibility Considerations
  • Independence: Minimal Assumptions
  • Implementation
  • Task Abstraction
  • Clusters
  • Dependency Specification and Task System Construction
  • Task System Representation
  • Schedulers
  • Equation System Representation
  • Extra Functionalities
  • 9 Performance Evaluation
  • Overview
  • Setup
  • Test Cases and Results
  • CauerLowPassSC
  • BranchingDynamicPipes
  • Spice3BenchmarkFourBitBinaryAdder
  • EngineV6
  • SteamPipe
  • 10 Conclusions on Automatic Parallelization
  • II Explicit Parallelization
  • 11 Introduction
  • General Purpose Graphic Processing Unit (GPGPU) programming
  • OpenCL
  • The OpenCL Architecture
  • Platform Model
  • Execution Model
  • Memory Model
  • Programming Model
  • Modelica for Scientific Computing
  • Related work
  • 12 ParModelica Extensions
  • Parallel Variables
  • Parallel Functions
  • Kernel Functions
  • Parallel For Loop: parfor
  • Built-in Functions
  • Synchronization and Thread Management
  • Extra OpenCL Functionalities
  • 13 ParModExp
  • ParModelica OpenCL-C Runtime Library
  • ParModelica OpenCL Utility Headers
  • 14 Performance Evaluations
  • The MPAR Benchmark Suite
  • Results
  • Conclusions
  • III Appendix
  • 15 Numerical Methods
  • Non-Linear Systems: Root Finding and Newton's method
  • Numerical Integration
  • Euler's Methods
  • Adam-Bashforth Methods
  • Adam-Moulton Methods.
  • Backward Differentiation Formulae (BDF) Methods
  • DASSL
  • 16 ParModelica (Extended Modelica) Concrete Syntax
  • Lexical conventions
  • Grammar
  • Stored Definition - Within
  • Class Definition
  • Extends
  • Component Clause
  • Modification
  • Equations
  • Expressions
  • 17 Selected ParModExp OpenCL Library API definitions
  • Bibliography.