-
Compiler: This project built a complete SysY (a subset of the C language) compiler and implemented intermediate
code optimization. Initially, a lexical and syntax analyzer based on Flex and Bison was implemented, followed by the
conversion from syntax tree to LLVM intermediate code. The intermediate code was then translated into Loongson
assembly instructions. Finally, optimizations were applied to the intermediate code using optimizing passes. After
constructing the dominator tree, it used Mem2Reg (inserting phi functions and accomplishing variable renaming) to
eliminate memory operations and perform dead code elimination.
- Implementation of labs in CMU10-714(Deep Learning Systems: Algorithms and Implementation).
It builds a basic deep learning library, comparable to a very minimal version of PyTorch or TensorFlow. It
includes the implementation of automatic diferential operator, vectorization operation, a library equivalent to numpy,
and uses CUDA to optimize the performance.