Table of Contents
Lei Qi (祁磊)
I'm a senior student majoring in Software Engineering at Shanghai Jiao Tong University and a member of the Institute of Parallel and Distributed Systems (IPADS).My Research interests include System Virtualization, Parallel and Distributed Systems, Systems Security.
I will graduate at the summer of 2015. I am applying for graduate programs in US. Here is my CV
GraphLab: improvement of synchronization of async engine on single machine, Supervised by Prof. Haibo Chen
This project aimed at improvement of synchronization mechanism of GraphLab: to replace tradition spinlock containing heavy contention with sequence lock mechanism and Read-Copy Update (RCU) mechanism; also to profile on possible issues and to reduce centralization for amelioration.
- Extended the design of seqlock and RCU to replace the original ineffective synchronization protocol of GraphLab, while kept the original interfaces unchanged. The design completed lock-free read accesses and non-blocking write access during each phase, thus significantly boosting performance and scalability.
- Unordered List Item Given the fact that the centralized scheduler that GraphLab adopted performed poor, optimized the scheduler by scheduling neighbor nodes closer as well as doing decentralized work, for example, replace the original centralized task counter with a decentralized one.
Optimization for Parallel Full-system Emulator on ARM, Supervised by Prof. Haibo Chen
Oct 2014- Current
The project was an improvement of a previous work of IPADS, Coremu, namely a scalable emulation framework which can simulate multiple cores parallelly. The main problem is that it fails to perfectly support ARM architecture because of the difference of binary translation and characteristics between ARM and x86, for example, the different strategies of dealing with memory order and atomic instructions.
- Optimized the performance and efficiency of parallel full-system system emulator on Arm, which is becoming a more and more popular architecture due to the developing of mobile internet. The work includes dealing with problems of atomic instructions, scheduling, code cache and so on.
- Furthered developments based on this emulator such as interleaving control and bug reproducing.
Physics Lab: a software on physical environment simulation based on html5, Intern at Intel-SJTU Joint Class, Supervised by Senior Principal Engineer Bo Huang
The software was similar to matlab, where user could conveniently draw certain physical settings, like electromagnetic field or spring. The software contained the function of data-analysis like Excel. The software had gained praise from the sales director of Intel in the great China.
- Independently completed the underlying physical algorithm and refined traditional Box2DWeb physical engine in terms of accuracy.
- Independently designed algorithms on graph and calculation. Realized the functions of conservation and share via cloud technology.
2014 Computer Architecture
- Simulated cache replacement, in/exclusive multi-level cache with PIN.
2014 Distributed Systems
- Implemented reliable data transport (RDT), DSDV routing protocol, map reduce, primary-backup k/v service, in Go.
2014 Digital Logic Design of Computer Components
- Realized face identification on FPGA, which is able to capture faces under dynamic environments. Based on self-implemented single cycle and pipelined cpu, in Verilog.
2014 Rational City Management :Scientific Decision-making Based on Big Data
- Provided the potential of types and locations of rubbish exposure based on surrounding environments. Currently, It has been employed in Shanghai to ameliorate rubbish management.
- Grabbed geographical factors of 50,000 records from the government. Similar to Decision Tree/ SVM, Used Information gain and similar degree to obtain the relationship. Cross-checked and visualized the result.
2013 Introduction to Human Computer Interaction
- Implemented Void pen: Free writing on any surface (like screen) based on image recognition technology.
2013 Operating Systems
- Implemented part of an exokernel-like system (JOS), namely booting, memory management, user environments and preemptive multitasking
2013 Principle and Technology of Compiler
- Newly defined Ylang, a static strong type object-oriented language, containing array, class and inheritance, compound statements, jump statements, function calling and so on.
- Developed a complier to compile Ylang to AT&T assembly.
2013 Programming II (Data Structure)
- Developed a consistent trading system based on a self-implemented Database supporting CRUD, with fault tolerance and index. And implemented data structures like Hash Map, B+ Tree, Black and Red Tree by self.
2012 Computer System Engineering
- Implemented YFS, a Frangipani-like, distributed, file system with lock and cache.
2012 Principle and Technology of Database
- Implemented a simple online library using SQL database.
2012 Introduction to Computer Systems
- Developed List ItemCSAPP labs: bits operations, binary bombs, buffer overflow, Y86 simulator, Y86 assembler, memory allocator, pipeline processor optimizations, cache related optimizations and shell.
Awards and Honors
- Oct, 2014. Beckoning Scholarship (top 5%)
- Oct, 2014. Shanghai Jiao Tong University Second Prize Scholarship (Top 10%)
- Nov, 2013. Shanghai Jiao Tong University Brilliant Individual in Social Practice (one student per year for each school)
- Oct, 2013. Tung OOCL Scholarship (top 5%)
- Oct, 2012. Guanghua Scholarship (top 5%)
I used to be the Vice-president (and now an honorary one) of Overseas Students Center, Shanghai Jiao Tong University, which focus on boosting the communication between different cultures and offer supports for exchange students and foreign students.
I'm also a member of the Debating Team of our school.