Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data.

Hans Johansen

dblp:51/11365 · DBLP profile ↗
← Back
6ranked-venue papers
0as first author
2since 2021 · last 2023
0000-0002-9644-9982ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 6 · 2 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
3 papers
High-performance computing · 49% Distributed systems · 23% Memory systems · 23%
Software engineering, system software, and programming languages
2 papers
Compilers and program optimization · 100%

Topics — the 8 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
High-performance computing
stencil computation
0.722019
Exploiting reuse and vectorization in blocked stencil computations on CPUs and GPUs · SC 2019
SIMD code generation for stencils on brick decompositions · PPoPP 2018
Distributed systems
communication optimization
0.512021
Improving communication by optimizing on-node data movement with data layout · PPoPP 2021
Memory systems
data layout optimization
0.512021
Improving communication by optimizing on-node data movement with data layout · PPoPP 2021
Compilers and program optimization
loop optimization
0.412019
Exploiting reuse and vectorization in blocked stencil computations on CPUs and GPUs · SC 2019
High-performance computing
scientific computing systems
0.412019
Exploiting reuse and vectorization in blocked stencil computations on CPUs and GPUs · SC 2019
Compilers and program optimization
code generation
0.312018
SIMD code generation for stencils on brick decompositions · PPoPP 2018
Compilers and program optimization › code generation
SIMD code generation
0.312018
SIMD code generation for stencils on brick decompositions · PPoPP 2018
GPUs and heterogeneous computing
GPU computing
0.112019
Exploiting reuse and vectorization in blocked stencil computations on CPUs and GPUs · SC 2019

Methods — techniques the papers use, named apart from their topics

