EDBT 2026 Demo / reviewers in the wild / expert
Hyukwoo Park
dblp:159/9881
· DBLP profile ↗
5ranked-venue papers
4as first author
1since 2021 · last 2023
0000-0002-8525-0652ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Systems, architecture and hardware · 4 · 3 first-authorSoftware engineering, systems software and programming languages · 1 · 1 first-author · 1 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.
| Software engineering, system software, and programming languages
2 papers |
Compilers and program optimization · 50% Runtime systems and virtual machines · 31% Software maintenance and evolution · 19% | |
| Network and information security
2 papers |
Web and mobile security · 100% |
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 › virtual machine implementation
javascript engine |
0.6 | 2 | 2019 | Reusing the Optimized Code for JavaScript Ahead-of-Time Compilation · ACM Trans. Archit. Code Optim. 2019 Concurrent JavaScript Parsing for Faster Loading of Web Apps · ACM Trans. Archit. Code Optim. 2016 |
Compilers and program optimization › compiler construction
ahead-of-time compilation |
0.4 | 1 | 2019 | Reusing the Optimized Code for JavaScript Ahead-of-Time Compilation · ACM Trans. Archit. Code Optim. 2019 |
Software maintenance and evolution
code reuse |
0.4 | 1 | 2019 | Reusing the Optimized Code for JavaScript Ahead-of-Time Compilation · ACM Trans. Archit. Code Optim. 2019 |
Compilers and program optimization › dynamic optimization
profile-guided optimization |
0.4 | 1 | 2019 | Reusing the Optimized Code for JavaScript Ahead-of-Time Compilation · ACM Trans. Archit. Code Optim. 2019 |
Compilers and program optimization
parsing |
0.2 | 1 | 2016 | Concurrent JavaScript Parsing for Faster Loading of Web Apps · ACM Trans. Archit. Code Optim. 2016 |
Methods — techniques the papers use, named apart from their topics
profile-based optimization · 0.8ahead-of-time compilation · 0.8speculative heuristics · 0.5multi-threaded parsing · 0.5
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Dynamic code compression for JavaScript engineabstractAbstract Web applications created using web languages such as HTML, CSS, and JavaScript are widely used regardless of execution environments, owing to their portability and popularity. Since JavaScript language is conventionally used for complex computations in large‐scale web apps, many optimization techniques have been proposed to accelerate the JavaScript performance. However, most of these optimizations speed up JavaScript engines at the expense of consuming more memory. Hence, memory consumption becomes an additional concern in the JavaScript field. Based on the research on memory status, we unearthed that a substantial portion of the heap memory is allocated for JavaScript source code, particularly in lightweight JavaScript engines, which may range from 13.2% to a maximal 52.5% of the entire heap. To resolve this memory issue, this article suggests a new memory optimization method, called dynamic code compression that dynamically compresses the source code and keeps its compressed form instead of the source string. A novel heuristic is proposed to timely compress the source code. We also re‐design the internal structure of the JavaScript engine to efficiently compress the source code without incurring any conflict. Using our code compression method, we could reduce the entire heap memory by up to 43.3% and consistently downsize the overall heap size. From an evaluation of standard benchmarks, our approach showed just 2.7% degradation in performance with negligible compression overhead, proving the feasibility of the code compression technique. Hyukwoo Park, Seonghyun Kim, Boram Bae |
Softw. Pract. Exp. | 1 |
| 2019 | Reusing the Optimized Code for JavaScript Ahead-of-Time CompilationabstractAs web pages and web apps increasingly include heavy JavaScript code, JavaScript performance has been a critical issue. Modern JavaScript engines achieve a remarkable performance by employing tiered-execution architecture based on interpreter, baseline just-in-time compiler (JITC), and optimizing JITC. Unfortunately, they suffer from a substantial compilation overhead, which can take more than 50% of the whole running time. A simple idea to reduce the compilation overhead is ahead-of-time compilation (AOTC), which reuses the code generated in the previous run. In fact, existing studies that reuse the bytecode generated by the interpreter or the machine code generated by the baseline JITC have shown tangible performance benefits [12, 31, 41]. However, there has been no study to reuse the machine code generated by the optimizing JITC, which heavily uses profile-based optimizations, thus not easily reusable. We propose a novel AOTC that can reuse the optimized machine code for high-performance JavaScript engines. Unlike previous AOTCs, we need to resolve a few challenging issues related to reusing profile-based optimized code and relocating dynamic addresses. Our AOTC improves the performance of a commercial JavaScript engine by 6.36 times (max) and 1.99 times (average) for Octane benchmarks, by reducing the compilation overhead and by running the optimized code from the first invocation of functions. It also improves the loading time of six web apps by 1.28 times, on average. Hyukwoo Park, SungKook Kim, Jung-Geun Park, Soo-Mook Moon |
ACM Trans. Archit. Code Optim. | 1 |
| 2017 | Advanced ahead-of-time compilation for Javascript engine: work-in-progressabstractJavaScript1 is heavily used in the web, yet it is much slower than other languages. To improve the JavaScript performance, ahead-of-time compilation (AOTC) has been used, either to reuse the bytecode or the machine code generated by the baseline just-in-time compilation (JITC). JavaScript engines today employ high-performance optimizing JITC. So, we propose an AOTC that reuses the code generated by the optimizing JITC. It is more challenging than existing AOTCs since we need to handle more complex address relocation issues. Our preliminary evaluation shows that the proposed AOTC is promising, though. Hyukwoo Park, SungKook Kim, Soo-Mook Moon |
CASES | 1 |
| 2016 | Concurrent JavaScript Parsing for Faster Loading of Web AppsabstractJavaScript is a dynamic language mainly used as a client-side web script. Nowadays, web is evolving into an application platform with its web apps , and JavaScript increasingly undertakes complex computations and interactive user interfaces, requiring a high-performance JavaScript engine. There have been many optimizations for efficient JavaScript engines, but one component that has not been optimized much is JavaScript parsing . A JavaScript function needs to be parsed before being executed, and the parsing overhead takes a substantial portion of JavaScript execution time for web apps, especially during app loading . This article proposes concurrent parsing of JavaScript, which performs the parsing of JavaScript functions in advance on different threads, while the main thread is executing the parsed JavaScript functions. This can hide the parsing overhead from the main execution thread, reducing the JavaScript execution time, thus reducing the overall app loading time. More specifically, we separated JavaScript parsing and made it run on different threads without violating the execution semantics of JavaScript. We also designed an efficient multi-threaded parsing architecture, which reduces the synchronization overhead and schedules the parsing requests appropriately. Finally, we explored two methods of choosing the target functions for concurrent parsing: one based on profiled information and the other based on speculative heuristics. We performed experiments on the WebKit browser with the JSC engine for real web apps. The result shows that the proposed concurrent parsing can improve the JavaScript performance during app loading by as much as 64% and by 39.7% on average. This improves the whole app loading performance tangibly, by as much as 32.7% and by 18.2%, on average. Hyukwoo Park, Myungsu Cha, Soo-Mook Moon |
ACM Trans. Archit. Code Optim. | 1 |
| 2015 | Migration of Web Applications with Seamless ExecutionabstractWeb applications (apps) are programmed using HTML5, CSS, and JavaScript, and are distributed in the source code format. Web apps can be executed on any devices where a web browser is installed, allowing one-source, multi-platform environment. We can exploit this advantage of platform independence for a new user experience called app migration, which allows migrating an app in the middle of execution seamlessly between smart devices. This paper proposes such a migration framework for web apps where we can save the current state of a running app and resume its execution on a different device by restoring the saved state. We save the web app's state in the form of a snapshot, which is actually another web app whose execution can restore the saved state. In the snapshot, the state of the JavaScript variables and DOM trees are saved using the JSON format. We solved some of the saving/restoring problems related to event handlers and closures by accessing the browser and the JavaScript engine internals. Our framework does not require instrumenting an app or changing its source code, but works for the original app. We implemented the framework on the Chrome browser with the V8 JavaScript engine and successfully migrated non-trivial sample apps with reasonable saving and restoring overhead. We also discuss other usage of the snapshot for optimizations and user experiences for the web platform. JinSeok Oh, Jin-woo Kwon, Hyukwoo Park, Soo-Mook Moon |
VEE | 3 |