快還要更快 - 利用 Kernel I/O Offload 機制落實高度並行且低延遲的網路服務

By Steven Cheng

議題

快還要更快 - 利用 Kernel I/O Offload 機制落實高度並行且低延遲的網路服務

TR 412-1 [[ new Date( '2023-07-29 02:50:00+00:00' ).toLocaleDateString('ja', {year: 'numeric', month: '2-digit', day: '2-digit'}) ]] [[ new Date( '2023-07-29 02:50:00+00:00' ).toLocaleTimeString('zh-Hant', {hour12: false, hour: '2-digit', minute:'2-digit'}) ]] ~ [[ new Date( '2023-07-29 03:20:00+00:00' ).toLocaleTimeString('zh-Hant', {hour12: false, hour: '2-digit', minute:'2-digit'}) ]] zh-tw
加入行事曆 加入關注 加入關注 已關注

In the past few decades, event-driven architecture has become a common design paradigm for developing high-performance network servers, as it can efficiently handle concurrent requests using I/O multiplexing. However, the mitigation mechanisms for microarchitectural vulnerabilities such as Spectre and Meltdown have increased the overhead of already system call-intensive situations. Moreover, the synchronous execution blocking feature of traditional system calls makes it difficult to leverage advanced multi-core processors. To address these limitations and identify performance bottlenecks, this session will gradually analyze the evolution of the Linux I/O model and clarify the runtime of applications such as Redis and KeyDB. As a way to overcome these limitations, this session will also demonstrate the implementation of a specialized core module that improves the performance of event-driven network servers through I/O offloading. Our approach does not sacrifice high power consumption or security like kernel bypass techniques in exchange for high-performance throughput and latency. Additionally, we have conducted multiple experiments to compare our method with native systems, and the results show that our method improves bandwidth, latency, and power consumption without requiring the redesign or reimplementation of the entire application.

講者

Steven Cheng

Steven Cheng

Cheng is a computer science graduate with a master's and a bachelor's degree from National Cheng Kung University, Taiwan. His research interests are in system software and Linux kernel development. He has experience in system profiling and performance analysis of large-scale systems. He has published an academic paper in an international conference and presented several Linux-related topic in the conference held by Linux Foundation.

He has also interned as a silicon engineer at Google, where he contributed to improving the performance of simpleperf, a Android profiling tool. He is a self-motivated learner and a good team player. He is looking for a challenging and rewarding position in the field of system software engineering.

Reach out to me via linkedin: https://www.linkedin.com/in/eecheng/

System Software Y9ZEKH general (30mins)