Boqin Qin

dblp:256/7750 · DBLP profile ↗
← Back
14ranked-venue papers
3as first author
10since 2021 · last 2026
0000-0002-8510-8656ORCID · corroborated

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

Software engineering, systems software and programming languages · 6 · 3 first-author · 5 since 2021Computer networks · 4 · 4 since 2021Security and privacy · 2Artificial intelligence and machine learning · 1 · 1 since 2021Systems, architecture and hardware · 1 · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 1 · 1 since 2021Applied, interdisciplinary, general and emerging computing · 1
YearPublicationVenuePosition
2026 PHOTONS: Pose-Free Human-Centric Photo-Realistic Real-Time Novel View Synthesis from Sparse Views
abstract
We present PHOTONS (Pose-Free Human-Centric Photo-Realistic Real-Time Novel View Synthesis from Sparse Views), a real-time framework for novel view synthesis without requiring camera calibration. Our method reconstructs consistent 3D Gaussian point clouds and synthesizes 2K photo-realistic novel views from arbitrary numbers (>=2) of freely placed cameras. PHOTONS faithfully renders dynamic human bodies amid complex backgrounds, including interactive object manipulation and fine-grained details (e.g., hair strands), while maintaining 25 FPS throughput on commodity GPU like NVIDIA RTX 4090. By combining pose-free spatial point cloud reconstruction with Gaussian parameter estimation, our method demonstrates strong resilience to occlusions and camera perturbations. Additionally, we develop a 3D stereo system that drastically reduces setup complexity compared to existing solutions. Experiments on public and custom datasets show that PHOTONS outperforms state-of-the-art methods in both efficiency and visual quality.
Yongyang Cheng, Boqin Qin, Zhao Hui, Tao Zhang 0126, Shang Sun, Haiquan Kang, Junwei Lv, Feng Jiang 0009
AAAI2
2025 How to Save My Gas Fees: Understanding and Detecting Real-World Gas Issues in Solidity Programs
abstract
The execution of smart contracts on Ethereum, a public blockchain system, incurs a fee called gas fee for its computation and data storage. When programmers develop smart contracts (e.g., in the Solidity programming language), they could unknowingly write code snippets that unnecessarily cause more gas fees. These issues, or what we call gas wastes, can lead to significant monetary losses for users. This paper takes the initiative in helping Ethereum users reduce their gas fees in two key steps. First, we conduct an empirical study on gas wastes in open-source Solidity programs and Ethereum transaction traces. Second, to validate our study findings, we develop a static tool called PeCatch to effectively detect gas wastes in Solidity programs, and manually examine the Solidity compiler’s code to pinpoint implementation errors causing gas wastes. Overall, we make 11 insights and four suggestions, which can foster future tool development and programmer awareness, and fixing our detected bugs can save $0.76 million in gas fees daily.
Shihao Xia, Boqin Qin, Nobuko Yoshida, Tingting Yu 0001, Yiying Zhang 0005, Linhai Song
IEEE Trans. Software Eng.3
2024 Understanding and Detecting Real-World Safety Issues in Rust
abstract
Rust is a relatively new programming language designed for systems software development. Its objective is to combine the safety guarantees typically associated with high-level languages with the performance efficiency often found in executable programs implemented in low-level languages. The core design of Rust is a set of strict safety rules enforced through compile-time checks. However, to support more low-level controls, Rust also allows programmers to bypass its compiler checks by writingunsafecode. As the adoption of Rust grows in the development of safety-critical software, it becomes increasingly important to understand what safety issues may elude Rust’s compiler checks and manifest in real Rust programs.In this paper, we conduct a comprehensive, empirical study of Rust safety issues by close, manual inspection of 70 memory bugs, 100 concurrency bugs, and 110 programming errors leading to unexpected execution panics from five open-source Rust projects, five widely-used Rust libraries, and two online security databases. Our study answers three important questions: what memory-safety issues real Rust programs have, what concurrency bugs Rust programmers make, and how unexpected panics in Rust programs are caused. Our study reveals interesting real-world Rust program behaviors and highlights new issues made by Rust programmers. Building upon the findings of our study, we design and implement five static detectors. After being applied to the studied Rust programs and another 12 selected Rust projects, our checkers pinpoint 96 previously unknown bugs and report a negligible number of false positives, confirming their effectiveness and the value of our empirical study.
Boqin Qin, Hua Zhang 0001, Qiaoyan Wen, Linhai Song, Yiying Zhang 0005
IEEE Trans. Software Eng.1
2023 MRP: An Energy Efficient Network Protocol That Avoids Multiple Encryption in Cloud Computing Environment
abstract
To ensure the security of data transmission on the Internet, users usually encrypt the data during the process of sending and receiving data. For example, the commonly used HTTPS protocol verifies the identity of servers through TLS certificates and encrypts communication between browsers and servers. However, the encrypted part of the unstructured data is still re-encrypted by TLS during HTTPS transmission, wasting computing and energy resources. In this paper, we propose an energy efficient network protocol, namely MRP, that avoids multiple encryption. MRP could carry multiple types of application layer protocols, while freely configure the location and encryption approaches of the data that needs to be encrypted. Based on our proposed, users could freely segment application layer data, achieve on-demand encryption of data, reduce encryption costs without compromising user security requirements, avoid redundant double encryption and save energy.
Feng Jiang 0009, Yongyang Cheng, Boqin Qin, Tao Zhang 0126
APNet3
2023 A Novel Equivalence Proof of Clock and Network Synchronization Model Towards Distributed Clouds
Feng Jiang 0009, Yongyang Cheng, Tao Zhang 0126, Boqin Qin, Zhao Hui
APNOMS4
2022 A Data Availability Modeling Approach Towards Cloud Storage Systems Based on Client Perspective
abstract
System data availability is a key indicator to measure the ability of a cloud storage system to provide continuous service. Usually, users could only get the data availability of a cloud storage system through measurement, meaning that they could not know whether the system works normally unless they have read and written data on it. To improve data availability, the common method in the industry is to use higher performance physical devices or design more complex organizational architectures. However, no matter how the service side is designed, if the client side does not have the ability to switch service points, the whole cloud storage system is not highly available. In this paper, we propose a data availability modeling approach towards cloud storage systems based on client perspective. Initially, we discuss traditional availability computing models and summarize the necessary conditions for a cloud storage system to realize high availability. Furthermore, combined with specific scenarios, we model two different modes of switching service nodes on the client side. Finally, we quantitatively analyze the optimal ratio of the detection requests and the read-write buffer on the premise of ensuring the storage networks performance.
Feng Jiang 0009, Yongyang Cheng, Zhao Hui, Boqin Qin, Ruibo Yan
APNOMS4
2022 Who owns the address? A performant block storage model for hybrid cloud
abstract
Rapidly growing data volumes stimulate the migration of block storage from on-premise to hybrid cloud. Hybrid cloud block storage is composed of both on-premise and remote cloud storage. Unfortunately, the heterogeneity of on-premise clients (e.g., laptops, mobile devices, etc.) with various operating systems encumber the hybrid cloud architecture design. What's worse, the demanding fault-tolerance and latency requirements pose challenges to the block storage system. Under the premise of strong consistency and availability, there are two mainstream models of hybrid storage systems: the low latency but low throughput “active-standby” model where only one node can provide reads and writes, and the high throughput but high latency “active-active” model where all nodes can provide reads and writes. To address the dilemma between throughput and latency, we design a novel storage model called the “logical-active” model, which partitions the input data into shards in terms of the block address ranges and selects one owner node called “logical-active” for each shard. A unique “logical-active” node manages the creation and deletion of the shard and provides reads and writes for the clients, while one or more borrower nodes called “logical-standby” provide only reads after synchronization with the “logical-active” node. In this way, the “logical-active” model achieves low latency close to the “active-standby” model and high throughput close to the “active-active” model.
Feng Jiang 0009, Yongyang Cheng, Boqin Qin, Zhao Hui
APNOMS3
2022 Learning and Programming Challenges of Rust: A Mixed-Methods Study
abstract
Rust is a young systems programming language designed to provide both the safety guarantees of high-level languages and the execution performance of low-level languages. To achieve this design goal, Rust provides a suite of safety rules and checks against those rules at the compile time to eliminate many memory-safety and thread-safety issues. Due to its safety and performance, Rust's popularity has increased significantly in recent years, and it has already been adopted to build many safety-critical software systems.
Shuofei Zhu, Boqin Qin, Aiping Xiong, Linhai Song
ICSE3
2022 Algorithmic Profiling for Real-World Complexity Problems
abstract
Complexity problems are a common type of performance issues, caused by algorithmic inefficiency. Algorithmic profiling aims to automatically attribute execution complexity to an executed code construct. It can identify code constructs in superlinear complexity to facilitate performance optimizations and debugging. However, existing algorithmic profiling techniques suffer from several severe limitations, missing the opportunity to be deployed in production environment and failing to effectively pinpoint root causes for performance failures caused by complexity problems. In this paper, we design a tool, ComAir, which can effectively conduct algorithmic profiling in production environment. We propose several novel instrumentation methods to significantly lower runtime overhead and enable the production-run usage. We also design an effective ranking mechanism to help developers identify root causes of performance failures due to complexity problems. Our experimental results show that ComAir can effectively identify root causes and generate accurate profiling results in production environment, while incurring a negligible runtime overhead.
Boqin Qin, Tengfei Tu, Tingting Yu 0001, Linhai Song
IEEE Trans. Software Eng.1
2021 Automatically detecting and fixing concurrency bugs in go software systems
abstract
Go is a statically typed programming language designed for efficient and reliable concurrent programming. For this purpose, Go provides lightweight goroutines and recommends passing messages using channels as a less error-prone means of thread communication. Go has become increasingly popular in recent years and has been adopted to build many important infrastructure software systems. However, a recent empirical study shows that concurrency bugs, especially those due to misuse of channels, exist widely in Go. These bugs severely hurt the reliability of Go concurrent systems. To fight Go concurrency bugs caused by misuse of channels, this paper proposes a static concurrency bug detection system, GCatch, and an automated concurrency bug fixing system, GFix. After disentangling an input Go program, GCatch models the complex channel operations in Go using a novel constraint system and applies a constraint solver to identify blocking bugs. GFix automatically patches blocking bugs detected by GCatch using Go’s channel-related language features. We apply GCatch and GFix to 21 popular Go applications, including Docker, Kubernetes, and gRPC. In total, GCatch finds 149 previously unknown blocking bugs due to misuse of channels and GFix successfully fixes 124 of them. We have reported all detected bugs and generated patches to developers. So far, developers have fixed 125 blocking misuse-of-channel bugs based on our reporting. Among them, 87 bugs are fixed by applying GFix’s patches directly.
Shuofei Zhu, Boqin Qin, Hao Chen 0003, Linhai Song
ASPLOS3
2020 VRLifeTime - An IDE Tool to Avoid Concurrency and Memory Bugs in Rust
abstract
As a young programming language designed for systems software development, Rust aims to provide safety guarantees like high-level languages and performance efficiency like low-level languages. Lifetime is a core concept in Rust, and it is key to both safety checks and automated resource management conducted by the Rust compiler. However, Rust's lifetime rules are very complex. In reality, it is not uncommon that Rust programmers fail to infer the correct lifetime, causing severe concurrency and memory bugs. In this paper, we present VRLifeTime, an IDE tool that can visualize lifetime for Rust programs and help programmers avoid lifetime-related mistakes. Moreover, VRLifeTime can help detect some lifetime-related bugs (i.e., double locks) with detailed debugging information. A demo video is available at https://youtu.be/L5F_XCOrJTQ.
Boqin Qin, Linhai Song, Yiying Zhang 0005
CCS2
2020 Understanding memory and thread safety practices and issues in real-world Rust programs
abstract
Rust is a young programming language designed for systems software development. It aims to provide safety guarantees like high-level languages and performance efficiency like low-level languages. The core design of Rust is a set of strict safety rules enforced by compile-time checking. To support more low-level controls, Rust allows programmers to bypass these compiler checks to write unsafe code.
Boqin Qin, Zeming Yu, Linhai Song, Yiying Zhang 0005
PLDI1
2020 Measuring and Modeling the Label Dynamics of Online Anti-Malware Engines
Shuofei Zhu, Boqin Qin, Linhai Song, Gang Wang 0011
USENIX Security Symposium4
2020 An Adaptive Encryption-as-a-Service Architecture Based on Fog Computing for Real-Time Substation Communications
abstract
The recent outbreak of industrial cyberattacks indicates that the current industrial network security architecture is under serious challenges. As one of the critical industrial networks, the heterogeneous and real-time substation network lacks compatibility with the conventional cryptography architecture represented by secure sockets layer/transport layer security (SSL/TLS) and public key infrastructure (PKI). To enhance the security of smart substations under the premise of low latency, in this article, we present a novel encryption-as-a-service architecture based on fog computing in this article. The architecture offloads encryption to dedicated devices and makes certificate and key management available through unified web services on the fog and cloud layers. Based on this architecture, we propose MX-SORTS, maximizing security on real-time communication of different services, an algorithm for adaptive configuration of encrypting and signing substation network traffic. By the contrast experiments with the conventional cryptography architecture, we prove that the encryption-as-a-service architecture can significantly improve the real-time and security performance of substation networks.
Hua Zhang 0001, Boqin Qin, Tengfei Tu, Ziqing Guo, Fei Gao 0001, Qiaoyan Wen
IEEE Trans. Ind. Informatics2