Demo Data from EDBT 2026 / reviewers in the wild / expert
Hiroshige Hayashizaki
dblp:36/5111
· DBLP profile ↗
5ranked-venue papers
2as first author
0since 2021 · last 2012
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 4 · 1 first-authorSystems, architecture and hardware · 3 · 2 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.
| Software engineering, system software, and programming languages
3 papers |
Runtime systems and virtual machines · 89% Compilers and program optimization · 11% |
Topics — the 5 heaviest of 6, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Runtime systems and virtual machines › dynamic compilation › just-in-time compilation
trace-based compilation |
0.4 | 3 | 2012 | Adaptive multi-level compilation in a trace-based Java JIT compiler · OOPSLA 2012 Reducing trace selection footprint for large-scale Java applications without performance loss · OOPSLA 2011 Improving the performance of trace-based systems by false loop filtering · ASPLOS 2011 |
Runtime systems and virtual machines › dynamic compilation
just-in-time compilation |
0.3 | 3 | 2012 | Adaptive multi-level compilation in a trace-based Java JIT compiler · OOPSLA 2012 Reducing trace selection footprint for large-scale Java applications without performance loss · OOPSLA 2011 Improving the performance of trace-based systems by false loop filtering · ASPLOS 2011 |
Runtime systems and virtual machines › dynamic compilation › just-in-time compilation
trace selection |
0.2 | 2 | 2011 | Reducing trace selection footprint for large-scale Java applications without performance loss · OOPSLA 2011 Improving the performance of trace-based systems by false loop filtering · ASPLOS 2011 |
Compilers and program optimization › dynamic optimization
adaptive compilation |
0.1 | 1 | 2012 | Adaptive multi-level compilation in a trace-based Java JIT compiler · OOPSLA 2012 |
Runtime systems and virtual machines › virtual machine implementation
java virtual machine |
0.1 | 1 | 2012 | Adaptive multi-level compilation in a trace-based Java JIT compiler · OOPSLA 2012 |
Methods — techniques the papers use, named apart from their topics
trace selection · 0.1timer-based sampling profiler · 0.1control flow graph · 0.1trace compilation · 0.1profiling · 0.1call-stack comparison · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2012 | Adaptive multi-level compilation in a trace-based Java JIT compilerabstractThis paper describes our multi-level compilation techniques implemented in a trace-based Java JIT compiler (trace-JIT). Like existing multi-level compilation for method-based compilers, we start JIT compilation with a small compilation scope and a low optimization level so the program can start running quickly. Then we identify hot paths with a timer-based sampling profiler, generate long traces that capture the hot paths, and recompile them with a high optimization level to improve the peak performance. A key to high performance is selecting long traces that effectively capture the entire hot paths for upgrade recompilations. To do this, we introduce a new technique to generate a directed graph representing the control flow, a TTgraph, and use the TTgraph in the trace selection engine to efficiently select long traces. We show that our multi-level compilation improves the peak performance of programs by up to 58.5% and 22.2% on average compared to compiling all of the traces only at a low optimization level. Comparing the performance with our multi-level compilation to the performance when compiling all of the traces at a high optimization level, our technique can reduce the startup times of programs by up to 61.1% and 31.3% on average without significant reduction in the peak performance. Our results show that our adaptive multi-level compilation can balance the peak performance and startup time by taking advantage of different optimization levels. Hiroshi Inoue, Hiroshige Hayashizaki, Peng Wu 0001, Toshio Nakatani |
OOPSLA | 2 |
| 2011 | Improving the performance of trace-based systems by false loop filteringabstractTrace-based compilation is a promising technique for language compilers and binary translators. It offers the potential to expand the compilation scopes that have traditionally been limited by method boundaries.Detecting repeating cyclic execution paths and capturing the detected repetitions into traces is a key requirement for trace selection algorithms to achieve good optimization and performance with small amounts of code. One important class of repetition detection is cyclic-path-based repetition detection, where a cyclic execution path (a path that starts and ends at the same instruction address) is detected as a repeating cyclic execution path.However, we found many cyclic paths that are not repeating cyclic execution paths, which we call false loops. A common class of false loops occurs when a method is invoked from multiple call-sites. A cycle is formed between two invocations of the method from different call-sites, but which does not represent loops or recursion. False loops can result in shorter traces and smaller compilation scopes, and degrade the performance.We propose false loop filtering, an approach to reject false loops in the repetition detection step of trace selection, and a technique called false loop filtering by call-stack-comparison, which rejects a cyclic path as a false loop if the call stacks at the beginning and the end of the cycle are different.We applied false loop filtering to our trace-based Java™ JIT compiler that is based on IBM's J9 JVM. We found that false loop filtering achieved an average improvement of 16% and 10% for the DaCapo benchmark when applied to two baseline trace selection algorithms, respectively, with up to 37% improvement for individual benchmarks. In the end, with false loop filtering, our trace-based JIT achieves a performance comparable to that of the method-based J9 JVM/JIT using the corresponding optimization level. Hiroshige Hayashizaki, Peng Wu 0001, Hiroshi Inoue, Mauricio J. Serrano, Toshio Nakatani |
ASPLOS | 1 |
| 2011 | A trace-based Java JIT compiler retrofitted from a method-based compilerabstractThis paper describes our trace-based JIT compiler (trace-JIT) for Java developed from a production-quality method-based JIT compiler (method-JIT). We first describe the design and implementation of our trace-JIT with emphasis on how we retrofitted a method-JIT as a trace-based compiler. Then we show that the trace-JIT often produces better quality code than the method-JIT by extending the compilation scope. Forming longer traces that span multiple methods turns out to be more powerful than method inlining in extending the compilation scope. It reduces method-invocation overhead and also offers more compiler optimization opportunities. However, the trace-JIT incurs additional runtime overhead compared to the method-JIT that may be offset by gains from the improved code quality. Overall, our trace-JIT achieved performance roughly comparable to the baseline method-JIT. We also discuss the issues in trace-based compilation from the viewpoint of compiler optimizations. Our results show the potentials of trace-based compilation as an alternative or complementary approach to compiling languages with mature method-based compilers. Hiroshi Inoue, Hiroshige Hayashizaki, Peng Wu 0001, Toshio Nakatani |
CGO | 2 |
| 2011 | Reducing trace selection footprint for large-scale Java applications without performance lossabstractWhen optimizing large-scale applications, striking the balance between steady-state performance, start-up time, and code size has always been a grand challenge. While recent advances in trace compilation have significantly improved the steady-state performance of trace JITs for large-scale Java applications, the size control aspect of a trace compilation system remains largely overlooked. For instance, using the DaCapo 9.12 benchmarks, we observe that 40% of traces selected by a state-of-the-art trace selection algorithm are short-lived and, on average, each selected basic block is replicated 13 times in the trace cache. Peng Wu 0001, Hiroshige Hayashizaki, Hiroshi Inoue, Toshio Nakatani |
OOPSLA | 2 |
| 2008 | MCAMP: communication optimization on massively parallel machines with hierarchical scratch-pad memoryabstractMassively parallel machines that integrate a large number of simple processors and small scratch-pad memories (SPMs) into a single chip can achieve a high peak performance per watt of power. In these machines, communication optimizations are important because the communication bandwidth tends to be a bottleneck. Previously proposed communication optimizations using copy candidates, which have been shown to be effective, detect frequently reused array regions by compile-time analysis and copy the regions to scratch-pad memories nearer to the processors. However, they have been proposed for uniprocessor systems or small parallel machines with one or more layers of scratch-pad memories, and the analysis time increases when they are applied to massively parallel machines. In this paper, we propose Multilayer Copy-candidate Analysis for Massively Parallel machines (MCAMP), a communication optimization method for massively parallel machines. MCAMP re-formalizes the framework used in earlier works and improves the scalability of the analysis by assuming the homogeneity of the target systems. We implemented an MCAMP optimizer, which takes an input program that consists of perfectly nested loops containing array references and computation codes, and generates optimized communication. We measured the performance of the output programs of the MCAMP optimizer by executing them on a real massively parallel machine GRAPE-DR using a software tool chain that we also implemented. We showed that MCAMP can achieve optimal data transfer patterns and comparable performance to that of hand-optimized codes with a short analysis time. Hiroshige Hayashizaki, Yutaka Sugawara, Mary Inaba, Kei Hiraki |
PACT | 1 |