@inproceedings{WendeMarsmanSteinke2016, author = {Wende, Florian and Marsman, Martijn and Steinke, Thomas}, title = {On Enhancing 3D-FFT Performance in VASP}, booktitle = {CUG Proceedings}, year = {2016}, language = {en} } @inproceedings{NoackReinefeldKrameretal.2018, author = {Noack, Matthias and Reinefeld, Alexander and Kramer, Tobias and Steinke, Thomas}, title = {DM-HEOM: A Portable and Scalable Solver-Framework for the Hierarchical Equations of Motion}, booktitle = {2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), 19th IEEE Int. Workshop on Parallel and Distributed Scientific and Engineering Computing (PDSEC 2018)}, isbn = {978-1-5386-5555-9}, doi = {10.1109/IPDPSW.2018.00149}, pages = {947 -- 956}, year = {2018}, abstract = {Computing the Hierarchical Equations of Motion (HEOM) is by itself a challenging problem, and so is writing portable production code that runs efficiently on a variety of architectures while scaling from PCs to supercomputers. We combined both challenges to push the boundaries of simulating quantum systems, and to evaluate and improve methodologies for scientific software engineering. Our contributions are threefold: We present the first distributed memory implementation of the HEOM method (DM-HEOM), we describe an interdisciplinary development workflow, and we provide guidelines and experiences for designing distributed, performance-portable HPC applications with MPI-3, OpenCL and other state-of-the-art programming models. We evaluated the resulting code on multi- and many-core CPUs as well as GPUs, and demonstrate scalability on a Cray XC40 supercomputer for the PS I molecular light harvesting complex.}, language = {en} } @inproceedings{KnaustMayerSteinke2019, author = {Knaust, Marius and Mayer, Florian and Steinke, Thomas}, title = {OpenMP to FPGA Offloading Prototype Using OpenCL SDK}, booktitle = {2019 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)}, doi = {10.1109/IPDPSW.2019.00072}, pages = {387 -- 390}, year = {2019}, abstract = {Field-programmable gate arrays (FPGAs) are of great interest for future high-performance computing and data analytics systems, since they are capable of efficient, highly-parallel data processing. Even though high-level synthesis became more popular in the last years, the effort of porting existing scientific software onto FPGAs is still considerable. We propose to use OpenMP target offloading as a solution, which we implement in a first prototype, making use of the preexisting OpenCL SDK of the FPGA vendor. Early results demonstrate the feasibility of this approach and also reveal that further optimizations will be necessary such that code can be written in an FPGA-agnostic way.}, language = {en} } @inproceedings{ChristgauSteinke2020, author = {Christgau, Steffen and Steinke, Thomas}, title = {Porting a Legacy CUDA Stencil Code to oneAPI}, booktitle = {2020 IEEE International Parallel and Distributed Processing Symposium Workshops, IPDPSW 2020, New Orleans, LA, USA, May 18-22, 2020}, publisher = {IEEE}, address = {New Orleans}, isbn = {978-1-7281-7445-7}, doi = {10.1109/IPDPSW50202.2020.00070}, pages = {359 -- 367}, year = {2020}, abstract = {Recently, Intel released the oneAPI programming environment. With Data Parallel C++ (DPC++), oneAPI enables codes to target multiple hardware architectures like multi-core CPUs, GPUs, and even FPGAs or other hardware using a single source. For legacy codes that were written for Nvidia GPUs, a compatibility tool is provided which facilitates the transition to the SYCL-based DPC++ programming language. This paper presents early experiences when using both the compatibility tool and oneAPI as well the employed extension to the SYCL programming standard for the tsunami simulation code easyWave. A performance study compares the original code running on Xeon processors using OpenMP as well as CUDA with the performance of the DPC++ counter part on multicore CPUs as well as integrated GPUs.}, language = {en} } @article{AlhaddadFoerstnerGrothetal.2021, author = {Alhaddad, Samer and F{\"o}rstner, Jens and Groth, Stefan and Gr{\"u}newald, Daniel and Grynko, Yevgen and Hannig, Frank and Kenter, Tobias and Pfreundt, Franz-Josef and Plessl, Christian and Schotte, Merlind and Steinke, Thomas and Teich, J{\"u}rgen and Weiser, Martin and Wende, Florian}, title = {HighPerMeshes - A Domain-Specific Language for Numerical Algorithms on Unstructured Grids}, journal = {Euro-Par 2020: Parallel Processing Workshops.}, publisher = {Springer}, doi = {10.1007/978-3-030-71593-9_15}, pages = {185 -- 196}, year = {2021}, abstract = {Solving partial differential equations on unstructured grids is a cornerstone of engineering and scientific computing. Nowadays, heterogeneous parallel platforms with CPUs, GPUs, and FPGAs enable energy-efficient and computationally demanding simulations. We developed the HighPerMeshes C++-embedded Domain-Specific Language (DSL) for bridging the abstraction gap between the mathematical and algorithmic formulation of mesh-based algorithms for PDE problems on the one hand and an increasing number of heterogeneous platforms with their different parallel programming and runtime models on the other hand. Thus, the HighPerMeshes DSL aims at higher productivity in the code development process for multiple target platforms. We introduce the concepts as well as the basic structure of the HighPer-Meshes DSL, and demonstrate its usage with three examples, a Poisson and monodomain problem, respectively, solved by the continuous finite element method, and the discontinuous Galerkin method for Maxwell's equation. The mapping of the abstract algorithmic description onto parallel hardware, including distributed memory compute clusters is presented. Finally, the achievable performance and scalability are demonstrated for a typical example problem on a multi-core CPU cluster.}, language = {en} } @inproceedings{ChristgauSteinke2020, author = {Christgau, Steffen and Steinke, Thomas}, title = {Leveraging a Heterogeneous Memory System for a Legacy Fortran Code: The Interplay of Storage Class Memory, DRAM and OS}, booktitle = {2020 IEEE/ACM Workshop on Memory Centric High Performance Computing (MCHPC)}, publisher = {IEEE}, isbn = {978-0-7381-1067-7}, doi = {10.1109/MCHPC51950.2020.00008}, pages = {17 -- 24}, year = {2020}, abstract = {Large capacity Storage Class Memory (SCM) opens new possibilities for workloads requiring a large memory footprint. We examine optimization strategies for a legacy Fortran application on systems with an heterogeneous memory configuration comprising SCM and DRAM. We present a performance study for the multigrid solver component of the large-eddy simulation framework PALM for different memory configurations with large capacity SCM. An important optimization approach is the explicit assignment of storage locations depending on the data access characteristic to take advantage of the heterogeneous memory configuration. We are able to demonstrate that an explicit control over memory locations provides better performance compared to transparent hardware settings. As on aforementioned systems the page management by the OS appears as critical performance factor, we study the impact of different huge page settings.}, language = {en} } @article{KnoopGronemeierSuehringetal.2017, author = {Knoop, Helge and Gronemeier, Tobias and S{\"u}hring, Matthias and Steinbach, Peter and Noack, Matthias and Wende, Florian and Steinke, Thomas and Knigge, Christoph and Raasch, Siegfried and Ketelsen, Klaus}, title = {Porting the MPI-parallelized LES model PALM to multi-GPU systems and many integrated core processors: an experience report}, journal = {International Journal of Computational Science and Engineering. Special Issue on: Novel Strategies for Programming Accelerators}, edition = {Special Issue on: Novel Strategies for Programming Accelerators}, publisher = {Inderscience}, year = {2017}, abstract = {The computational power and availability of graphics processing units (GPUs), such as the Nvidia Tesla, and Many Integrated Core (MIC) processors, such as the Intel Xeon Phi, on high performance computing (HPC) systems is rapidly evolving. However, HPC applications need to be ported to take advantage of such hardware. This paper is a report on our experience of porting the MPI+OpenMP parallelised large-eddy simulation model (PALM) to multi-GPU as well as to MIC processor environments using the directive-based high level programming paradigm OpenACC and OpenMP, respectively. PALM is a Fortran-based computational fluid dynamics software package, used for the simulation of atmospheric and oceanic boundary layers to answer questions linked to fundamental atmospheric turbulence research, urban modelling, aircraft safety and cloud physics. Development of PALM started in 1997, the project currently entails 140 kLOC and is used on HPC farms of up to 43,200 cores. The main challenges we faced during the porting process are the size and complexity of the PALM code base, its inconsistent modularisation and the complete lack of a unit-test suite. We report the methods used to identify performance issues as well as our experiences with state-of-the-art profiling tools. Moreover, we outline the required porting steps in order to properly execute our code on GPUs and MIC processors, describe the problems and bottlenecks that we encountered during the porting process, and present separate performance tests for both architectures. These performance tests, however, do not provide any benchmark information that compares the performance of the ported code between the two architectures.}, language = {en} } @incollection{NoackWendeZitzlsbergeretal.2017, 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}, volume = {10524}, booktitle = {High Performance Computing: ISC High Performance 2017 International Workshops, DRBSD, ExaComm, HCPM, HPC-IODC, IWOPH, IXPUG, P^3MA, VHPC, Visualization at Scale, WOPSSS, Frankfurt, Germany, June 18-22, 2017, Revised Selected Papers}, publisher = {Springer International Publishing}, doi = {10.1007/978-3-319-67630-2_29}, pages = {389 -- 403}, year = {2017}, 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 tocompile, 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} } @inproceedings{NoackFochtSteinke2019, author = {Noack, Matthias and Focht, Erich and Steinke, Thomas}, title = {Heterogeneous Active Messages for Offloading on the NEC SX-Aurora TSUBASA}, booktitle = {2019 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), Heterogeneity in Computing Workshop (HCW 2019)}, year = {2019}, abstract = {The NEC SX-Aurora TSUBASA is a new generation of vector processing architectures that combines a standard Intel Xeon host with the newly developed NEC Vector Engine co-processor cards. One way to use these co-processors is offloading suitable parts of the program from the host to the Vector Engines. Currently, the only vendor-provided offloading solutions are the low-level Vector Engine Offloading (VEO) library, and a builtin reverse-offloading mechanism named VHcall. In this work, we extend the portable Heterogeneous Active Messages (HAM) based HAM-Offload framework with support for the NEC SX-Aurora TSUBASA. Therefore, we design, implement, and evaluate two messaging protocols aimed at minimising offloading cost. This sheds some light on how to achieve fast communication between host CPU and the Vector Engines of the NEC SX-Aurora TSUBASA. Compared with VEO, the DMA-based protocol reduces offloading overhead by a factor of 13×. The resulting framework enables users to write portable offload applications with low overhead, that do neither require a language extension like OpenMP, nor a special language like OpenCL. Existing HAM-Offload applications are now ready to run on the NEC SX-Aurora TSUBASA.}, language = {en} } @misc{StallingSteinke1996, author = {Stalling, Detlev and Steinke, Thomas}, title = {Visualization of Vector Fields in Quantum Chemistry}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-2124}, number = {SC-96-01}, year = {1996}, abstract = {\small Many interesting phenomena in molecular systems like interactions between macro-molecules, protein-substrate docking, or channeling processes in membranes are gouverned to a high degree by classical Coulomb or van-der-Waals forces. The visualization of these force fields is important for verifying numerical simulations. Moreover, by inspecting the forces visually we can gain deeper insight into the molecular processes. Up to now the visualization of vector fields is quite unusual in computational chemistry. In fact many commercial software packages do not support this topic at all. The reason is not that vector fields are considered unimportant, but mainly because of the lack of adequate visualization methods. In this paper we survey a number of methods for vector field visualization, ranging from well-known concepts like arrow or streamline plots to more advanced techniques like line integral convolution, and show how these can be applied to computational chemistry. A combination of the most meaningful methods in an interactive 3D visualization environment can provide a powerful tool box for analysing simulations in molecular dynamics.}, language = {en} } @misc{BaumannBuschGottschewskietal.1997, author = {Baumann, Wolfgang and Busch, Hubert and Gottschewski, J{\"u}rgen and Steinke, Thomas and St{\"u}ben, Hinnerk}, title = {Berliner Landesh{\"o}chstleistungsrechner Parallelrechner Cray T3D/T3E: Betrieb, Nutzung, Projekte, Perspektiven f{\"u}r den Ausbau}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-5504}, number = {TR-97-08}, year = {1997}, abstract = {Seit fast drei Jahren betreibt das Konrad-Zuse-Zentrum f{\"u}r Informationstechnik Berlin (ZIB) Parallelrechner der h{\"o}chsten Leistungsklasse im normalen Rechenzentrumsbetrieb. Bereits im Mai 1995 hat das ZIB {\"u}ber seine Erfahrungen mit dem damals leistungsst{\"a}rksten Parallelrechner Deutschlands berichtet. Das Gesamtkonzept des ZIB sieht weiterhin einen H{\"o}chstleistungsrechner als unabdingbaren Bestandteil des High Performance Scientific Computing (HPSC) im ZIB vor. Der vorliegende Bericht beschreibt die aktuelle Konfiguration, Betriebserfahrungen und die Rechnernutzung sowie typische Rechenleistungen, die f{\"u}r einzelne Anwendungsprogramme erzielt wurden. Beschreibungen der Forschungsgebiete mit den Forschungsgruppen, die den Rechner nutzen und die Anforderungen an den Rechnerausbau, die sich aus deren Arbeiten herleiten, beschließen den Bericht.}, language = {de} } @inproceedings{SteinkePeterBorchert2010, author = {Steinke, Thomas and Peter, Kathrin and Borchert, Sebastian}, title = {Efficiency Considerations of Cauchy Reed-Solomon Implementations on Accelerator and Multi-Core Platforms}, booktitle = {Symposium on Application Accelerators in High Performance Computing (SAAHPC)}, address = {Knoxville, USA}, year = {2010}, language = {en} } @misc{BirkenheuerBlunkBreuersetal.2010, author = {Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andr{\´e} and d. Santos Vieira, I. and Fels, Gregor and Gesing, Sandra and Grunzke, Richard and Herres-Pawlis, Sonja and Kohlbacher, Oliver and Kruber, Nico and Kr{\"u}ger, Jens and Lang, U. 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 = {MoSGrid - A Molecular Simulation Grid as a new tool in Computational Chemistry, Biology and Material Science}, journal = {6. German Conference on Chemoinformatics}, year = {2010}, language = {en} } @inproceedings{KruegerBirkenheuerBlunketal.2010, author = {Kr{\"u}ger, Jens and Birkenheuer, Georg and Blunk, Dirk and Breuers, Sebastian and Brinkmann, Andr{\´e} and Fels, Gregor and Gesing, Sandra and Grunzke, Richard and Herres-Pawlis, Sonja and Kohlbacher, Oliver and Kruber, Nico and Lang, U. 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 = {Molecular Simulation Grid}, booktitle = {6. German Conference on Chemoinformatics}, publisher = {Gesellschaft Deutscher Chemiker (GDCh)}, year = {2010}, language = {en} } @article{MayKreuchwigSteinkeetal.2010, author = {May, Patrick and Kreuchwig, A. and Steinke, Thomas and Koch, Ina}, title = {PTGL: a database for secondary structure-based protein topologies}, volume = {38}, journal = {Nucleic Acids Res.}, pages = {D326 -- 330}, year = {2010}, language = {en} } @inproceedings{DickmannKasparLoehnhardtetal.2009, author = {Dickmann, Frank and Kaspar, Mathias and L{\"o}hnhardt, Benjamin and Kepper, Nick and Viezens, Fred and Hertel, Frank and Lesnussa, Michael and Mohammed, Yassene and Thiel, Andreas and Steinke, Thomas and Bernarding, Johannes and Krefting, Dagmar and Knoch, Tobias and Sax, Ulrich}, title = {Visualization in Health Grid Environments: A Novel Service and Business Approach}, volume = {5745}, booktitle = {GECON}, publisher = {Springer}, doi = {10.1007/978-3-642-03864-8_12}, pages = {150 -- 159}, year = {2009}, language = {en} } @article{BauerRotherMooretal.2009, author = {Bauer, Raphael and Rother, Kristian and Moor, Peter and Reinert, Knut and Steinke, Thomas and Bujnicki, Janusz and Preissner, Robert}, title = {Fast Structural Alignment of Biomolecules Using a Hash Table, N-Grams and String Descriptors}, volume = {2}, journal = {Algorithms}, number = {2}, doi = {10.3390/a2020692}, pages = {692 -- 709}, year = {2009}, language = {en} } @inproceedings{MayKlauBaueretal.2007, author = {May, Patrick and Klau, Gunnar and Bauer, Markus and Steinke, Thomas}, title = {Accelerated microRNA-Precursor Detection Using the Smith-Waterman Algorithm on FPGAs}, volume = {4360}, booktitle = {GCCB}, editor = {Dubitzky, W.}, publisher = {Springer}, pages = {19 -- 32}, year = {2007}, language = {en} } @article{MeyerSteinkeSuehnel2007, author = {Meyer, Michael and Steinke, Thomas and S{\"u}hnel, J{\"u}rgen}, title = {Density functional study of isoguanine tetrad and pentad sandwich complexes with alkali metal ions}, volume = {13}, journal = {Journal of Molecular Modeling}, number = {2}, publisher = {Springer Berlin / Heidelberg}, pages = {335 -- 345}, year = {2007}, language = {en} } @inproceedings{KotthaPeterSteinkeetal.2007, author = {Kottha, Samatha and Peter, Kathrin and Steinke, Thomas and Bart, Julian and Falkner, J{\"u}rgen and Weisbecker, Anette and Viezens, Fred and Mohammed, Yassene and Sax, Ulrich and Hoheisel, Andreas and Ernst, Thilo and Sommerfeld, Dietmar and Krefting, Dagmar and Vossberg, Michael}, title = {Medical Image Processing in MediGRID}, booktitle = {German E-Science Conference}, publisher = {Max Planck Digital Library}, address = {Baden-Baden}, year = {2007}, language = {en} } @inproceedings{StahlbergBabstPopigetal.2007, author = {Stahlberg, Eric and Babst, Michael and Popig, Daryl and Steinke, Thomas}, title = {Molecular Dynamics with FPGAs: A Portable API Molecular Simulations with Hardware Accelerators: A Portable Interface Definition for FPGA Supported Acceleration}, booktitle = {International Supercomputing Conference 2007 (ISC 2007)}, address = {Dresden}, year = {2007}, language = {en} } @inproceedings{StahlbergPopigRyleetal.2007, author = {Stahlberg, Eric and Popig, Daryl and Ryle, Debie and Babst, Michael and Anderson, Mohammed and Steinke, Thomas}, title = {Molecular Simulations with Hardware Accelerators}, booktitle = {Reconfigurable Systems Summer Institute 2007 (RSSI 2007)}, address = {National Center for Supercomputing Applications, Urbana/Illinois}, year = {2007}, language = {en} } @inproceedings{MayKrauseEhrlichetal.2005, author = {May, Patrick and Krause, F. and Ehrlich, C. and Maaskola, J. and Steinke, Thomas}, title = {ZIB threading pipeline - A webservice-based, distributed structure prediction workflow.}, booktitle = {Proceedings of the German Conference on Bioinformatics (GCB)}, pages = {125 -- 126}, year = {2005}, language = {en} } @inproceedings{MichalskyGoedePreissneretal.2004, author = {Michalsky, E. and Goede, A. and Preissner, Robert and May, Patrick and Steinke, Thomas}, title = {A distributed pipeline for structure prediction}, booktitle = {CASP6 Abstract Book, Sixth Meeting on the Critical Assessment of Techniques for Protein Structure Prediction, Gaeta, Italy}, pages = {112 -- 114}, year = {2004}, language = {en} } @inproceedings{RotherMuellerTrissletal.2004, author = {Rother, Kristian and M{\"u}ller, Heiko and Trißl, Silke and Koch, Ina and Steinke, Thomas and Preissner, Robert and Fr{\"o}mmel, Cornelius and Leser, Ulf}, title = {Columba: Multidimensional Data Integration of Protein Annotations}, volume = {2994}, booktitle = {Data Integration in the Life Sciences, First International Workshop, DILS 2004, Leipzig, Germany, March 25-26}, editor = {Rahm, Erhard}, publisher = {Springer Berlin / Heidelberg}, doi = {10.1007/978-3-540-24745-6_11}, pages = {156 -- 171}, year = {2004}, language = {en} } @article{TrisslRotherMuelleretal.2005, author = {Trißl, Silke and Rother, Kristian and M{\"u}ller, Heiko and Steinke, Thomas and Koch, Ina and Preissner, Robert and Fr{\"o}mmel, Cornelius and Leser, Ulf}, title = {Columba: an integrated database of proteins, structures, and annotations}, volume = {6}, journal = {BMC Bioinformatics}, doi = {10.1186/1471-2105-6-81}, pages = {81 -- 92}, year = {2005}, language = {en} } @inproceedings{MayKalliesSteinke2005, author = {May, Patrick and Kallies, B. and Steinke, Thomas}, title = {THESEUS - a parallel threading core for highthroughput protein structure prediction}, booktitle = {Proceedings of the 7th Congress of the World Association of Theoretically Orientes Chemists (WARTOC)}, year = {2005}, language = {en} } @inproceedings{MaySteinkeMeyer2004, author = {May, Patrick and Steinke, Thomas and Meyer, Michael}, title = {THESEUS: A Parallel Threading Core}, booktitle = {Procs. 12th Internat. Conf. on Intelligent Systems for Mol. Bio. (ISMB) and 3rd European Conf. on Comp. Bio. (ECCB), Glasgow}, pages = {199}, year = {2004}, language = {en} } @inproceedings{RotherTrisslMuelleretal.2003, author = {Rother, Kristian and Trissl, S. and M{\"u}ller, H. and May, Patrick and Heek, R. and Preissner, Robert and Steinke, Thomas and Koch, Ina and Leser, Ulf and Fr{\"o}mmel, Cornelius}, title = {Columba - A Database of Annotations of Protein Structure}, booktitle = {ECCB - Proceedings of the European Conference on Computational Biology in conjunction with the French National Conference on Bioinformatics}, editor = {Christophe, C. and Lenhof, H.-P. and Sagot, M.-F.}, pages = {109 -- 110}, year = {2003}, language = {en} } @inproceedings{MayEhrlichSteinke2006, author = {May, Patrick and Ehrlich, Hans-Christian and Steinke, Thomas}, title = {ZIB Structure Prediction Pipeline: Composing a Complex Biological Workflow Through Web Services}, volume = {4375}, booktitle = {Euro-Par 2006 Workshops}, editor = {Lehner, Wolfgang and Meyer, Norbert and Streit, Achim and Stewart, Craig}, publisher = {Springer}, pages = {1148 -- 1158}, year = {2006}, language = {en} } @article{KolbeckMaySchmidtGoenneretal.2006, author = {Kolbeck, Bj{\"o}rn and May, Patrick and Schmidt-Goenner, T. and Steinke, Thomas and Knapp, E.}, title = {Connectivity independent protein-structure alignment: a hierarchical approach}, volume = {7}, journal = {BMC Bioinformatics}, pages = {510}, year = {2006}, language = {en} } @inproceedings{SteinkeReinefeld2006, author = {Steinke, Thomas and Reinefeld, Alexander}, title = {Experiences with High-Level Programming of FPGAs on Cray XD1}, booktitle = {CUG Proceedings}, year = {2006}, language = {en} } @article{CordesPreissnerSteinke2003, author = {Cordes, Frank and Preissner, Robert and Steinke, Thomas}, title = {How Does a Protein Work?}, volume = {18}, journal = {BioTOPics J. of Biotechnology Berlin-Brandenburg}, number = {2}, pages = {4 -- 5}, year = {2003}, language = {en} } @article{ZieglerOgurreckSteinkeetal.2010, author = {Ziegler, Alexander and Ogurreck, Malte and Steinke, Thomas and Beckmann, Felix and Prohaska, Steffen and Ziegler, Andreas}, title = {Opportunities and challenges for digital morphology}, volume = {5}, journal = {Biology Direct}, number = {1}, doi = {10.1186/1745-6150-5-45}, pages = {45}, year = {2010}, language = {en} } @inproceedings{WendeNoackSchuettetal.2015, author = {Wende, Florian and Noack, Matthias and Sch{\"u}tt, Thorsten and Sachs, Stephen and Steinke, Thomas}, title = {Application Performance on a Cray XC30 Evaluation System with Xeon Phi Coprocessors at HLRN-III}, booktitle = {Cray User Group}, year = {2015}, language = {en} } @incollection{BaumannLaubenderLaeuteretal.2015, author = {Baumann, Wolfgang and Laubender, Guido and L{\"a}uter, Matthias and Reinefeld, Alexander and Schimmel, Christian and Steinke, Thomas and Tuma, Christian and Wollny, Stefan}, title = {HLRN-III at Zuse Institute Berlin}, booktitle = {Contemporary High Performance Computing: From Petascale toward Exascale, Volume Two}, editor = {Vetter, Jeffrey S.}, publisher = {Chapman and Hall/CRC}, isbn = {9781498700627}, pages = {81 -- 114}, year = {2015}, language = {en} } @inproceedings{WendeCordesSteinke2014, author = {Wende, Florian and Cordes, Frank and Steinke, Thomas}, title = {Concurrent Kernel Execution on Xeon Phi within Parallel Heterogeneous Workloads}, volume = {8632}, booktitle = {Euro-Par 2014: Parallel Processing. 20th International Conference, Porto, Portugal, August 25-29, 2014, Proceedings}, doi = {10.1007/978-3-319-09873-9_66}, pages = {788 -- 799}, year = {2014}, language = {en} } @inproceedings{WendeLaubenderSteinke2014, author = {Wende, Florian and Laubender, Guido and Steinke, Thomas}, title = {Integration of Intel Xeon Phi Servers into the HLRN-III Complex: Experiences, Performance and Lessons Learned}, booktitle = {CUG2014 Proceedings}, year = {2014}, language = {en} } @inproceedings{WendeSteinke2013, author = {Wende, Florian and Steinke, Thomas}, title = {Swendsen-Wang Multi-Cluster Algorithm for the 2D/3D Ising Model on Xeon Phi and GPU}, booktitle = {Proceeding SC '13 Proceedings of SC13: International Conference for High Performance Computing, Networking, Storage and Analysis Article No. 83 ACM New York, NY, USA, 2013}, doi = {http://dx.doi.org/10.1145/2503210.2503254}, year = {2013}, language = {en} } @misc{BenkridElArabyHuangetal.2012, author = {Benkrid, Khaled and El-Araby, Esam and Huang, Miaoqing and Sano, Kentaro and Steinke, Thomas}, title = {High-Performance Reconfigurable Computing - editorial for Special Issue of the International Journal of Reconfigurable Computing}, volume = {2012}, journal = {International Journal of Reconfigurable Computing}, doi = {10.1155/2012/104963}, pages = {1 -- 2}, year = {2012}, language = {en} } @inproceedings{NoackWendeSteinkeetal.2014, author = {Noack, Matthias and Wende, Florian and Steinke, Thomas and Cordes, Frank}, title = {A Unified Programming Model for Intra- and Inter-Node Offloading on Xeon Phi Clusters}, booktitle = {SC '14: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis. SC14, November 16-21, 2014, New Orleans, Louisiana, USA}, doi = {10.1109/SC.2014.22}, year = {2014}, abstract = {Standard offload programming models for the Xeon Phi, e.g. Intel LEO and OpenMP 4.0, are restricted to a single compute node and hence a limited number of coprocessors. Scaling applications across a Xeon Phi cluster/supercomputer thus requires hybrid programming approaches, usually MPI+X. In this work, we present a framework based on heterogeneous active messages (HAM-Offload) that provides the means to offload work to local and remote (co)processors using a unified offload API. Since HAM-Offload provides similar primitives as current local offload frameworks, existing applications can be easily ported to overcome the single-node limitation while keeping the convenient offload programming model. We demonstrate the effectiveness of the framework by using it to enable a real-world application from the field of molecular dynamics to use multiple local and remote Xeon Phis. The evaluation shows good scaling behavior. Compared with LEO, performance is equal for large offloads and significantly better for small offloads.}, language = {en} } @misc{WendeSteinkeKlemmetal.2014, author = {Wende, Florian and Steinke, Thomas and Klemm, Michael and Reinefeld, Alexander}, title = {Concurrent Kernel Offloading}, journal = {High Performance Parallelism Pearls}, editor = {Reinders, James and Jeffers, Jim}, publisher = {Morgan Kaufman, Elsevier}, isbn = {978-0128021187}, year = {2014}, language = {en} } @misc{WendeSteinkeReinefeld2015, author = {Wende, Florian and Steinke, Thomas and Reinefeld, Alexander}, title = {The Impact of Process Placement and Oversubscription on Application Performance: A Case Study for Exascale Computing}, issn = {1438-0064}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-53560}, year = {2015}, abstract = {With the growing number of hardware components and the increasing software complexity in the upcoming exascale computers, system failures will become the norm rather than an exception for long-running applications. Fault-tolerance can be achieved by the creation of checkpoints during the execution of a parallel program. Checkpoint/Restart (C/R) mechanisms allow for both task migration (even if there were no hardware faults) and restarting of tasks after the occurrence of hardware faults. Affected tasks are then migrated to other nodes which may result in unfortunate process placement and/or oversubscription of compute resources. In this paper we analyze the impact of unfortunate process placement and oversubscription of compute resources on the performance and scalability of two typical HPC application workloads, CP2K and MOM5. Results are given for a Cray XC30/40 with Aries dragonfly topology. Our results indicate that unfortunate process placement has only little negative impact while oversubscription substantially degrades the performance. The latter might be only (partially) beneficial when placing multiple applications with different computational characteristics on the same node.}, language = {en} } @article{HeinzeDipankarHenkenetal.2017, author = {Heinze, Rieke and Dipankar, Anurag and Henken, Cintia Carbajal and Moseley, Christopher and Sourdeval, Odran and Tr{\"o}mel, Silke and Xie, Xinxin and Adamidis, Panos and Ament, Felix and Baars, Holger and Barthlott, Christian and Behrendt, Andreas and Blahak, Ulrich and Bley, Sebastian and Brdar, Slavko and Brueck, Matthias and Crewell, Susanne and Deneke, Hartwig and Di Girolamo, Paolo and Evaristo, Raquel and Fischer, J{\"u}rgen and Frank, Christopher and Friederichs, Petra and G{\"o}cke, Tobias and Gorges, Ksenia and Hande, Luke and Hanke, Moritz and Hansen, Akio and Hege, Hans-Christian and Hose, Corinna and Jahns, Thomas and Kalthoff, Norbert and Klocke, Daniel and Kneifel, Stefan and Knippertz, Peter and Kuhn, Alexander and van Laar, Thriza and Macke, Andreas and Maurer, Vera and Mayer, Bernhard and Meyer, Catrin I. and Muppa, Shravan K. and Neggers, Roeland A. J. and Orlandi, Emiliano and Pantillon, Florian and Pospichal, Bernhard and R{\"o}ber, Niklas and Scheck, Leonhard and Seifert, Axel and Seifert, Patric and Senf, Fabian and Siligam, Pavan and Simmer, Clemens and Steinke, Sandra and Stevens, Bjorn and Wapler, Kathrin and Weniger, Michael and Wulfmeyer, Volker and Z{\"a}ngl, G{\"u}nther and Zhang, Dan and Quaas, Johannes}, title = {Large-eddy simulations over Germany using ICON: a comprehensive evaluation}, volume = {143}, journal = {Quarterly Journal of the Royal Meteorological Society}, number = {702}, doi = {10.1002/qj.2947}, pages = {69 -- 100}, year = {2017}, abstract = {Large-eddy simulations (LES) with the new ICOsahedral Non-hydrostatic atmosphere model (ICON) covering Germany are evaluated for four days in spring 2013 using observational data from various sources. Reference simulations with the established Consortium for Small-scale Modelling (COSMO) numerical weather prediction model and further standard LES codes are performed and used as a reference. This comprehensive evaluation approach covers multiple parameters and scales, focusing on boundary-layer variables, clouds and precipitation. The evaluation points to the need to work on parametrizations influencing the surface energy balance, and possibly on ice cloud microphysics. The central purpose for the development and application of ICON in the LES configuration is the use of simulation results to improve the understanding of moist processes, as well as their parametrization in climate models. The evaluation thus aims at building confidence in the model's ability to simulate small- to mesoscale variability in turbulence, clouds and precipitation. The results are encouraging: the high-resolution model matches the observed variability much better at small- to mesoscales than the coarser resolved reference model. In its highest grid resolution, the simulated turbulence profiles are realistic and column water vapour matches the observed temporal variability at short time-scales. Despite being somewhat too large and too frequent, small cumulus clouds are well represented in comparison with satellite data, as is the shape of the cloud size spectrum. Variability of cloud water matches the satellite observations much better in ICON than in the reference model. In this sense, it is concluded that the model is fit for the purpose of using its output for parametrization development, despite the potential to improve further some important aspects of processes that are also parametrized in the high-resolution model.}, language = {en} } @misc{WendeLaubenderSteinke2014, author = {Wende, Florian and Laubender, Guido and Steinke, Thomas}, title = {Integration of Intel Xeon Phi Servers into the HLRN-III Complex: Experiences, Performance and Lessons Learned}, issn = {1438-0064}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-49990}, year = {2014}, abstract = {The third generation of the North German Supercomputing Alliance (HLRN) compute and storage facilities comprises a Cray XC30 architecture with exclusively Intel Ivy Bridge compute nodes. In the second phase, scheduled for November 2014, the HLRN-III configuration will undergo a substantial upgrade together with the option of integrating accelerator nodes into the system. To support the decision-making process, a four-node Intel Xeon Phi cluster is integrated into the present HLRN-III infrastructure at ZIB. This integration includes user/project management, file system access and job management via the HLRN-III batch system. For selected workloads, in-depth analysis, migration and optimization work on Xeon Phi is in progress. We will report our experiences and lessons learned within the Xeon Phi installation and integration process. For selected examples, initial results of the application evaluation on the Xeon Phi cluster platform will be discussed.}, language = {en} } @inproceedings{DresslerSteinke2014, author = {Dreßler, Sebastian and Steinke, Thomas}, title = {An Automated Approach for Estimating the Memory Footprint of Non-linear Data Objects}, volume = {8374}, booktitle = {Euro-Par 2013: Parallel Processing Workshops}, doi = {10.1007/978-3-642-54420-0_25}, pages = {249 -- 258}, year = {2014}, language = {en} } @misc{WendeSteinkeCordes2014, author = {Wende, Florian and Steinke, Thomas and Cordes, Frank}, title = {Multi-threaded Kernel Offloading to GPGPU Using Hyper-Q on Kepler Architecture}, issn = {1438-0064}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-50362}, year = {2014}, abstract = {Small-scale computations usually cannot fully utilize the compute capabilities of modern GPGPUs. With the Fermi GPU architecture Nvidia introduced the concurrent kernel execution feature allowing up to 16 GPU kernels to execute simultaneously on a shared GPU device for a better utilization of the respective resources. Insufficient scheduling capabilities in this respect, however, can significantly reduce the theoretical concurrency level. With the Kepler GPU architecture Nvidia addresses this issue by introducing the Hyper-Q feature with 32 hardware managed work queues for concurrent kernel execution. We investigate the Hyper-Q feature within heterogeneous workloads with multiple concurrent host threads or processes offloading computations to the GPU each. By means of a synthetic benchmark kernel and a hybrid parallel CPU-GPU real-world application, we evaluate the performance obtained with Hyper-Q on GPU and compare it against a kernel reordering mechanism introduced by the authors for the Fermi architecture.}, language = {en} } @article{KruegerGrunzkeGesingetal.2014, author = {Kr{\"u}ger, Jens and Grunzke, Richard and Gesing, Sandra and Breuers, Sebastian and Brinkmann, Andr{\´e} and de la Garza, Luis and Kohlbacher, Oliver and Kruse, Martin and Nagel, Wolfgang and Packschies, Lars and M{\"u}ller-Pfefferkorn, Ralph and Sch{\"a}fer, Patrick and Sch{\"a}rfe, Charlotta and Steinke, Thomas and Schlemmer, Tobias and Warzecha, Klaus Dieter and Zink, Andreas and Herres-Pawlis, Sonja}, title = {The MoSGrid Science Gateway - A Complete Solution for Molecular Simulations}, volume = {10}, journal = {Journal of Chemical Theory and Computation}, number = {6}, doi = {10.1021/ct500159h}, pages = {2232 -- 2245}, year = {2014}, language = {en} } @inproceedings{WendeSteinkeReinefeld2015, author = {Wende, Florian and Steinke, Thomas and Reinefeld, Alexander}, title = {The Impact of Process Placement and Oversubscription on Application Performance: A Case Study for Exascale Computing}, booktitle = {Proceedings of the 3rd International Conference on Exascale Applications and Software, EASC 2015}, editor = {Gray, A. and Smith, L. and Weiland, M.}, publisher = {The University of Edinburgh}, isbn = {978 -0-9 926615 -1-9}, pages = {13 -- 18}, year = {2015}, language = {en} } @article{GrunzkeBreuersGesingetal.2013, author = {Grunzke, Richard and Breuers, Sebastian and Gesing, Sandra and Herres-Pawlis, Sonja and Kruse, Martin and Blunk, Dirk and de la Garza, Luis and Packschies, Lars and Sch{\"a}fer, Patrick and Sch{\"a}rfe, Charlotta and Schlemmer, Tobias and Steinke, Thomas and Schuller, Bernd and M{\"u}ller-Pfefferkorn, Ralph and J{\"a}kel, Ren{\´e} and Nagel, Wolfgang and Atkinson, Malcolm and Kr{\"u}ger, Jens}, title = {Standards-based metadata management for molecular simulations}, journal = {Concurrency and Computation: Practice and Experience}, doi = {10.1002/cpe.3116}, year = {2013}, language = {en} } @inproceedings{WeinholdLackorzynskiBierbaumetal.2016, author = {Weinhold, Carsten and Lackorzynski, Adam and Bierbaum, Jan and K{\"u}ttler, Martin and Planeta, Maksym and H{\"a}rtig, Hermann and Shiloh, Amnon and Levy, Ely and Ben-Nun, Tal and Barak, Amnon and Steinke, Thomas and Sch{\"u}tt, Thorsten and Fajerski, Jan and Reinefeld, Alexander and Lieber, Matthias and Nagel, Wolfgang}, title = {FFMK: A Fast and Fault-tolerant Microkernel-based System for Exascale Computing}, booktitle = {SPPEXA Symposium 2016}, doi = {10.1007/978-3-319-40528-5_18}, year = {2016}, language = {en} } @inproceedings{FajerskiNoackReinefeldetal.2016, author = {Fajerski, J. and Noack, Matthias and Reinefeld, Alexander and Schintke, Florian and Sch{\"u}tt, Thorsten and Steinke, Thomas}, title = {Fast In-Memory Checkpointing with POSIX API for Legacy Exascale-Applications}, booktitle = {SPPEXA Symposium 2016}, doi = {10.1007/978-3-319-40528-5_19}, year = {2016}, language = {en} } @misc{MeyerSteinkeBrandletal.2000, author = {Meyer, Michael and Steinke, Thomas and Brandl, Maria and S{\"u}hnel, J{\"u}rgen}, title = {Density functional study of guanine and uracil quartets and of guanine quartet metal/ion complexes}, url = {http://nbn-resolving.de/urn:nbn:de:0297-zib-5842}, number = {00-16}, year = {2000}, abstract = {The structures and interaction energies of guanine and uracil quartets have been determined by B3LYP hybrid density functional calculations. The total interaction energy \$\Delta\$E\$^{T}\$ of the \$\it{C}\$\$_{4h}\$-symmetric guanine quartet consisting of Hoogsteen type base pairs with two hydrogen bonds between two neighbour bases is -66.07 kcal/mol at the highest level. The uracil quartet with C6-H6...O4 interactions between the individual bases has only a small interaction energy of -20.92 kcal/mol and the interaction energy of -24.63 kcal/mol for the alternative structure with N3-H3...O4 hydrogen bonds is only slightly more negative. Cooperative effects contribute between 10 and 25 \\% to all interaction energies. Complexes of metal ions with G-quartets can be classified into different structure types. The one with Ca\$^{2+}\$ in the central cavity adopts a \$\it{C}\$\$_{4h}\$-symmetric structure with coplanar bases, whereas the energies of the planar and non-planar Na\$^{+}\$ complexes are almost identical. The small ions Li\$^{+}\$, Be\$^{2+}\$, Cu\$^{+}\$ and Zn\$^{2+}\$ prefer a non-planar \$\it{S}\$\$_{4}\$-symmetric structure. The lack of co-planarity prevents probably a stacking of these base quartets. The central cavity is too small for K\$^{+}\$ ions and therefore this ion favours in contrast to all other investigated ions a \$\it{C}\$\$_{4}\$-symmetric complex, which is 4.73 kcal/mol more stable than the \$\it{C}\$\$_{4h}\$-symmetric one. The distance 1.665 {\AA} between K\$^{+}\$ and the root mean squares plane of the guanine bases is approximately half of the distance between two stacked G-quartets. The total interaction energy of alkaline earth ion complexes exceeds the ones with alkali ions. Within both groups of ions the interaction energy decreases with an increasing row position in the periodic table. The B3LYP and BLYP methods lead to similar structures and energies. Both methods are suitable for hydrogen-bonded biological systems. Compared with the before mentioned methods the HCTH functional leads to longer hydrogen bonds and different relative energies for two U-quartets. Finally we calculated also structures and relative energies with the MMFF94 forcefield. Contrary to all DFT methods, MMFF94 predicts bifurcated C-H...O contacts in the uracil quartet. In the G-quartet the MMFF94 hydrogen bond distances N2-H22...N7 are shorter than the DFT distances, whereas the N1-H1...O6 distances are longer.}, language = {en} } @article{AlhaddadFoerstnerGrothetal.2022, author = {Alhaddad, Samer and F{\"o}rstner, Jens and Groth, Stefan and Gr{\"u}newald, Daniel and Grynko, Yevgen and Hannig, Frank and Kenter, Tobias and Pfreundt, F.J. and Plessl, Christian and Schotte, Merlind and Steinke, Thomas and Teich, J. and Weiser, Martin and Wende, Florian}, title = {The HighPerMeshes Framework for Numerical Algorithms on Unstructured Grids}, volume = {34}, journal = {Concurrency and Computation: Practice and Experience}, number = {14}, doi = {10.1002/cpe.6616}, year = {2022}, abstract = {Solving PDEs on unstructured grids is a cornerstone of engineering and scientific computing. Heterogeneous parallel platforms, including CPUs, GPUs, and FPGAs, enable energy-efficient and computationally demanding simulations. In this article, we introduce the HPM C++-embedded DSL that bridges the abstraction gap between the mathematical formulation of mesh-based algorithms for PDE problems on the one hand and an increasing number of heterogeneous platforms with their different programming models on the other hand. Thus, the HPM DSL aims at higher productivity in the code development process for multiple target platforms. We introduce the concepts as well as the basic structure of the HPM DSL, and demonstrate its usage with three examples. The mapping of the abstract algorithmic description onto parallel hardware, including distributed memory compute clusters, is presented. A code generator and a matching back end allow the acceleration of HPM code with GPUs. Finally, the achievable performance and scalability are demonstrated for different example problems.}, language = {en} } @inproceedings{CheginiSteinkeWeiser2022, author = {Chegini, Fatemeh and Steinke, Thomas and Weiser, Martin}, title = {Efficient adaptivity for simulating cardiac electrophysiology with spectral deferred correction methods}, arxiv = {http://arxiv.org/abs/2311.07206}, year = {2022}, abstract = {The locality of solution features in cardiac electrophysiology simulations calls for adaptive methods. Due to the overhead incurred by established mesh refinement and coarsening, however, such approaches failed in accelerating the computations. Here we investigate a different route to spatial adaptivity that is based on nested subset selection for algebraic degrees of freedom in spectral deferred correction methods. This combination of algebraic adaptivity and iterative solvers for higher order collocation time stepping realizes a multirate integration with minimal overhead. This leads to moderate but significant speedups in both monodomain and cell-by-cell models of cardiac excitation, as demonstrated at four numerical examples.}, language = {en} } @inproceedings{ChristgauKnaustSteinke2022, author = {Christgau, Steffen and Knaust, Marius and Steinke, Thomas}, title = {A First Step towards Support for MPI Partitioned Communication on SYCL-programmed FPGAs}, booktitle = {IEEE/ACM International Workshop on Heterogeneous High-performance Reconfigurable Computing, H2RC@SC 2022, Dallas, TX, USA, November 13-18, 2022}, publisher = {IEEE}, doi = {10.1109/H2RC56700.2022.00007}, pages = {9 -- 17}, year = {2022}, abstract = {Version 4.0 of the Message Passing Interface standard introduced the concept of Partitioned Communication which adds support for multiple contributions to a communication buffer. Although initially targeted at multithreaded MPI applications, Partitioned Communication currently receives attraction in the context of accelerators, especially GPUs. In this publication it is demonstrated that this communication concept can also be implemented for SYCL-programmed FPGAs. This includes a discussion of the design space and the presentation of a prototypical implementation. Experimental results show that a lightweight implementation on top of an existing MPI library is possible. In addition, the presented approach also reveals issues in both the SYCL and the MPI standard which need to be addresses for improved support of the intended communication style.}, language = {en} } @inproceedings{BrookFullerSwinburneetal.2022, author = {Brook, Glenn and Fuller, Douglas and Swinburne, John and Christgau, Steffen and L{\"a}uter, Matthias and Rodrigues Pel{\´a}, Ronaldo and Lewin, Stein and Christian, Tuma and Steinke, Thomas}, title = {An Early Scalability Study of Omni-Path Express}, address = {Hamburg}, organization = {ISC 2022 IXPUG}, doi = {10.13140/RG.2.2.21353.57442}, pages = {8}, year = {2022}, abstract = {This work provides a brief description of Omni-Path Express and the current status of its development, stability, and performance. Basic benchmarks that highlight the gains of OPX over PSM2 are provided, and the results of an initial performance and scalability study of several applications are presented.}, language = {en} } @inproceedings{KnaustSeilerReinertetal.2022, author = {Knaust, Marius and Seiler, Enrico and Reinert, Knut and Steinke, Thomas}, title = {Co-Design for Energy Efficient and Fast Genomic Search: Interleaved Bloom Filter on FPGA}, booktitle = {FPGA '22: Proceedings of the 2022 ACM/SIGDA International Symposium on Field-Programmable Gate Arrays}, doi = {10.1145/3490422.3502366}, pages = {180 -- 189}, year = {2022}, abstract = {Next-Generation Sequencing technologies generate a vast and exponentially increasing amount of sequence data. The Interleaved Bloom Filter (IBF) is a novel indexing data structure which is state-of-the-art for distributing approximate queries with an in-memory data structure. With it, a main task of sequence analysis pipelines, (approximately) searching large reference data sets for sequencing reads or short sequence patterns like genes, can be significantly accelerated. To meet performance and energy-efficiency requirements, we chose a co-design approach of the IBF data structure on the FPGA platform. Further, our OpenCL-based implementation allows a seamless integration into the widely used SeqAn C++ library for biological sequence analysis. Our algorithmic design and optimization strategy takes advantage of FPGA-specific features like shift register and the parallelization potential of many bitwise operations. We designed a well-chosen schema to partition data across the different memory domains on the FPGA platform using the Shared Virtual Memory concept. We can demonstrate significant improvements in energy efficiency of up to 19x and in performance of up to 5.6x, respectively, compared to a well-tuned, multithreaded CPU reference.}, language = {en} } @inproceedings{BaumannNoackSteinke2021, author = {Baumann, Tobias and Noack, Matthias and Steinke, Thomas}, title = {Performance Evaluation and Improvements of the PoCL Open-Source OpenCL Implementation on Intel CPUs}, booktitle = {IWOCL'21: International Workshop on OpenCL}, doi = {10.1145/3456669.3456698}, year = {2021}, abstract = {The Portable Computing Language (PoCL) is a vendor independent open-source OpenCL implementation that aims to support a variety of compute devices in a single platform. Evaluating PoCL versus the Intel OpenCL implementation reveals significant performance drawbacks of PoCL on Intel CPUs - which run 92 \% of the TOP500 list. Using a selection of benchmarks, we identify and analyse performance issues in PoCL with a focus on scheduling and vectorisation. We propose a new CPU device-driver based on Intel Threading Building Blocks (TBB), and evaluate LLVM with respect to automatic compiler vectorisation across work-items in PoCL. Using the TBB driver, it is possible to narrow the gap to Intel OpenCL and even outperform it by a factor of up to 1.3× in our proxy application benchmark with a manual vectorisation strategy.}, language = {en} }