vectorization · 0.8data blocking · 0.8vector scatter associative reordering · 0.7brick data layout · 0.7memory mapping · 0.5indirection-based data layout · 0.5
YearPublicationVenuePosition
2023 PAQR: Pivoting Avoiding QR factorization
abstract
The solution of linear least-squares problems is at the heart of many scientific and engineering applications. While any method able to minimize the backward error of such problems is considered numerically stable, the theory states that the forward error depends on the condition number of the matrix in the system of equations. On the one hand, the QR factorization is an efficient method to solve such problems, but the solutions it produces may have large forward errors when the matrix is rank deficient. On the other hand, rank-revealing QR (RRQR) is able to produce smaller forward errors on rank deficient matrices, but its cost is prohibitive compared to QR due to memory-inefficient operations. The aim of this paper is to propose PAQR for the solution of rank-deficient linear least-squares problems as an alternative solution method. It has the same (or smaller) cost as QR and is as accurate as QR with column pivoting in many practical cases. In addition to presenting the algorithm and its implementations on different hardware architectures, we compare its accuracy and performance results on a variety of application-derived problems.
Wissam M. Sid-Lakhdar, Sébastien Cayrols, Daniel Bielich, Ahmad Abdelfattah, Piotr Luszczek, Mark Gates, Stanimire Tomov, Hans Johansen, David B. Williams-Young, Timothy A. Davis 0001, Jack J. Dongarra, Hartwig Anzt
IPDPS8
2021 Improving communication by optimizing on-node data movement with data layout
abstract
We present optimizations to improve communication performance by reducing on-node data movement for a class of distributed memory applications. The primary concept is to eliminate the data movement associated with packing and unpacking subsets of the data during communication. With the rapid rise in network injection bandwidth reducing off-node data movement cost, on-node data movement can be significantly more expensive than computation and network communication. This data movement is especially costly for small domains - as in memory-intensive multi-physics codes or when strong scaling to reduce time-to-solution. The optimizations presented include (1) optimizing data layout through indirection to enable pack-free communication; (2) creating contiguous views of memory using memory mapping thus minimizing the number of messages; and (3) applying these techniques to intra-node data movement including CPU-GPU data movement. The benefits of these optimizations are demonstrated in stencil benchmarks against a highly-optimized baseline, reducing communication time by up to 14.4×.
Tuowen Zhao, Mary W. Hall, Hans Johansen, Samuel Williams 0001
PPoPP3
2019 Exploiting reuse and vectorization in blocked stencil computations on CPUs and GPUs
abstract
Stencil computations in real-world scientific applications may contain multiple interrelated stencils, have multiple input grids, and use higher order discretizations with high arithmetic intensity and complex expression structures. In combination, these properties place immense demands on the memory hierarchy that limit performance. Blocking techniques like tiling are used to exploit reuse in caches. Additional fine-grain data blocking can also reduce TLB, hardware prefetch, and cache pressure.
Tuowen Zhao, Protonu Basu, Samuel Williams 0001, Mary W. Hall, Hans Johansen
SC5
2018 SIMD code generation for stencils on brick decompositions
abstract
We present a stencil library and associated compiler code generation framework designed to maximize performance on higher-order stencil computations through the use of two main technologies: a fine-grained brick data layout designed to exploit the inherent multidimensional spatial locality endemic to stencil computations, and a vector scatter associative reordering transformation that reduces vector loads and alignment operations and exposes opportunities for the backend compiler to reduce computation. For a range of stencil computations, we compare the generated code expressed in the brick library to the standard tiled code. We attain up to a 7.2X speedup on the most complex stencils when running on an Intel Knights Landing (Xeon Phi) processor.
Tuowen Zhao, Mary W. Hall, Protonu Basu, Samuel Williams 0001, Hans Johansen
PPoPP5
2016 Data Elevator: Low-Contention Data Movement in Hierarchical Storage System
abstract
Hierarchical storage subsystems that include multiple layers of burst buffers (BB) and disk-based parallel file systems (PFS), are becoming an essential part of HPC systems to address the I/O performance gap. However, the state-of-the-art software for managing these hierarchical storage subsystems, such as Cray DataWarp, requires user involvement in moving data among storage layers. Such manual data movement may experience poor performance because of resource contention on the I/O servers of a layer for serving data movement in the hierarchy as well as regular read/write requests. In this paper, we propose a new system, named Data Elevator, for transparently and efficiently moving data in hierarchical storage. Users specify the final destination for their data, typically a PFS. Data Elevator intercepts the I/O calls, stages data on a fast persistent storage layer (for example, an SSD-based burst buffer), and then asynchronously transfers the data to the final destination in the background. Data Elevator reduces the resource contention on BB servers via offloading the data movement from a fixed number of BB server nodes to compute nodes. The number of the compute nodes is configurable based on the data movement load. Data Elevator also allows optimizations, such as overlapping read and write operations, choosing I/O modes, and aligning buffer boundaries. In our tests with large-scale scientific applications, Data Elevator is as much as 4.2X faster than Cray DataWarp, and 4X faster than directly writing data to PFS.
Bin Dong 0002, Surendra Byna, Kesheng Wu, Prabhat, Hans Johansen, Jeffrey N. Johnson, Noel Keen
HiPC5
2015 Parallel In Situ Detection of Connected Components in Adaptive Mesh Refinement Data
abstract
Adaptive Mesh Refinement (AMR) represents a significant advance for scientific simulation codes, greatly reducing memory and compute requirements by dynamically varying simulation resolution over space and time. As simulation codes transition to AMR, existing analysis algorithms must also make this transition. One such algorithm, connected component detection, is of vital importance in many simulation and analysis contexts, with some simulation codes even relying on parallel, in situ connected component detection for correctness. Yet, current detection algorithms designed for uniform meshes are not applicable to hierarchical, non-uniform AMR, and to the best of our knowledge, AMR connected component detection has not been explored in the literature. Therefore, in this paper, we formally define the general problem of connected component detection for AMR, and present a general solution. Beyond solving the general detection problem, achieving viable in situ detection performance is even more challenging. The core issue is the conflict between the communication-intensive nature of connected component detection (in general, and especially for AMR data) and the requirement that in situ processes incur minimal performance impact on the co-located simulation. We address this challenge by presenting the first connected component detection methodology for structured AMR that is applicable in a parallel, in situ context. Our key strategy is the incorporation of an multi-phase AMR-aware communication pattern that synchronizes connectivity information across the AMR hierarchy. In addition, we distil our methodology to a generic framework within the Combo AMR infrastructure, making connected component detection services available for many existing applications. We demonstrate our method's efficacy by showing its ability to detect ice calving events in real time within the real-world BISICLES ice sheet modelling code. Results show up to a 6.8x speedup of our algorithm over the existing specialized BISICLES algorithm. We also show scalability results for our method up to 4,096 cores using a parallel Combo-based benchmark.
Xiaocheng Zou, Kesheng Wu, David A. Boyuka II, Daniel F. Martin, Surendra Byna, Houjun Tang, Kushal Bansal, Terry J. Ligocki, Hans Johansen, Nagiza F. Samatova
CCGRID9