Parallelization of Aggregated FMUs using Static Scheduling

This thesis implements and evaluates static scheduling for aggregated FMUs. An aggregate FMU is several coupled FMUs placed in a single FMU. The implementation creates task graphs from the internal dependencies and connections between the coupled FMUs. These task graphs are then scheduled using two...

Full description

Bibliographic Details
Main Author: Hammar, Mattias
Format: Others
Language:English
Published: Linköpings universitet, Programvara och system 2018
Subjects:
FMI
FMU
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:liu:diva-152272
Description
Summary:This thesis implements and evaluates static scheduling for aggregated FMUs. An aggregate FMU is several coupled FMUs placed in a single FMU. The implementation creates task graphs from the internal dependencies and connections between the coupled FMUs. These task graphs are then scheduled using two different list scheduling heuristics, MCP and HLFET. The resulting schedules are then executed in parallel by using OpenMP in the runtime. The implementation is evaluated by looking at the utilization of the schedule, the execution time of the scheduling and the speedup of the simulation. These measurements are taken on three different test models. With model exchange FMUs only a really small speedup is observed. With co-simulation models the speedup varies a lot depending on the model, the highest achieved speedup was 2.8 running on four cores.