Jinhang Choi

Computer Architecture · Design Automation · Machine Learning · cepiross at korea.ac.kr

I am working in Deep Neural Network (DNN) HW/SW Co-design & Optimization.


Research Interests

  • Systematic/Architectural Design and Support for Machine Learning
  • Energy-efficient/Low-power computing system, Parallel processing techniques
  • Dynamic power/thermal management

Selected Papers

  • Choi, J. (2019). Context-Aware Design and Optimization of Embedded Deep Neural Network Architectures [Phdthesis]. Pennsylvania State University. [url][bib]
  • Choi, J., Hakimi, Z., Shin, P. W., Sampson, J., & Narayanan, V. (2019). Context-Aware Convolutional Neural Network over Distributed System in Collaborative Computing. Proceedings of the 56th Annual Design Automation Conference (DAC), 211:1-211:6. [doi][bib]
  • Choi, J., Sampson, J., & Narayanan, V. (2018). Heuristic Approximation of Early-Stage CNN Data Representation for Vision Intelligence Systems. Proceedings of IEEE 36th International Conference on Computer Design (ICCD), 218–225. [doi][bib]
  • Choi, J., Srinivasa, S., Tanabe, Y., Sampson, J., & Narayanan, V. (2018). A Power-Efficient Hybrid Architecture Design for Image Recognition Using CNNs. Proceedins of IEEE Computer Society Annual Symposium on VLSI (ISVLSI), 22–27. [doi][bib]
  • Jang, H. B., Choi, J., Yoon, I., Lim, S.-S., Shin, S., Chang, N., & Chung, S. W. (2013). Exploiting Application/System-Dependent Ambient Temperature for Accurate Microarchitectural Simulation. IEEE Transactions on Computers, 62(4), 705–715. [doi][bib]
  • Choi, J. (2010). A Novel Thermal Simulation Framework to Reflect Ambient Changes. Korea University. [url][bib]

Education

Pennsylvania State University

Doctor of Philosophy
Computer Science and Engineering

Dissertation: Context-Aware Design and Optimization of Embedded DNN Architectures, co-advised by Prof. Vijaykrishnan Narayanan and Prof. John (Jack) Sampson

Presented a) hardware/software co-design to mitigate excessive off-chip memory access caused by Deep Neural Networks (DNN), b) DNN memory footprint reduction scheme to expedite training speed in approximate computing, and c) iterative functional verification methodology to validate DNN design in machine learning.
August 2015 - December 2019

Korea University

Master of Engineering
Computer Science and Engineering

Thesis: A Novel Thermal Simulation Framework to Reflect Ambient Changes, advised by Prof. Sung Woo Chung

Proposed a system-wide thermal simulation framework for computer architecture design that reflects ambient temperature changes, by using the mechanical heat flow model as well as microarchitectural performance event-based thermal model.
March 2008 - February 2010

Korea University

Bachelor of Engineering
Computer Science and Engineering

Undergraduate Research Project: A Dual Integer Register File Structure for Temperature-Aware Microprocessors

March 2004 - February 2008

Experience

Senior Software Engineer

Microsoft, Redmond, WA

Member of AI Frameworks (AIFX)

August 2022 - Present

Senior Hardware Engineer

Hardware Engineer

Microsoft, Redmond, WA

Member of Cloud AI Systems & Technologies (CAST). Designed Neural Processing Unit (NPU) microarchitecture for Microsoft Floating Point (MSFP) transform/quantization, and its memory layout. The RTL/IP prototype demonstrated ONNX Runtime in Intel Stratix10 NX FPGAs with Azure build pipeline automation.

September 2021 - July 2022
January 2020 - August 2021

Research Assistant

Pennsylvania State University, University Park, PA

Member of MDL. Conducted research to realize distributed intelligence for embedded visual recognition system. Experimented with the impact of near-data processing on Deep Neural Network (DNN) training & inferencing from the perspective of performance, energy, and accuracy. The studies led to designing DNN-based hardware systems in FPGA platform and Andriod/Linux mobile platforms. Consequently, in the course of this role, published 6 conference papers and 1 journal paper.

June 2016 - December 2019

Hardware Engineer Intern

Microsoft, Redmond, WA

Intern at AI and Advanced Architectures (AIArch) of Azure Hardware Systems Group. Deployed Microsoft deep learning inference platform, BrainWave, on Intel Stratix10 GX FPGAs. To enable this transition, upgraded Intel FPGA IP generation, ported the latest FPGA synthesis compiler (a.k.a. Intel QuartusPro 19) on Azure cloudbuild service, verified and corrected the existing BrainWave Neural Processing Unit hardware system designs from automated test suite (pytests). This design exploration also projected FPGA resource estimation and its corresponding restriction to support additional functionalities required in AI inference service, which offered new challenges & opportunities with Microsoft hardware designers.

