arXiv.itsnick.co

an independent field guide to 23 million papers from arXiv & OpenAlex — not affiliated with arXiv.org

Author

Kenneth Hoste

19 papers · 2006–2020

2006: 42007: 22008: 52009: 12010: 12011: 22012: 12013: 02014: 22015: 02016: 02017: 02018: 02019: 02020: 1
2006peak 5 in 20082020

Frequent co-authors

Papers

showing 1–19 of 19 RSS

Microarchitecture-Independent Workload Characterization

Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · IEEE Micro · · cited 190× · DOI ↗ · more like this ·

For computer designers, understanding the characteristics of workloads running on current and future computer systems is of utmost importance during microprocessor design. a microarchitecture-independent method ensures an accurate characterization of inherent program behavior and avoids the weaknesses of, microarchitecture-dependent metrics.

Cole

Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 154× · DOI ↗ · more like this ·

Modern compilers implement a large number of optimizations which all interact in complex ways, and which all have a different impact on code quality, compilation time, code size, energy consumption, etc. For this reason, compilers typically provide a limited number of standard optimization levels, such as -O1, -O2, -O3 and -Os, that combine various optimizations providing a number of trade-offs between multiple objective functions (such as code quality, compilation time and code size). The construction of these optimization levels, i.e., choosing which optimizations to activate at each level, is a manual process typically done using high-level heuristics based on the compiler developer's experience.

Performance prediction based on inherent program similarity

Kenneth Hoste, Aashish Phansalkar, Lieven Eeckhout +3 more

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 153× · DOI ↗ · more like this ·

A key challenge in benchmarking is to predict the performance of an application of interest on a number of platforms in order to determine which platform yields the best performance. This paper proposes an approach for doing this. We measure a number of microarchitecture-independent characteristics from the application of interest, and relate these characteristics to the characteristics of the programs from a previously profiled benchmark suite. Based on the similarity of the application of interest with programs in the benchmark suite, we make a performance prediction of the application of interest. We propose and evaluate three approaches (normalization, principal components analysis and genetic algorithm) to transform the raw data set of microarchitecture-independent characteristics into a benchmark space in which the relative distance is a measure for the relative performance…

Comparing Benchmarks Using Key Microarchitecture-Independent Characteristics

Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 70× · DOI ↗ · more like this ·

Understanding the behavior of emerging workloads is important for designing next generation microprocessors. For addressing this issue, computer architects and performance analysts build benchmark suites of new application domains and compare the behavioral characteristics of these benchmark suites against well-known benchmark suites. Current practice typically compares workloads based on microarchitecture-dependent characteristics generated from running these workloads on real hardware. There is one pitfall though with comparing benchmarks using microarchitecture-dependent characteristics, namely that completely different inherent program behavior may yield similar microarchitecture-dependent behavior. This paper proposes a methodology for characterizing benchmarks based on microarchitecture-independent characteristics. This methodology minimizes the number of inherent program…

EasyBuild: Building Software with Ease

Kenneth Hoste, Jens Timmerman, Andy Georges +1 more

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 62× · DOI ↗ · more like this ·

Maintaining a collection of software installations for a diverse user base can be a tedious, repetitive, error-prone and time-consuming task. Because most end-user software packages for an HPC environment are not readily available in existing OS package managers, they require significant extra effort from the user support team. Reducing this effort would free up a large amount of time for tackling more urgent tasks. In this work, we present EasyBuild, a software installation framework written in Python that aims to support the various installation procedures used by the vast collection of software packages that are typically installed in an HPC environment -- catering to widely different user profiles. It is built on top of existing tools, and provides support for well-established installa- tion procedures. Supporting customised installation procedures requires little effort, and…

Mechanistic-empirical processor performance modeling for constructing CPI stacks on real hardware

Stijn Eyerman, Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 47× · DOI ↗ · more like this ·

Analytical processor performance modeling has received increased interest over the past few years. There are basically two approaches to constructing an analytical model: mechanistic modeling and empirical modeling. Mechanistic modeling builds up an analytical model starting from a basic understanding of the underlying system - white-box approach - whereas empirical modeling constructs an analytical model through statistical inference and machine learning from training data, e.g., regression modeling or neural networks - black-box approach. While an empirical model is typically easier to construct, it provides less insight than a mechanistic model. This paper bridges the gap between mechanistic and empirical modeling through hybrid mechanistic-empirical modeling (gray-box modeling). Starting from a generic, parameterized performance model that is inspired by mechanistic modeling…

Modern Scientific Software Management Using EasyBuild and Lmod

Markus Geimer, Kenneth Hoste, Robert McLay

Computer Networks and Communications · Ghent University Academic Bibliography (Ghent University) · · cited 44× · DOI ↗ · more like this ·

