Responsive image
Chun-Hao Lai

Software Engineer | Seize the opportunity and Just Do It.


Phone: 886913807989
Email: jeary49252000@gmail.com
Gmail LinkedIn GitHub Stackoverflow Leetcode

ABOUT ME

My background is in computer science. I studied my bachelor and master degree at National Taiwan University. During my bachelor degree, I've been studied basic CS knowledge, such as data structure, algorithm and operating system. To explore different views, I also touched multimedia and machine learning areas. After that, to have a solid system background, during my master degree, I focused on computer system and architecture, working with Prof. Chia-Lin Yang on topics related to nonvolatile memories. Before my master graduation, I also collaborated with Prof. Jishen Zhao. Now, I am interested in operating/embedded system and network backend.

EDUCATION

2014/09 - 2016/06
  • GPA: 4.15/4.3
  • Master's Thesis: Nonvolatile Transaction Cache for Efficient Persistence Guarantee
2010/09 - 2014/06
  • GPA: 3.99/4.3
  • Awards: Presidential Award (Top 5%) in 2nd Semester 2010/2011 and 1st Semester 2013/2014

SELECTED PROJECTS

2013 Fall
C-- Compiler (lex, YACC, C)
  • A C-- compiler implemented with following features:
    • Implicit type conversions, Assignment statements, Arithmetic expressions, Control statements (while, if-then-else, for), Procedure calls, Read and Write I/O calls, Short-circuit boolean expressions, Variable initializations, Multiple dimensional arrays.
2014 Spring
Virtual Machine Experiments (C/C++, Qemu, KVM)
  • Implementation of Shadow Stack on qemu-0.13 to improve indirect brach handling routines
  • Analyzation of multiple virtual machines (Qemu) behaviors on KVM
    • LMbench is applied to analyze the memory interferences between VMs.
2014 Fall
Enhanced DRAM Scheduling (C/C++)
  • Experimental Platform:
  • An enhanced DRAM scheduling policy is proposed.
    • Row Hit Aware: Serve row hit request first and apply close page when no remaining row hit requests.
    • No Idle Read/Write mode: Issue write/read at idle time during read/write mode due to dependencies.
    • Thread Aware: Serve compute-intensive requests first to make CPU fully utilized and reduce memory interferences.
2015 Spring
Application Scheduling on Heterogeneous System (OpenCL, bash)
  • Experimental Platform:
    • Hardware: AMD Kaveri APU (A10-7850K), Heterogeneous Unified Memory Architecture (hUMA)
    • Operating System: Ubuntu 14.04 LTS | Driver: AMD Catalyst Driver
  • Analyzation of different behaviors on CPU and GPU of benchmarks from parboil and rodinia suits
  • A two-stage scheduling method is proposed to reduce memory interferences and balance execution time of CPU and GPU.

EXPERIENCE

2017/01 - 2017/12
Tourist Information Center Staff, Tainan Astronomical Education Area, Tainan, Taiwan
2014/06 - 2016/09
Network/System Administrator, CSIE Embedded Computing Lab, National Taiwan University, Taipei, Taiwan
2015/09 - 2016/01
2014/09 - 2015/01
2013/07 - 2013/08
Intern, Research Developer of VLSI Division, Andes Technology, Hsinchu, Taiwan

PUBLICATIONS

SKILLS

Programming Languages: Proficient: C/C++ ‧ Familiar: Java ‧ Basic: HTML/CSS, JavaScript, Perl, Python