May 2019 - August 2019

Software Engineer Intern

Microsoft, Bellevue, WA

Intern at AI and Research (AI+R) Group. Deployed a Machine Reading Comprehension (MRC) model on BrainWave platform. To port the MRC TensorFlow model, modified a graph compiler to offload TensorFlow subgraph, wrote a subgraph firmware for FPGA acceleration based on Instruction Set Architecture (ISA) of BrainWave Neural Processing Unit, then verified its execution on Intel Arria10 FPGAs. It was a working example that firmware developers could leverage to accelerate AI inferencing service in BrainWave plaform.

May 2018 - August 2018

Teaching Assistant

Pennsylvania State University, University Park, PA

Proposed and graded homeworks of undergraduate class, data structures and algorithms, in Fall 2015/Spring 2016.

August 2015 - May 2016

Chief Technology Officer; System Architect

LineWalks, Seoul, South Korea

Member of start-up company, LineWalks. Led Online Analysis Processing (OLAP) system design. Deployed Apache Tajo SQL-on-Hadoop engine on clusters of commodity computer systems, thereafter I developed extract/transform/load (ETL)-OLAP interface for geolocation-based medical infographic project.

January 2014 - June 2015

Software Architecture Consultant

NexStreaming, Seoul, South Korea

Provided analysis of Internet Engineering Task Force (IETF) specification against media streaming contents: Real Time Streaming Protocol (RTSP, RFC 2326) & Real Time Transport Protocol (RTP, RFC 3550) for NexPlayer SDK engine.

September 2013 - December 2013

Software Engineer

NexStreaming, Seoul, South Korea

Developed NexPlayer SDK engine for multimedia streaming protocols processing. To support NexPlayer SDK, implemented Apple HTTP Live Streaming (Apple HLS), Microsoft Smooth Streaming (MS-SSTR), and Realtime Streaming Protocols (RTSP, RTP); then integrated NexPlayer SDK with Android media playback engine, Stagefright. To analyze media streaming Quality-of-Service over live network traffic, developed a trace-driven stream depacketizing emulator to replay packet capture (also known as Pcap) dumps.

January 2010 - September 2013

Research Assistant

Korea University, Seoul, South Korea

Member of SMRL. Conducted study & research to design temperature-aware computer system. To alleviate performance degradation caused by on-chip thermal hotspot problem, developed a computer system-wide CPU/DRAM/HDD activity tracer based on hardware performance event counter monitoring interface. Then, simulated power consumption and correponding on-chip temperature behaviors in the level of Linux operating systems. In the course of this role, presented 1 poster, and published 3 conference papers and 4 journal papers (1 IEEE journal / 3 Korea domestic journals).

March 2008 - February 2010

Teaching Assistant

Korea University, Seoul, South Korea

Proposed and graded the projects of undergraduate class, Computer Architecture: 1) Implementation of single-cycle Instruction Set Architecture (Simple MIPS) on verilog, and 2) performance modeling & analysis based on microarchitectural simulatior, SimpleScalar.

March 2008 - June 2008

Undergraduate Research Intern

Korea University, Seoul, South Korea

Intern at SMRL. Conducted study & research to design temperature-aware microarchitecture. To mitigate on-chip thermal hotspot problem, developed a microarchitectural simulator that incorporates microarchitectural modeling (SimpleScalar), architectural power estimation (Wattch), and thermal behavior analysis (HotSpot), then experimented with architectural changes from the perspective of performance, power, and temperature. In the course of this role, published 1 Korea domestic journal paper.

July 2006 - February 2008

Skills

Languages & Tools
Workflow

Service to Profession & Academia

  • Reviewer - ACM TODAES, 2021 - 2022
  • Reviewer - IEEE ICCD, 2019
  • Reviewer - IEEE TBioCAS, 2019
  • Reviewer - IEEE HPCA, 2019
  • Reviewer - ACM/IEEE DAC, 2019
  • Lab Assistant - PennState EECS inaugural Girls Summer Camp*, 2017
  • Reviewer - ACM/EDAC/IEEE DAC, 2016
  • Contributor - Apache Tajo open-source Project, 2014 - 2015
  • InterOp! Participation - IMTC PSS-AG, 2011 - 2013
  • Korean Translator - Stanford Open CourseWare, Introduction to Artificial Intelligence, 2011
  • Reviewer - Internet Engineering Task Force (IETF) Draft RTSP 2.0, 2010
  • Reviewer - IEEE ICCD, 2009