HPC user support teams invest a lot of time and effort in installing scientific software for their users. A well-established practice is providing environment modules to make it easy for users to set up their working environment. Several problems remain, however: user support teams lack appropriate tools to manage a scientific software stack easily and consistently, and users still struggle to set up their working environment correctly. In this paper, we present a modern approach to installing (scientific) software that provides a solution to these common issues. We show how EasyBuild, a software build and installation framework, can be used to automatically install software and generate environment modules. By using a hierarchical module naming scheme to offer environment modules to users in a more structured way, and providing Lmod, a modern tool for working with environment modules…

Automated just-in-time compiler tuning

Kenneth Hoste, Andy Georges, Lieven Eeckhout

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 33× · DOI ↗ · more like this ·

Managed runtime systems, such as a Java virtual machine (JVM), are complex pieces of software with many interacting components. The Just-In-Time (JIT) compiler is at the core of the virtual machine, however, tuning the compiler for optimum performance is a challenging task. There are (i) many compiler optimizations and options, (ii) there may be multiple optimization levels (e.g., -O0, -O1, -O2), each with a specific optimization plan consisting of a collection of optimizations, (iii) the Adaptive Optimization System (AOS) that decides which method to optimize to which optimization level requires fine-tuning, and (iv) the effectiveness of the optimizations depends on the application as well as on the hardware platform. Current practice is to manually tune the JIT compiler which is both tedious and very time-consuming, and in addition may lead to suboptimal performance.

Analyzing commercial processor performance numbers for predicting performance of applications of interest

Kenneth Hoste, Lieven Eeckhout, Hendrik Blockeel

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 9× · DOI ↗ · more like this ·

Current practice in benchmarking commercial computer systems is to run a number of industry-standard benchmarks and to report performance numbers. The huge amount of machines and the large number of benchmarks for which performance numbers are published make it hard to observe clear performance trends though. In addition, these performance numbers for specific benchmarks do not provide insight into how applications of interest that are not part of the benchmark suite would perform on those machines. In this work we build a methodology for analyzing published commercial machine performance data sets. We apply statistical data analysis techniques, more in particular principal components analysis and cluster analysis, to reduce the amount of information to a manageable amount to facilitate its understanding. Visualizing SPEC CPU2000 performance numbers for 26 benchmarks and 1000+ machines…

archspec: A library for detecting, labeling, and reasoning about microarchitectures

Massimiliano Culpo, Gregory Becker, Carlos Eduardo Arango Gutierrez +2 more

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 8× · DOI ↗ · more like this ·

Optimizing scientific code for specific microarchitectures is critical for performance, as each new processor generation supports new, specialized vector instructions. There is a lack of support for this in package managers and container ecosystems however, and users often settle for generic, less optimized binaries because they run on a wide range of systems and are easy to install. This comes at a considerable cost in performance. In this paper we introduce archspec, a library for reasoning about processor microarchitectures. We present the design and capabilities of archspec, which include detecting and labeling of microarchitectures, reasoning about microarchitectures and comparing them for compatibility, and determining the compiler flags that should be used to compile software for a specific microarchitecture. We demonstrate the benefits that archspec brings by discussing several…

Characterizing the Unique and Diverse Behaviors in Existing and Emerging General-Purpose and Domain-Specific Benchmark Suites

Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 6× · DOI ↗ · more like this ·

Characterizing and understanding emerging workload behavior is of vital importance to ensure next generation microprocessors perform well on their anticipated future workloads. This paper compares a number of benchmark suites from emerging application domains, such as bio-informatics (BioPerf), biometrics (BioMetricsWorkload) and multimedia (MediaBench II), against general-purpose workloads represented by SPEC CPU2000 and CPU2006. Although these benchmark suites have been characterized before, prior work did not capture the benchmark suites' inherent (microarchitecture-independent) behavior, nor did they provide a phase-level characterization.

Analysing commercial processor performance numbers for predicting performance of applications of interest

Kenneth Hoste, Lieven Eeckhout, Hendrik Blockeel

Computer Networks and Communications · · cited 0× · OpenAlex ↗ · more like this ·

Current practice in benchmarking commercial computer systems is to run a number of industry-standard benchmarks and to report performance numbers. The huge amount of machines and the large number of benchmarks for which performance numbers are pub-lished make it hard to observe clear performance trends though. In addition, these performance numbers for specific benchmarks do not provide insight into how applications of interest that are not part of the benchmark suite would perform on those machines. In this work we build a methodology for analyzing published commercial machine performance data sets. We apply statistical data analysis techniques, more in particular principal components analysis and cluster analysis, to reduce the amount of information to a manageable amount to facilitate its understanding. Visuali-zing SPEC CPU2000 performance numbers for 26 benchmarks and 1000+…

Mechanistic-EmpiricalProcessorPerformanceModeling forConstructingCPIStacksonRealHardware

Stijn Eyerman, Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · · cited 0× · OpenAlex ↗ · more like this ·

