% IMPORTANT: The following is UTF-8 encoded.  This means that in the presence
% of non-ASCII characters, it will not work with BibTeX 0.99 or older.
% Instead, you should use an up-to-date BibTeX implementation like “bibtex8” or
% “biber”.

@PHDTHESIS{Haensel:857997,
      author       = {Haensel, David},
      title        = {{A} {C}++ based {MPI}-enabled {T}asking {F}ramework to
                      {E}fficiently {P}arallelize {F}ast {M}ultipole {M}ethods for
                      {M}olecular {D}ynamics},
      school       = {TU Dresden},
      type         = {Dissertation},
      reportid     = {FZJ-2018-06944},
      pages        = {xiii, 121},
      year         = {2018},
      note         = {Dissertation, TU Dresden, 2018},
      abstract     = {Today’s supercomputers gain their performance through a
                      rapidly increasingnumber of cores per node. To tackle issues
                      arising from those developmentsnew parallelization
                      approaches guided by modern software engineering are
                      in-evitable. The concept of task-based parallelization is a
                      promising candidate toovercome many of those challenges.
                      However, for latency-critical applications,like molecular
                      dynamics, available tasking frameworks introduce
                      considerableoverheads. In this work a lightweight task
                      engine for latency-critical applica-tions is proposed. The
                      main contributions of this thesis are a static
                      data-flowdispatcher, a type-driven priority scheduler and an
                      extension for communication-enabled tasks. The dispatcher
                      allows a user-configurable mapping of
                      algorithmicdependencies in the task-engine at compile-time.
                      Resolving these dependenciesat compile-time reduces the
                      run-time overhead. The scheduler enables the pri-oritized
                      execution of a critical path of an algorithm. Additionally,
                      the prioritiesare deduced from the task type at compile-time
                      as well. Furthermore, the afore-mentioned task engine
                      supports inter-node communication via message passing.The
                      provided communication interface drastically simplifies the
                      user interface ofinter-node communication without
                      introducing additional performance
                      penalties.Thisisonlypossiblebydistinguishingtwodeveloperroles–thelibrarydeveloperand
                      the algorithm developer. All proposed components follow a
                      strict guideline toincrease the maintainability for library
                      developers and the usability for algorithmdevelopers. To
                      reach this goal a high level of abstraction and
                      encapsulation isrequired in the software stack. As proof of
                      concept the communication-enabledtask engine is utilized to
                      parallelize the FMM for molecular dynamics.},
      cin          = {JSC},
      cid          = {I:(DE-Juel1)JSC-20090406},
      pnm          = {511 - Computational Science and Mathematical Methods
                      (POF3-511) / PhD no Grant - Doktorand ohne besondere
                      Förderung (PHD-NO-GRANT-20170405)},
      pid          = {G:(DE-HGF)POF3-511 / G:(DE-Juel1)PHD-NO-GRANT-20170405},
      typ          = {PUB:(DE-HGF)11},
      urn          = {    urn:nbn:de:bsz:14-qucosa2-314122},
      urn          = {urn:nbn:de:bsz:14-qucosa2-314122},
      url          = {https://juser.fz-juelich.de/record/857997},
}