Demo Data from EDBT 2026 / reviewers in the wild / expert
Hakbeom Jang
dblp:130/7699
· DBLP profile ↗
9ranked-venue papers
2as first author
2since 2021 · last 2022
0009-0003-7036-7879ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 7 · 1 first-author · 2 since 2021Software engineering, systems software and programming languages · 3 · 1 first-authorDatabases, data management, data science and information retrieval · 2 · 1 since 2021Artificial intelligence and machine learning · 1Applied, interdisciplinary, general and emerging computing · 1
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
6 papers |
Memory systems · 58% Storage systems · 19% Hardware accelerators and domain-specific architectures · 10% | |
| Artificial intelligence
1 paper |
Deep learning architectures and training · 100% | |
| Software engineering, system software, and programming languages
1 paper |
Runtime systems and virtual machines · 100% |
Topics — the 16 heaviest of 16, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Storage systems
flash and SSD |
0.5 | 2 | 2021 | Practical Erase Suspension for Modern Low-latency SSDs · USENIX ATC 2019 FlashNeuron: SSD-Enabled Large-Batch Training of Very Deep Neural Networks · FAST 2021 |
Machine learning › Deep learning architectures and training › training optimization
large-batch training |
0.5 | 1 | 2021 | FlashNeuron: SSD-Enabled Large-Batch Training of Very Deep Neural Networks · FAST 2021 |
Hardware accelerators and domain-specific architectures
machine learning accelerator |
0.5 | 1 | 2021 | FlashNeuron: SSD-Enabled Large-Batch Training of Very Deep Neural Networks · FAST 2021 |
Memory systems › cache
DRAM cache |
0.5 | 2 | 2016 | Efficient footprint caching for Tagless DRAM Caches · HPCA 2016 A fully associative, tagless DRAM cache · ISCA 2015 |
Memory systems › DRAM › DRAM architecture
3D-stacked DRAM |
0.4 | 1 | 2019 | Charon: Specialized Near-Memory Processing Architecture for Clearing Dead Objects in Memory · MICRO 2019 |
Storage systems › flash and SSD › SSD performance
low-latency SSD |
0.4 | 1 | 2019 | Practical Erase Suspension for Modern Low-latency SSDs · USENIX ATC 2019 |
Memory systems › processing-in-memory
near-memory processing |
0.4 | 1 | 2019 | Charon: Specialized Near-Memory Processing Architecture for Clearing Dead Objects in Memory · MICRO 2019 |
Memory systems
non-volatile memory |
0.4 | 1 | 2019 | Charon: Specialized Near-Memory Processing Architecture for Clearing Dead Objects in Memory · MICRO 2019 |
Memory systems
processing-in-memory |
0.4 | 1 | 2019 | Charon: Specialized Near-Memory Processing Architecture for Clearing Dead Objects in Memory · MICRO 2019 |
Memory systems › memory management › virtual memory
address translation |
0.3 | 2 | 2016 | A fully associative, tagless DRAM cache · ISCA 2015 Efficient footprint caching for Tagless DRAM Caches · HPCA 2016 |
Memory systems › memory management › virtual memory › address translation
TLB |
0.3 | 2 | 2016 | A fully associative, tagless DRAM cache · ISCA 2015 Efficient footprint caching for Tagless DRAM Caches · HPCA 2016 |
Runtime systems and virtual machines
interpreter |
0.2 | 1 | 2016 | Short-Circuit Dispatch: Accelerating Virtual Machine Interpreters on Embedded Processors · ISCA 2016 |
Processor architecture and microarchitecture
branch prediction |
0.2 | 1 | 2016 | Short-Circuit Dispatch: Accelerating Virtual Machine Interpreters on Embedded Processors · ISCA 2016 |
Processor architecture and microarchitecture › branch prediction
branch target buffer |
0.2 | 1 | 2016 | Short-Circuit Dispatch: Accelerating Virtual Machine Interpreters on Embedded Processors · ISCA 2016 |
Memory systems
cache |
0.2 | 1 | 2015 | A fully associative, tagless DRAM cache · ISCA 2015 |
Embedded and real-time systems
embedded processor |
0.1 | 1 | 2016 | Short-Circuit Dispatch: Accelerating Virtual Machine Interpreters on Embedded Processors · ISCA 2016 |
Methods — techniques the papers use, named apart from their topics
short-circuit dispatch · 0.5specialized processing unit · 0.4near-memory processing · 0.4simulation · 0.2fully associative caching · 0.23d stacking · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2022 | An Energy-Efficient DRAM Cache Architecture for Mobile Platforms With PCM-Based Main MemoryabstractA long battery life is a first-class design objective for mobile devices, and main memory accounts for a major portion of total energy consumption. Moreover, the energy consumption from memory is expected to increase further with ever-growing demands for bandwidth and capacity. A hybrid memory system with both DRAM and PCM can be an attractive solution to provide additional capacity and reduce standby energy. Although providing much greater density than DRAM, PCM has longer access latency and limited write endurance to make it challenging to architect it for main memory. To address this challenge, this article introduces CAMP, a novel DRAM c ache a rchitecture for m obile platforms with P CM-based main memory. A DRAM cache in this environment is required to filter most of the writes to PCM to increase its lifetime, and deliver highest efficiency even for a relatively small-sized DRAM cache that mobile platforms can afford. To address this CAMP divides DRAM space into two regions: a page cache for exploiting spatial locality in a bandwidth-efficient manner and a dirty block buffer for maximally filtering writes. CAMP improves the performance and energy-delay-product by 29.2% and 45.2%, respectively, over the baseline PCM-oblivious DRAM cache, while increasing PCM lifetime by 2.7×. And CAMP also improves the performance and energy-delay-product by 29.3% and 41.5%, respectively, over the state-of-the-art design with dirty block buffer, while increasing PCM lifetime by 2.5×. Dongsuk Shin, Hakbeom Jang, Kiseok Oh, Jae W. Lee |
ACM Trans. Embed. Comput. Syst. | 2 |
| 2021 | FlashNeuron: SSD-Enabled Large-Batch Training of Very Deep Neural Networks
Jonghyun Bae, Jongsung Lee 0001, Yunho Jin, Sam Son, Shine Kim, Hakbeom Jang, Tae Jun Ham, Jae W. Lee |
FAST | 6 |
| 2019 | Charon: Specialized Near-Memory Processing Architecture for Clearing Dead Objects in MemoryabstractGarbage collection (GC) is a standard feature for high productivity programming, saving a programmer from many nasty memory-related bugs. However, these productivity benefits come with a cost in terms of application throughput, worst-case latency, and energy consumption. Since the first introduction of GC by the Lisp programming language in the 1950s, a myriad of hardware and software techniques have been proposed to reduce this cost. While the idea of accelerating GC in hardware is appealing, its impact has been very limited due to narrow coverage, lack of flexibility, intrusive system changes, and significant hardware cost. Even with specialized hardware GC performance is eventually limited by memory bandwidth bottleneck. Fortunately, emerging 3D stacked DRAM technologies shed new light on this decades-old problem by enabling efficient near-memory processing with ample memory bandwidth. Thus, we propose Charon1, the first 3D stacked memory-based GC accelerator. Through a detailed performance analysis of HotSpot JVM, we derive a set of key algorithmic primitives based on their GC time coverage and implementation complexity in hardware. Then we devise a specialized processing unit to substantially improve their memory-level parallelism and throughput with a low hardware cost. Our evaluation of Charon with the full-production HotSpot JVM running two big data analytics frameworks, Spark and GraphChi, demonstrates a 3.29× geomean speedup and 60.7% energy savings for GC over the baseline 8-core out-of-order processor. Jaeyoung Jang, Jun Heo 0001, Yejin Lee 0001, Jaeyeon Won, Seonghak Kim, Sungjun Jung, Hakbeom Jang, Tae Jun Ham, Jae W. Lee |
MICRO | 7 |
| 2019 | Practical Erase Suspension for Modern Low-latency SSDs
Shine Kim, Jonghyun Bae, Hakbeom Jang, Wenjing Jin 0001, Jeonghun Gong, SeungYeon Lee, Tae Jun Ham, Jae W. Lee |
USENIX ATC | 3 |
| 2017 | Jointly optimizing task granularity and concurrency for in-memory mapreduce frameworksabstractRecently, in-memory big data processing frameworks have emerged, such as Apache Spark and Ignite, to accelerate workloads requiring frequent data reuse. With effective in-memory caching these frameworks eliminate most of I/O operations, which would otherwise be necessary for communication between producer and consumer tasks. However, this performance benefit is nullified if the memory footprint exceeds available memory size, due to excessive spill and garbage collection (GC) operations. To fit the working set in memory, two system parameters play an important role: number of data partitions (Npartitions) specifying task granularity, and number of tasks per each executor (Nthreads) specifying the degree of parallelism in execution. Existing approaches to optimizing these parameters either do not take into account workload characteristics, or optimize only one of the parameters in isolation, thus yielding suboptimal performance. This paper introduces WASP, a workload-aware task scheduler and partitioner, which jointly optimizes both parameters at runtime. To find an optimal setting, WASP first analyzes the DAG structure of a given workload, and uses an analytical model to predict optimal settings of Npartitionsand Nthreadsfor all stages based on their computation types. Taking this as input, the WASP scheduler employs a hill climbing algorithm to find an optimal Nthreadsfor each stage, thus maximizing concurrency while minimizing data spills and GCs. We prototype WASP on Spark and evaluate it using six workloads on three different parallel platforms. WASP improves performance by up to 3.22× and reduces the cluster operating cost on cloud by up to 40%, over the baseline following Spark Tuning Guidelines and provides robust performance for both shuffle-heavy and shuffle-light workloads. Jonghyun Bae, Hakbeom Jang, Wenjing Jin 0001, Jun Heo 0001, Jaeyoung Jang, Joo Young Hwang, Sangyeun Cho, Jae W. Lee |
IEEE BigData | 2 |
| 2016 | Efficient footprint caching for Tagless DRAM CachesabstractEfficient cache tag management is a primary design objective for large, in-package DRAM caches. Recently, Tagless DRAM Caches (TDCs) have been proposed to completely eliminate tagging structures from both on-die SRAM and in-package DRAM, which are a major scalability bottleneck for future multi-gigabyte DRAM caches. However, TDC imposes a constraint on DRAM cache block size to be the same as OS page size (e.g., 4KB) as it takes a unified approach to address translation and cache tag management. Caching at a page granularity, or page-based caching, incurs significant off-package DRAM bandwidth waste by over-fetching blocks within a page that are not actually used. Footprint caching is an effective solution to this problem, which fetches only those blocks that will likely be touched during the page's lifetime in the DRAM cache, referred to as the page's footprint. In this paper we demonstrate TDC opens up unique opportunities to realize efficient footprint caching with higher prediction accuracy and a lower hardware cost than the original footprint caching scheme. Since there are no cache tags in TDC, the footprints of cached pages are tracked at TLB, instead of cache tag array, to incur much lower on-die storage overhead than the original design. Besides, when a cached page is evicted, its footprint will be stored in the corresponding page table entry, instead of an auxiliary on-die structure (i.e., Footprint History Table), to prevent footprint thrashing among different pages, thus yielding higher accuracy in footprint prediction. The resulting design, called Footprint-augmented Tagless DRAM Cache (F-TDC), significantly improves the bandwidth efficiency of TDC, and hence its performance and energy efficiency. Our evaluation with 3D Through-Silicon-Via-based in-package DRAM demonstrates an average reduction of off-package bandwidth by 32.0%, which, in turn, improves IPC and EDP by 17.7% and 25.4%, respectively, over the state-of-the-art TDC with no footprint caching. Hakbeom Jang, Yongjun Lee, Youngsok Kim, Jangwoo Kim, Jinkyu Jeong, Jae W. Lee |
HPCA | 1 |
| 2016 | Short-Circuit Dispatch: Accelerating Virtual Machine Interpreters on Embedded ProcessorsabstractInterpreters are widely used to implement high-level language virtual machines (VMs), especially on resource-constrained embedded platforms. Many scripting languages employ interpreter-based VMs for their advantages over native code compilers, such as portability, smaller resource footprint, and compact codes. For efficient interpretation a script (program) is first compiled into an intermediate representation, or bytecodes. The canonical interpreter then runs an infinite loop that fetches, decodes, and executes one bytecode at a time. This bytecode dispatch loop is a well-known source of inefficiency, typically featuring a large jump table with a hard-to-predict indirect jump. Most existing techniques to optimize this loop focus on reducing the misprediction rate of this indirect jump in both hardware and software. However, these techniques are much less effective on embedded processors with shallow pipelines and low IPCs. Instead, we tackle another source of inefficiency more prominent on embedded platforms - redundant computation in the dispatch loop. To this end, we propose Short-Circuit Dispatch (SCD), a low cost architectural extension that enables fast, hardware-based bytecode dispatch with fewer instructions. The key idea of SCD is to overlay the software-created bytecode jump table on a branch target buffer (BTB). Once a bytecode is fetched, the BTB is looked up using the bytecode, instead of PC, as key. If it hits, the interpreter directly jumps to the target address retrieved from the BTB, otherwise, it goes through the original dispatch path. This effectively eliminates redundant computation in the dispatcher code for decode, bound check, and target address calculation, thus significantly reducing total instruction count. Our simulation results demonstrate that SCD achieves geomean speedups of 19.9% and 14.1% for two production-grade script interpreters for Lua and JavaScript, respectively. Moreover, our fully synthesizable RTL design based on a RISC-V embedded processor shows that SCD improves the EDP of the Lua interpreter by 24.2%, while increasing the chip area by only 0.72% at a 40nm technology node. Channoh Kim, Sungmin Kim, Hyeon-Gyu Cho, Jaehyeok Kim, Young H. Oh, Hakbeom Jang, Jae W. Lee |
ISCA | 7 |
| 2015 | A fully associative, tagless DRAM cacheabstractThis paper introduces a tagless cache architecture for large in-package DRAM caches. The conventional die-stacked DRAM cache has both a TLB and a cache tag array, which are responsible for virtual-to-physical and physical-to-cache address translation, respectively. We propose to align the granularity of caching with OS page size and take a unified approach to address translation and cache tag management. To this end, we introduce cache-map TLB (cTLB), which stores virtual-to-cache, instead of virtual-to-physical, address mappings. At a TLB miss, the TLB miss handler allocates the requested block into the cache if it is not cached yet, and updates both the page table and cTLB with the virtual-to-cache address mapping. Assuming the availability of large in-package DRAM caches, this ensures that an access to the memory region within the TLB reach always hits in the cache with low hit latency since a TLB access immediately returns the exact location of the requested block in the cache, hence saving a tag-checking operation. The remaining cache space is used as victim cache for memory pages that are recently evicted from cTLB. By completely eliminating data structures for cache tag management, from either on-die SRAM or in-package DRAM, the proposed DRAM cache achieves best scalability and hit latency, while maintaining high hit rate of a fully associative cache. Our evaluation with 3D Through-Silicon Via (TSV)-based in-package DRAM demonstrates that the proposed cache improves the IPC and energy efficiency by 30.9% and 39.5%, respectively, compared to the baseline with no DRAM cache. These numbers translate to 4.3% and 23.8% improvements over an impractical SRAM-tag cache requiring megabytes of on-die SRAM storage, due to low hit latency and zero energy waste for cache tags. Yongjun Lee, Hakbeom Jang, Hyunggyun Yang, Jangwoo Kim, Jinkyu Jeong, Jae W. Lee |
ISCA | 3 |
| 2013 | Practical speculative parallelization of variable-length decompression algorithmsabstractVariable-length coding is widely used for efficient data compression. Typically, the compressor splits the original data into blocks and compresses each block with variable-length codes, hence producing variable-length compressed blocks. Although the compressor can easily exploit ample block-level parallelism, it is much more difficult to extract such coarse-grain parallelism from the decompressor because a block boundary cannot be located until decompression of the previous block is completed. This paper presents novel algorithms to efficiently predict block boundaries and a runtime system that enables efficient block-level parallel decompression, called SDM. The SDM execution model features speculative pipelining with three stages: Scanner, Decompressor, and Merger. The scanner stage employs a high-confidence prediction algorithm that finds compressed block boundaries without fully decompressing individual blocks. This information is communicated to the parallel decompressor stage in which multiple blocks are decompressed in parallel. The decompressed blocks are merged in order by the merger stage to produce the final output. The SDM runtime is specialized to execute this pipeline correctly and efficiently on resource-constrained embedded platforms. With SDM we effectively parallelize three production-grade variable-length decompression algorithms?zlib, bzip2, and H.264?with maximum speedups of 2.50× and 8.53× (and geometric mean speedups of 1.96× and 4.04×) on 4-core and 36-core embedded platforms, respectively. Hakbeom Jang, Channoh Kim, Jae W. Lee |
LCTES | 1 |