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. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Kenzo Van Craeynest

dblp:61/7014 · DBLP profile ↗
← Back
7ranked-venue papers
4as first author
0since 2021 · last 2016
—ORCID · none

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

Systems, architecture and hardware · 6 · 4 first-authorSoftware engineering, systems software and programming languages · 2 · 1 first-author

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
4 papers
Processor architecture and microarchitecture · 55% Energy-efficient computing · 16% Embedded and real-time systems · 12%
Software engineering, system software, and programming languages
1 paper
Runtime systems and virtual machines · 100%

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

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture › multicore design
heterogeneous multicore
0.632016
Boosting the Priority of Garbage: Scheduling Collection on Heterogeneous Multicore Processors · ACM Trans. Archit. Code Optim. 2016
Understanding fundamental design choices in single-ISA heterogeneous multicore architectures · ACM Trans. Archit. Code Optim. 2013
Scheduling heterogeneous multi-cores through performance impact estimation (PIE) · ISCA 2012
Runtime systems and virtual machines
garbage collection
0.212016
Boosting the Priority of Garbage: Scheduling Collection on Heterogeneous Multicore Processors · ACM Trans. Archit. Code Optim. 2016
Energy-efficient computing › energy-aware scheduling
big.LITTLE scheduling
0.212016
Boosting the Priority of Garbage: Scheduling Collection on Heterogeneous Multicore Processors · ACM Trans. Archit. Code Optim. 2016
Embedded and real-time systems › real-time scheduling › multicore scheduling
cache-aware scheduling
0.212014
Undersubscribed threading on clustered cache architectures · HPCA 2014
Processor architecture and microarchitecture
chip multiprocessor
0.212014
Undersubscribed threading on clustered cache architectures · HPCA 2014
Parallel and multicore computing › parallel scheduling
thread scheduling
0.212014
Undersubscribed threading on clustered cache architectures · HPCA 2014
Performance modeling and evaluation
analytical modeling
0.212013
Understanding fundamental design choices in single-ISA heterogeneous multicore architectures · ACM Trans. Archit. Code Optim. 2013
Processor architecture and microarchitecture
multicore design
0.212013
Understanding fundamental design choices in single-ISA heterogeneous multicore architectures · ACM Trans. Archit. Code Optim. 2013
Processor architecture and microarchitecture › multicore design › heterogeneous multicore
single-ISA heterogeneous cores
0.212013
Understanding fundamental design choices in single-ISA heterogeneous multicore architectures · ACM Trans. Archit. Code Optim. 2013
Energy-efficient computing › energy-efficient architecture
energy-efficient multicore
0.122014
Undersubscribed threading on clustered cache architectures · HPCA 2014
Understanding fundamental design choices in single-ISA heterogeneous multicore architectures · ACM Trans. Archit. Code Optim. 2013
Embedded and real-time systems › energy-efficient embedded systems
energy-efficient scheduling
0.112016
Boosting the Priority of Garbage: Scheduling Collection on Heterogeneous Multicore Processors · ACM Trans. Archit. Code Optim. 2016
Performance modeling and evaluation
performance prediction
0.012012
Scheduling heterogeneous multi-cores through performance impact estimation (PIE) · ISCA 2012

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