Analytical processor performance modeling has received increased interest over the past few years. There are basically two approaches to constructing an analytical model: mechanistic modeling and empirical modeling. Mechanistic modeling builds up an analytical model starting from a basic understanding of the underlying system — white-box approach — whereas empirical modeling constructs ananalyticalmodel throughstatistical inference and machine learning from training data, e.g., regression modeling or neural networks — black-box approach. While an empirical model is typically easier to construct, it provides less insight than a mechanistic model. This paper bridges the gap between mechanistic and empirical modeling through hybrid mechanistic-empirical modeling (gray-box modeling). Starting from a generic, parameterized performance model that is inspired by mechanistic modeling…

ABSTRACT COLE: Compiler Optimization Level Exploration

Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · · cited 0× · OpenAlex ↗ · more like this ·

Modern compilers implement a large number of optimizations which all interact in complex ways, and which all have a different impact on code quality, compilation time, code size, energy consumption, etc. For this reason, compilers typically provide a limited number of standard optimization levels, such as-O1,-O2,-O3 and-Os, that combine various optimizations providing a number of trade-offs between multiple objective functions (such as code quality, compilation time and code size). The construction of these optimization levels, i.e., choosing which optimizations to activate at each level, is a manual process typically done using high-level heuristics based on the compiler developer’s experience. This paper proposes COLE, Compiler Optimization Level Exploration, a framework for automatically finding Pareto optimal optimization levels through multi-objective evolutionary searching. Our…

RUNNING ON CURRENT AND FUTURE COMPUTER SYSTEMS IS OF UTMOST IMPORTANCE DURING MICROPROCESSOR DESIGN. A MICROARCHITECTURE-INDEPENDENT METHOD ENSURES AN ACCURATE CHARACTERIZATION OF INHERENT PROGRAM BEHAVIOR AND AVOIDS THE WEAKNESSES OF MICROARCHITECTURE-DE

Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · · cited 0× · OpenAlex ↗ · more like this ·

...... The workloads that run on our computer systems are always evolving. Software companies continually come up with new applications, many triggered by the increasing computational power available. It is important that computer designers understand the characteristics of these emerging workloads to optimize systems for their target workloads. Moreover, the need for a solid workload characterization methodology is increasing with the shift to chip multiprocessors—especially heterogeneous CMPs with various cores specialized for particular types of workloads. Computer architects and performance analysts are well aware of the workload drift phenomenon, and to address it, they typically collect benchmarks to represent emerging workloads. Examples of recently introduced benchmark suites covering emerging workloads are MediaBench for multimedia workloads, MiBench and EEMBC (Embedded…

Analyzing Commercial Processor Performance Numbers for Predicting Performance of Applications of Interest ∗ ABSTRACT

Kenneth Hoste

Artificial Intelligence · · cited 0× · OpenAlex ↗ · more like this ·

Current practice in benchmarking commercial computer systems is to run a number of industry-standard benchmarks and to report performance numbers. The huge amount of machines and the large number of benchmarks for which performance numbers are published make it hard to observe clear performance trends though. In addition, these performance numbers for specific benchmarks do not provide insight into how applications of interest that are not part of the benchmark suite would perform on those machines. In this work we build a methodology for analyzing published commercial machine performance data sets. We apply statistical data analysis techniques, more in particular principal components analysis and cluster analysis, to reduce the amount of information to a manageable amount to facilitate its understanding. Visualizing SPEC CPU2000 performance numbers for 26 benchmarks and 1000+ machines…

Identifying the Best Performing Hardware Platform Based on Inherent Program Similarity

Kenneth Hoste, Lieven Eeckhout, Andy Georges +1 more

Hardware and Architecture · Ghent University Academic Bibliography (Ghent University) · · cited 0× · OpenAlex ↗ · more like this ·

An important problem in benchmarking is to identify the platform that yields the best performance for an application of interest. This paper proposes a methodology for doing this, using both microarchitecture-independent characteristics and genetic algorithms. We first compare the application of interest with the programs from a profiled benchmark suite. We subsequently make a performance prediction based on the inherent program similarity of the application of interest with the benchmarks in the benchmark suite. The value of our methodology is shown by comparing it with the current approach for choosing the best platform for a given application, i.e. choosing the platform that yields the best average performance over all benchmarks.

Comparing benchmarks using key microarchitectureindependent characteristics. Accepted for

Kenneth Hoste, Lieven Eeckhout

Hardware and Architecture · · cited 0× · OpenAlex ↗ · more like this ·

Abstract — Understanding the behavior of emerging workloads is important for designing next generation microprocessors. For addressing this issue, computer architects and performance analysts build benchmark suites of new application domains and compare the behavioral characteristics of these benchmark suites against well-known benchmark suites. Current practice typically compares workloads based on microarchitecture-dependent characteristics generated from running these workloads on real hardware. There is one pitfall though with comparing benchmarks using microarchitecture-dependent characteristics, namely that completely different inherent program behavior may yield similar microarchitecture-dependent behavior. This paper proposes a methodology for characterizing benchmarks based on microarchitecture-independent characteristics. This methodology minimizes the number of inherent…