@article{KreftingBartBeronovetal.2009, author = {Krefting, Dagmar and Bart, Julian and Beronov, Kamen and Dzhimova, Olga and Falkner, J{\"u}rgen and Hartung, Michael and Hoheisel, Andreas and Knoch, Tobias and Lingner, Thomas and Mohammed, Yassene and Peter, Kathrin and Rahm, Erhard and Sax, Ulrich and Sommerfeld, Dietmar and Steinke, Thomas and Tolxdorff, Thomas and Vossberg, Michael and Viezens, Fred and Weisbecker, Anette}, title = {MediGRID: Towards A User Friendly Secured Grid Infrastructure}, volume = {25}, journal = {Future Generation Computer Systems (FGCS)}, number = {3}, doi = {10.1016/j.future.2008.05.005}, pages = {281 -- 289}, year = {2009}, language = {en} } @misc{MaySteinke2006, author = {May, Patrick and Steinke, Thomas}, title = {THESEUS - Protein Structure Prediction at ZIB}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-9184}, number = {06-24}, year = {2006}, abstract = {THESEUS, the ZIB threading environment, is a parallel implementation of a protein threading based on a multi-queued branch-and-bound optimal search algorithm to find the best sequence-to-structure alignment through a library of template structures. THESEUS uses a template core model based on secondary structure definition and a scoring function based on knowledge-based potentials reflecting pairwise interactions and the chemical environment, as well as pseudo energies for homology detection, loop alignment, and secondary structure matching. The threading core is implemented in C++ as a SPMD parallization architecture using MPI for communication. The environment is designed for generic testing of different scoring functions, e.g. different secondary structure prediction terms, different scoring matrices and information derived from multiple sequence alignments. A validaton of the structure prediction results has been done on the basis of standard threading benchmark sets. THESEUS successfully participated in the 6th Critical Assessment of Techniques for Protein Structure Prediction (CASP) 2004.}, language = {en} } @misc{DresslerSteinke2012, author = {Dreßler, Sebastian and Steinke, Thomas}, title = {A Novel Hybrid Approach to Automatically Determine Kernel Interface Data Volumes}, issn = {1438-0064}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-15569}, year = {2012}, abstract = {Scheduling algorithms for heterogeneous platforms make scheduling decisions based on several metrics. One of these metrics is the amount of data to be transferred from and to the accelerator. However, the automated determination of this metric is not a simple task. A few schedulers and runtime systems solve this problem by using regression models, which are imprecise though. Our novel approach for the determination of data volumes removes this limitation and thus provides a solution to obtain exact information.}, language = {en} } @misc{WendeSteinke2013, author = {Wende, Florian and Steinke, Thomas}, title = {Swendsen-Wang Multi-Cluster Algorithm for the 2D/3D Ising Model on Xeon Phi and GPU}, issn = {1438-0064}, doi = {10.1145/2503210.2503254}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-42187}, year = {2013}, abstract = {Simulations of the critical Ising model by means of local update algorithms suffer from critical slowing down. One way to partially compensate for the influence of this phenomenon on the runtime of simulations is using increasingly faster and parallel computer hardware. Another approach is using algorithms that do not suffer from critical slowing down, such as cluster algorithms. This paper reports on the Swendsen-Wang multi-cluster algorithm on Intel Xeon Phi coprocessor 5110P, Nvidia Tesla M2090 GPU, and x86 multi-core CPU. We present shared memory versions of the said algorithm for the simulation of the two- and three-dimensional Ising model. We use a combination of local cluster search and global label reduction by means of atomic hardware primitives. Further, we describe an MPI version of the algorithm on Xeon Phi and CPU, respectively. Significant performance improvements over known im plementations of the Swendsen-Wang algorithm are demonstrated.}, language = {en} } @misc{DresslerSteinke2013, author = {Dreßler, Sebastian and Steinke, Thomas}, title = {An Automated Approach for Estimating the Memory Footprint of Non-Linear Data Objects}, issn = {1438-0064}, doi = {10.1007/978-3-642-54420-0_25}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-42224}, year = {2013}, abstract = {Current programming models for heterogeneous devices with disjoint physical memory spaces require explicit allocation of device memory and explicit data transfers. While it is quite easy to manually implement these operations for linear data objects like arrays, this task becomes more difficult for non-linear objects, e.g. linked lists or multiple inherited classes. The difficulties arise due to dynamic memory requirements at run-time and the dependencies between data structures. In this paper we present a novel method to build a graph-based static data type description which is used to create code for injectable functions that automatically determine the memory footprint of data objects at run-time. Our approach is extensible to implement automatically generated optimized data transfers across physical memory spaces.}, language = {en} } @article{WendeMarsmanKimetal.2018, author = {Wende, Florian and Marsman, Martijn and Kim, Jeongnim and Vasilev, Fedor and Zhao, Zhengji and Steinke, Thomas}, title = {OpenMP in VASP: Threading and SIMD}, journal = {International Journal of Quantum Chemistry}, number = {Emerging Architectures in Computational Chemistry}, publisher = {Wiley Online Library}, doi = {10.1002/qua.25851}, pages = {e25851}, year = {2018}, abstract = {The Vienna Ab initio Simulation Package (VASP) is a widely used electronic structure code that originally exploits process-level parallelism through the Message Passing Interface (MPI) for work distribution within and across nodes. Architectural changes of modern parallel processors urge programmers to address thread- and data-level parallelism as well to benefit most from the available compute resources within a node. We describe for VASP how to approach for an MPI + OpenMP parallelization including data-level parallelism through OpenMP SIMD constructs together with a generic high-level vector coding scheme. We can demonstrate an improved scalability of VASP and more than 20\% gain over the MPI-only version, as well as a 2x increased performance of collective operations using the multiple-endpoint MPI feature. The high-level vector coding scheme applied to VASP's general gradient approximation routine gives up 9x performance gain on AVX512 platforms with the Intel compiler.}, language = {en} } @inproceedings{GesingGrunzkeBalaskoetal.2011, author = {Gesing, Sandra and Grunzke, Richard and Balasko, Akos and Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andr{\´e} and Fels, Gregor and Herres-Pawlis, Sonja and Kacsuk, Peter and Kozlovszky, Miklos and Kr{\"u}ger, Jens and Packschies, Lars and Sch{\"a}fer, Patrick and Schuller, Bernd and Schuster, Johannes and Steinke, Thomas and Szikszay Fabri, Anna and Wewior, Martin and M{\"u}ller-Pfefferkorn, Ralph and Kohlbacher, Oliver}, title = {Granular Security for a Science Gateway in Structural Bioinformatics}, booktitle = {Proc. IWSG-Life 2011}, year = {2011}, language = {en} } @inproceedings{BirkenheuerBlunkBreuersetal.2011, author = {Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andre and Fels, Gregor and Gesing, Sandra and Grunzke, Richard and Herres-Pawlis, Sonja and Kohlbacher, Oliver and Kr{\"u}ger, Jens and Lang, Ulrich and Packschies, Lars and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Schuster, Johannes and Steinke, Thomas and Warzecha, Klaus Dieter and Wewior, Martin}, title = {MoSGrid: Progress of Workflow driven Chemical Simulations}, volume = {826}, booktitle = {Proc. of Grid Workflow Workshop 2011, Cologne, Germany}, publisher = {CEUR Workshop Proceedings}, year = {2011}, language = {en} } @article{DickmannFalknerGuniaetal.2011, author = {Dickmann, Frank and Falkner, J{\"u}rgen and Gunia, Wilfried and Hampe, Jochen and Hausmann, Michael and Herrmann, Alexander and Kepper, Nick and Knoch, Tobias and Lauterbach, Svenja and Lippert, J{\"o}rg and Peter, Kathrin and Schmitt, Eberhard and Schwardmann, Ulrich and Solodenko, Juri and Sommerfeld, Dietmar and Steinke, Thomas and Weisbecker, Anette and Sax, Ulrich}, title = {Solutions for biomedical grid computing - Case studies from the D-Grid project Services@MediGRID}, volume = {-}, journal = {Journal of Computational Science}, number = {0}, doi = {10.1016/j.jocs.2011.06.006}, year = {2011}, language = {en} } @inproceedings{GesingHerresPawlisBirkenheueretal.2012, author = {Gesing, Sandra and Herres-Pawlis, Sonja and Birkenheuer, Georg and Brinkmann, Andre and Grunzke, Richard and Kacsuk, Peter and Kohlbacher, Oliver and Kozlovszky, Miklos and Kr{\"u}ger, Jens and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Steinke, Thomas}, title = {The MoSGrid Community - From National to International Scale}, booktitle = {EGI Community Forum 2012}, year = {2012}, language = {en} } @article{BirkenheuerBlunkBreuersetal.2011, author = {Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andre and dos Santos Vieira, Ines and Fels, Gregor and Gesing, Sandra and Grunzke, Richard and Herres-Pawlis, Sonja and Kohlbacher, Oliver and Kr{\"u}ger, Jens and Lang, Ulrich and Packschies, Lars and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Schmalz, Hans-G{\"u}nther and Steinke, Thomas and Warzecha, Klaus Dieter and Wewior, Martin}, title = {A Molecular Simulation Grid as new tool for Computational Chemistry, Biology and Material Science}, volume = {3}, journal = {Journal of Cheminformatics 2011}, number = {Suppl 1}, doi = {10.1186/1758-2946-3-S1-P14}, year = {2011}, language = {en} } @inproceedings{GesingKacsukKozlovszkyetal.2011, author = {Gesing, Sandra and Kacsuk, Peter and Kozlovszky, Miklos and Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andre and Fels, Gregor and Grunzke, Richard and Herres-Pawlis, Sonja and Kr{\"u}ger, Jens and Packschies, Lars and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Steinke, Thomas and Szikszay Fabri, Anna and Warzecha, Klaus Dieter and Wewior, Martin and Kohlbacher, Oliver}, title = {A Science Gateway for Molecular Simulations}, booktitle = {EGI (European Grid Infrastructure) User Forum 2011, Book of Abstracts}, pages = {94 -- 95}, year = {2011}, language = {en} } @inproceedings{WendeCordesSteinke2012, author = {Wende, Florian and Cordes, Frank and Steinke, Thomas}, title = {On Improving the Performance of Multi-threaded CUDA Applications with Concurrent Kernel Execution by Kernel Reordering}, booktitle = {Application Accelerators in High Performance Computing (SAAHPC), 2012 Symposium on}, doi = {10.1109/SAAHPC.2012.12}, pages = {74 -- 83}, year = {2012}, language = {en} } @article{GesingHerresPawlisBirkenheueretal.2012, author = {Gesing, Sandra and Herres-Pawlis, Sonja and Birkenheuer, Georg and Brinkmann, Andr{\´e} and Grunzke, Richard and Kacsuk, Peter and Kohlbacher, Oliver and Kozlovszky, Miklos and Kr{\"u}ger, Jens and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Steinke, Thomas}, title = {A Science Gateway Getting Ready for Serving the International Molecular Simulation Community}, volume = {PoS(EGICF12-EMITC2)050}, journal = {Proceedings of Science}, year = {2012}, language = {en} } @article{BirkenheuerBlunkBreuersetal.2012, author = {Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andr{\´e} and dos Santos Vieira, Ines and Fels, Gregor and Gesing, Sandra and Grunzke, Richard and Herres-Pawlis, Sonja and Kohlbacher, Oliver and Kr{\"u}ger, Jens and Lang, Ulrich and Packschies, Lars and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Steinke, Thomas and Warzecha, Klaus Dieter and Wewior, Martin}, title = {MoSGrid: efficient data management and a standardized data exchange format for molecular simulations in a grid environment}, volume = {4}, journal = {Journal of Cheminformatics}, number = {Suppl 1}, doi = {10.1186/1758-2946-4-S1-P21}, pages = {21}, year = {2012}, language = {en} } @article{GesingGrunzkeKruegeretal.2012, author = {Gesing, Sandra and Grunzke, Richard and Kr{\"u}ger, Jens and Birkenheuer, Georg and Wewior, Martin and Sch{\"a}fer, Patrick and Schuller, Bernd and Schuster, Johannes and Herres-Pawlis, Sonja and Breuers, Sebastian and Balasko, Akos and Kozlovszky, Miklos and Szikszay Fabri, Anna and Packschies, Lars and Kacsuk, Peter and Blunk, Dirk and Steinke, Thomas and Brinkmann, Andr{\´e} and Fels, Gregor and M{\"u}ller-Pfefferkorn, Ralph and J{\"a}kel, Ren{\´e} and Kohlbacher, Oliver}, title = {A Single Sign-On Infrastructure for Science Gateways on a Use Case for Structural Bioinformatics}, journal = {Journal of Grid Computing}, year = {2012}, language = {en} } @inproceedings{GrunzkeBirkenheuerBlunketal.2012, author = {Grunzke, Richard and Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andr{\´e} and Gesing, Sandra and Herres-Pawlis, Sonja and Kohlbacher, Oliver and Kr{\"u}ger, Jens and Kruse, Martin and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Schuller, Bernd and Steinke, Thomas and Zink, Andreas}, title = {A Data Driven Science Gateway for Computational Workflows}, booktitle = {Proceedings of the UNICORE Summit}, address = {Dresden, Germany}, year = {2012}, language = {en} } @article{DresslerSteinke2012, author = {Dreßler, Sebastian and Steinke, Thomas}, title = {Energy consumption of CUDA kernels with varying thread topology}, journal = {Computer Science - Research and Development}, publisher = {Springer Berlin / Heidelberg}, doi = {10.1007/s00450-012-0230-4}, pages = {1 -- 9}, year = {2012}, language = {en} } @misc{DresslerSteinke2013, author = {Dreßler, Sebastian and Steinke, Thomas}, title = {Automated Analysis of Complex Data Objects}, journal = {28th International Supercomputing Conference, ISC 2013, Leipzig, Germany, June 16-20, 2013}, year = {2013}, language = {en} } @misc{NoackWendeZitzlsbergeretal.2016, author = {Noack, Matthias and Wende, Florian and Zitzlsberger, Georg and Klemm, Michael and Steinke, Thomas}, title = {KART - A Runtime Compilation Library for Improving HPC Application Performance}, issn = {1438-0064}, doi = {10.1007/978-3-319-67630-2_29}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-60730}, year = {2016}, abstract = {The effectiveness of ahead-of-time compiler optimization heavily depends on the amount of available information at compile time. Input-specific information that is only available at runtime cannot be used, although it often determines loop counts, branching predicates and paths, as well as memory-access patterns. It can also be crucial for generating efficient SIMD-vectorized code. This is especially relevant for the many-core architectures paving the way to exascale computing, which are more sensitive to code-optimization. We explore the design-space for using input-specific information at compile-time and present KART, a C++ library solution that allows developers to compile, link, and execute code (e.g., C, C++ , Fortran) at application runtime. Besides mere runtime compilation of performance-critical code, KART can be used to instantiate the same code multiple times using different inputs, compilers, and options. Other techniques like auto-tuning and code-generation can be integrated into a KART-enabled application instead of being scripted around it. We evaluate runtimes and compilation costs for different synthetic kernels, and show the effectiveness for two real-world applications, HEOM and a WSM6 proxy.}, language = {en} }