adaptive scheduling algorithm · 0.5working set analysis · 0.2simulation · 0.2job-to-core mapping · 0.2analytical modeling · 0.2MLP profiling · 0.1ILP profiling · 0.1CPI stack profiling · 0.1
YearPublicationVenuePosition
2016 Boosting the Priority of Garbage: Scheduling Collection on Heterogeneous Multicore Processors
abstract
While hardware is evolving toward heterogeneous multicore architectures, modern software applications are increasingly written in managed languages. Heterogeneity was born of a need to improve energy efficiency; however, we want the performance of our applications not to suffer from limited resources. How best to schedule managed language applications on a mix of big, out-of-order cores and small, in-order cores is an open question, complicated by the host of service threads that perform key tasks such as memory management. These service threads compete with the application for core and memory resources, and garbage collection (GC) must sometimes suspend the application if there is not enough memory available for allocation. In this article, we explore concurrent garbage collection’s behavior, particularly when it becomes critical, and how to schedule it on a heterogeneous system to optimize application performance. While some applications see no difference in performance when GC threads are run on big versus small cores, others—those with GC criticality —see up to an 18% performance improvement. We develop a new, adaptive scheduling algorithm that responds to GC criticality signals from the managed runtime, giving more big-core cycles to the concurrent collector when it is under pressure and in danger of suspending the application. Our experimental results show that our GC-criticality-aware scheduler is robust across a range of heterogeneous architectures with different core counts and frequency scaling and across heap sizes. Our algorithm is performance and energy neutral for GC-uncritical Java applications and significantly speeds up GC-critical applications by 16%, on average, while being 20% more energy efficient for a heterogeneous multicore with three big cores and one small core.
Shoaib Akram 0001, Jennifer B. Sartor, Kenzo Van Craeynest, Wim Heirman, Lieven Eeckhout
ACM Trans. Archit. Code Optim.3
2014 Undersubscribed threading on clustered cache architectures
abstract
Recent many-core processors such as Intel's Xeon Phi and GPGPUs specialize in running highly scalable parallel applications at high performance while simultaneously embracing energy efficiency as a first-order design constraint. The traditional belief is that full utilization of all available cores also translates into the highest possible performance. In this paper, we study the effects of cache capacity conflicts and competition for shared off-chip bandwidth; and show that undersubscription, or not utilizing all cores, often yields significant increases in both performance and energy efficiency. Based on a detailed shared working set analysis we make the case for clustered cache architectures as an efficient design point for exploiting both data sharing and undersubscription, while providing low-latency and ease of implementation in many-core processors. We then propose ClusteR-aware Undersubscribed Scheduling of Threads (CRUST) which dynamically matches an application's working set size and off-chip bandwidth demands with the available on-chip cache capacity and off-chip bandwidth. CRUST improves application performance and energy efficiency by 15% on average, and up to 50%, for the NPB and SPEC OMP benchmarks. In addition, we make recommendations for the design of future many-core architectures, and show that taking the undersubscription usage model into account moves the optimum performance under the cores-versus-cache area tradeoff towards design points with more cores and less cache.
Wim Heirman, Trevor E. Carlson, Kenzo Van Craeynest, Ibrahim Hur, Aamer Jaleel, Lieven Eeckhout
HPCA3
2014 BarrierPoint: Sampled simulation of multi-threaded applications
abstract
Sampling is a well-known technique to speed up architectural simulation of long-running workloads while maintaining accurate performance predictions. A number of sampling techniques have recently been developed that extend well-known single-threaded techniques to allow sampled simulation of multi-threaded applications. Unfortunately, prior work is limited to non-synchronizing applications (e.g., server throughput workloads); requires the functional simulation of the entire application using a detailed cache hierarchy which limits the overall simulation speedup potential; leads to different units of work across different processor architectures which complicates performance analysis; or, requires massive machine resources to achieve reasonable simulation speedups. In this work, we propose BarrierPoint, a sampling methodology to accelerate simulation by leveraging globally synchronizing barriers in multi-threaded applications. BarrierPoint collects microarchitecture-independent code and data signatures to determine the most representative inter-barrier regions, called barrierpoints. BarrierPoint estimates total application execution time (and other performance metrics of interest) through detailed simulation of these barrierpoints only, leading to substantial simulation speedups. Barrierpoints can be simulated in parallel, use fewer simulation resources, and define fixed units of work to be used in performance comparisons across processor architectures. Our evaluation of BarrierPoint using NPB and Parsec benchmarks reports average simulation speedups of 24.7× (and up to 866.6×) with an average simulation error of 0.9% and 2.9% at most. On average, BarrierPoint reduces the number of simulation machine resources needed by 78×.
Trevor E. Carlson, Wim Heirman, Kenzo Van Craeynest, Lieven Eeckhout
ISPASS3
2013 Fairness-aware scheduling on single-ISA heterogeneous multi-cores
abstract
Single-ISA heterogeneous multi-cores consisting of small (e.g., in-order) and big (e.g., out-of-order) cores dramatically improve energy- and power-efficiency by scheduling workloads on the most appropriate core type. A significant body of recent work has focused on improving system throughput through scheduling. However, none of the prior work has looked into fairness. Yet, guaranteeing that all threads make equal progress on heterogeneous multi-cores is of utmost importance for both multi-threaded and multi-program workloads to improve performance and quality-of-service. Furthermore, modern operating systems affinitize workloads to cores (pinned scheduling) which dramatically affects fairness on heterogeneous multi-cores. In this paper, we propose fairness-aware scheduling for single-ISA heterogeneous multi-cores, and explore two flavors for doing so. Equal-time scheduling runs each thread or workload on each core type for an equal fraction of the time, whereas equal-progress scheduling strives at getting equal amounts of work done on each core type. Our experimental results demonstrate an average 14% (and up to 25%) performance improvement over pinned scheduling through fairness-aware scheduling for homogeneous multi-threaded workloads; equal-progress scheduling improves performance by 32% on average for heterogeneous multi-threaded workloads. Further, we report dramatic improvements in fairness over prior scheduling proposals for multi-program workloads, while achieving system throughput comparable to throughput-optimized scheduling, and an average 21% improvement in throughput over pinned scheduling.
Kenzo Van Craeynest, Shoaib Akram 0001, Wim Heirman, Aamer Jaleel, Lieven Eeckhout
PACT1
2013 Understanding fundamental design choices in single-ISA heterogeneous multicore architectures
abstract
Single-ISA heterogeneous multicore processors have gained substantial interest over the past few years because of their power efficiency, as they offer the potential for high overall chip throughput within a given power budget. Prior work in heterogeneous architectures has mainly focused on how heterogeneity can improve overall system throughput. To what extent heterogeneity affects per-program performance has remained largely unanswered. In this article, we aim at understanding how heterogeneity affects both chip throughput and per-program performance; how heterogeneous architectures compare to homogeneous architectures under both performance metrics; and how fundamental design choices, such as core type, cache size, and off-chip bandwidth, affect performance. We use analytical modeling to explore a large space of single-ISA heterogeneous architectures. The analytical model has linear-time complexity in the number of core types and programs of interest, and offers a unique opportunity for exploring the large space of both homogeneous and heterogeneous multicore processors in limited time. Our analysis provides several interesting insights: While it is true that heterogeneity can improve system throughput, it fundamentally trades per-program performance for chip throughput; although some heterogeneous configurations yield better throughput and per-program performance than homogeneous designs, some homogeneous configurations are optimal for particular throughput versus per-program performance trade-offs. Two core types provide most of the benefits from heterogeneity and a larger number of core types does not contribute much; job-to-core mapping is both important and challenging for heterogeneous multicore processors to achieve optimum performance. Limited off-chip bandwidth does alter some of the fundamental design choices in heterogeneous multicore architectures, such as the need for large on-chip caches for achieving high throughput, and per-program performance degrading more relative to throughput under constrained off-chip bandwidth.
Kenzo Van Craeynest, Lieven Eeckhout
ACM Trans. Archit. Code Optim.1
2012 Scheduling heterogeneous multi-cores through performance impact estimation (PIE)
abstract
Single-ISA heterogeneous multi-core processors are typically composed of small (e.g., in-order) power-efficient cores and big (e.g., out-of-order) high-performance cores. The effectiveness of heterogeneous multi-cores depends on how well a scheduler can map workloads onto the most appropriate core type. In general, small cores can achieve good performance if the workload inherently has high levels of ILP. On the other hand, big cores provide good performance if the workload exhibits high levels of MLP or requires the ILP to be extracted dynamically. This paper proposes Performance Impact Estimation (PIE) as a mechanism to predict which workload-to-core mapping is likely to provide the best performance. PIE collects CPI stack, MLP and ILP profile information, and estimates performance if the workload were to run on a different core type. Dynamic PIE adjusts the scheduling at runtime and thereby exploits fine-grained time-varying execution behavior. We show that PIE requires limited hardware support and can improve system performance by an average of 5.5% over recent state-of-the-art scheduling proposals and by 8.7% over a sampling-based scheduling policy.
Kenzo Van Craeynest, Aamer Jaleel, Lieven Eeckhout, Paolo Narváez, Joel S. Emer
ISCA1
2009 MLP-Aware Runahead Threads in a Simultaneous Multithreading Processor
Kenzo Van Craeynest, Stijn Eyerman, Lieven Eeckhout
HiPEAC1