XCXiaojun Cai

Xiaojun Cai

*This is an algorithmically generated author record based on publicly available information.

Current Organizations / Institutes

The organizations/institutes from the scholar's latest article


Xiaojun Cai has a total of 20 co-authors. Here are the top co-authors by number of shared publications:


Latest Publications

  • Open Access

    Course Reform Incorporating Ideological and Political Education in Computer Organization and Design

    by Mengying Zhao, Zhaoyan Shen, Zhenge Jia, Zhaohui Peng, Xiaojun Cai

    For a long time, computer science has been one of the most popular majors in higher education. To cultivate well-rounded students, ideological and political education is necessary to be incorporated into the process of course construction. In this paper, taking “Computer Organization and Design” as an example, we firstly construct a case library for ideological and political education. Secondly, to organically incorporate these ideological and political cases into the teaching process, we propose a BOPPPS-based teaching framework. Thirdly, we establish a multi-dimensional evaluation system that takes the achievement of ideological and political education into consideration. Practice has proved that the proposed teaching framework achieves a significant improvement in talents cultivation.

  • A Semantic-Integrated LSM-Tree-Based Key–Value Storage Engine for Blockchain Systems

    by Qian Wei, Zehao Chen, Xiaowei Chen, Yuhao Zhang, Xiaojun Cai, Zhiping Jia, Zhaoyan Shen, Yi Wang, Zili Shao, Bingzhe Li

    Blockchain systems play an important role in distributed ledgers, database systems, etc. As more and more blocks are mined, the storage burden of blockchain system is significantly increased. The current blockchain system uniformly transforms all its data into key–value (KV) items and stores them to the underlying log-structure merged tree (LSM-tree) storage engine ignoring the software semantics. Consequently, it not only aggravates the write amplification effect of the storage engine but also increases the redundancy of data query steps, resulting in the performance bottleneck of blockchain system. In this article, we propose a semantic-integrated LSM-tree-based KV storage engine for blockchain systems, called Block-LSM, which significantly improves the data synchronization and data query efficiency of blockchain system. Specifically, we first design a shared prefix scheme to transform blockchain data into ordered KV pairs to alleviate the key range overlaps of different levels in the underlying LSM-tree-based storage engine. Moreover, we propose to maintain several semantic-orientated memory buffers to isolate different kinds of blockchain data and implement memory buffer space management strategy to further improve memory efficiency. To save space overhead, Block-LSM further aggregates multiple blocks into a group and assigns the same prefix to all KV items from the same block group. We also reduce step redundancy in transaction queries by modifying the body data storage format. Finally, we implement Block-LSM in a real blockchain environment and conduct a series of comparative experiments with the typical blockchain system Ethereum. The evaluation results show that Block-LSM significantly reduces up to $7.56\times $ storage write amplification and increases throughput by $8.64\times $ compared with the original Ethereum design. In terms of data lookups (i.e., transaction and account lookup), Block-LSM improves the throughput by 50% compared to the original Ethereum design.


  • Branch Predictor Design for Energy Harvesting Powered Nonvolatile Processors

    by Mengying Zhao, Shuo Xu, Lihao Dong, Chun Jason Xue, Dongxiao Yu, Xiaojun Cai, Zhiping Jia

    Non-volatile processors are proposed for ambient energy harvesting systems to enable accumulative computing across power failures. They employ nonvolatile memory for processor status backup before power outage and resume the system after power recovers. A straightforward backup policy is to back up all volatile data in processors, but it induces high backup cost. In this paper, we focus on branch predictor, an important component in processor, and propose efficient backup schemes to reduce backup cost while maintaining its prediction ability. We first analyze the modules in both traditional and artificial intelligence (AI) assisted designs of branch predictor, and accordingly propose three backup mechanisms pertaining to saturation-driven, locality-driven and maturity-driven backup. On the basis of these mechanisms, adaptive backup branch predictors are designed. Evaluation shows that, with traditional Tournament architecture, the proposed design achieves 15.9% and 54.1% energy reduction when compared with no-backup and all-backup strategy. For AI assisted branch predictor, the proposed design achieves 27.5% and 82.2% energy saving.


  • Open Access

    ChainKV: A Semantics-Aware Key-Value Store for Ethereum System

    by Zehao Chen, Bingzhe Li, Xiaojun Cai, Zhiping Jia, Lei Ju, Zili Shao, Zhaoyan Shen

    The Log-Structure Merged tree (LSM-tree) based key-value (KV) store has been widely adopted as the storage engine for blockchain systems, such as Ethereum, in which blockchain data are uniformly transformed into randomly distributed KV items for persistence. However, blockchain semantics are ignored during this process, making the blockchain storage suffer from heavy read/write amplification problems. Moreover, as the Ethereum network scales up, tremendous data further exacerbates its storage burden. Until now, most studies have focused on sharding, data archiving, decentralized distributed storage, etc., to mitigate the burden of the storage layer. However, the incompatibility between Ethereum semantics and the characteristics of the storage engine is ignored. In this paper, we present ChainKV, a new semantics-aware storage paradigm to improve the storage management performance for the Ethereum system. Firstly, based on Ethereum blockchain semantics, ChainKV separately stores different types of data in multiple storage zones in the KV store to mitigate the read/write amplification problem. Secondly, following the mechanism of the verification process in the authenticated data structure (ADS), a new ADS data transformer is proposed to exploit the data locality when persisting ADS. Moreover, a new space gaming caching policy is adopted to coordinate the cache space management for two independent storage zones. Finally, we propose an optional lightweight node crash recovery mechanism to eliminate functional redundancy between the Ethereum protocol and the storage engine. The experimental results indicate that ChainKV outperforms the prior Ethereum systems by up to 1.99× and 4.20× for synchronization and query operations, respectively


  • DQN based page allocation for ReRAM main memory

    by Peng Liu, Xiaojun Cai, Zhaoyan Shen, Mengying Zhao, Zhiping Jia