¬x¤hø¯§U²z±Ð±Â
¥x¤j¸ê°T¤uµ{¨tº[¬ã¨s©Ò/ ºô¸ô¤Î¦h´CÅé¬ã¨s©Ò

Shih-Hao Hung, Ph.D., Assistant Professor
Dept. of Computer Science &
Information Engineering (CSIE)
Graduate Inst. of Networking and
Multimedia
National Taiwan University
Before joining NTU in Feb. 2005, Dr. Hung worked for Sun Microsystems in the San Francisco Bay Area
for 5 years. During 1992-2000, He earned his Ph.D. and M.S. degrees in Computer
Science and Engineering and did a post-Doctorial study under Prof. Edward S. Davidson at the
Advanced Computer Architectural Lab
in The University of Michigan. He served in
the Taiwanese Marine Corps for two
years after finishing his B.S. degree in Electrical
Engineering at the NTU in 1989.
Dr. Hung likes to play with computers since he got his first computer, an Apple II, when he was 16 years
old. Although not as crazy as he used to be, he still goes to ¥úµØ°Ó³õ frequently and builds
computers as he likes. Over the years, he keeps looking for a perfect computer,
but unfortunately, even with so many computers that he has played with, from embedded systems to parallel, supercomputers, he is
never satisfied with any computers which have ever been built (including those built
by himself), which is why he studies computer systems and performance
optimization techniques :) If you are interested in his work, you can continue
to read this page, or follow the links below for more details:
Personally,
Shih-Hao likes to broaden his life experience. For
that, he found that Taiwan
offers a lot of opportunities. After two years, he wrote down his observations
and feelings in 2007:
¤¥ú¤Q¦âªºªÀ·|²{¶H¤¤¡A¤]ÄÂæh¤¸²`¼hªº¤å¤Æ¡C
§Ö³tÅܾEªºª«½è¤å©ú¤¤¡A¥¿¿EÀú¶Ç²Î«ä¼éªº»ùÈ¡C
¿ùºî½ÆÂøªº¤H§ÚÃö«Y¤¤¡A¦n¦ÒÅç±q®e¤£´bªº¯ÝÃÌ¡C
¦k·Q¡°_ªº¼¤±æ¤H¥Í¤¤¡A¨Ó×¾i¤£¨V¤£¨Dªº«~®æ¡C
Ävª§p¸ûªºÂOªLªk«h¤¤¡A¦h·PÃhÂIºw¨¯¶Ôªº¥I¥X¡C
ª«¼¤¾î¬yªº°øµØ¦~¥N¤¤¡A¾ÇÆ[·Ó¯u¹ê¥Ã«íªº¦Û§Ú¡C
Contact Ápµ¸¤è¦¡
¬x¤hø¯§U²z±Ð±Â
°ê¥ß»OÆW¤j¾Ç ¸ê°T¤uµ{¾Ç¨t 320 «Ç
¥x¥_¥«Ã¹´µºÖ¸ô¥|¬q¤@¸¹
Shih-Hao Hung, Assistant Professor
Dept of Computer Science and Information Engineering, National Taiwan
University
#1 Roosevelt Rd. Sec. 4, Taipei,
Taiwan 106, ROC
Phone : 02-3366-4888 or 02-2362-5336 ext. 320 (+886-2-3366-4888)
FAX : 02-2362-8167
e-mail : hungsh@csie.ntu.edu.tw
This site (http://pas.csie.ntu.edu.tw/course/)
contains the materials for some of the courses listed above.
Background Ó¤H¸g¾ú
- 2005-Present
Assistant Professor, National Taiwan University., Taipei, Taiwan
Deptartment of Computer Science and Information
Engineering
Graduate Institute of Network and Multimedia
Research Topics: Computer Architecture, Parallel Computing, Computer
Performance Characterization and Optimization, Commercial Servers and
Applications, Design of Embedded Systems
¥x¤j¸ê°T¤uµ{¨tº[ºô¸ô¤Î¦h´CÅé¬ã¨s©Ò, §U²z±Ð±Â
¬ã¨s¤º®e: pºâ¾÷¬[ºc»P¥¦æ³B²z¡Bpºâ¾÷®Ä¯àµû¦ô»P³Ì¨Î¤Æ¡B¹q¤l°Ó°È¨t²Î¤ÎÀ³¥Î³nÅé¡B´O¤J¦¡¨t²Î³]p
- 2000-2005
Staff Engineer, Sun Microsystems, Inc, California, USA
Functions: Performance characterization and optimization of commercial
systems and applications, including high-end symmetric multiprocessor
(SMP) servers, high-performance networking (10-Gigabit Ethernet and TCP/IP
Offload Engine), security protocol/cryptographic acceleration (SSL, IPsec, IKE), Hardware-software co-design for
next-generation processors
¬ü°êª@¶§¹q¸£¤½¥q
°Ó°È¹q¸£¨t²Î¤ÎÀ³¥Î³nÅ餧®Ä¯àµû¦ô¤Î³Ì¨Î¤Æ, ¥]¬A: °ª¶¥¦h«³B²z¦øªA¹q¸£¨t²Î, °ª®Ä¯àºô¸ô¶Ç¿é(10Gbit Ethernet¤ÎTCP/IP¥[³t¾¹) ¹q¸£¦w¥þ¨ó©w¤Î±K½X¥[³t¾¹(SSL, IPsec, IKE), ·s¥@¥N³B²z¾÷¤§µw³nÅé²Î¦X³]p
- 1998-2000
Research Fellow., Univ. of Michigan, Ann
Arbor, USA
Research: Strategies for optimizing parallel applications, Framework for
systematic performance tuning
¬ü°ê±K¦è®Ú¤j¾Ç³Õ¤h«á¬ã¨s
¬ã¨s¤º®e: ¥¦æ³B²z³Ì¨Î¤Æ¤§µ¦²¤»P¨t²Î®Ä¯à§ïµ½¤§¹ê°È
- 1994-1998
Ph.D. in Computer Sci. & Eng., Univ. of
Michigan, Ann Arbor, USA
Research: Optimization of parallel applications, High-performance computer
architecture, Performance characterization tools and methodologies,
Supercomputing for scientific and engineering applications (Ford Motor Co.
etc.)
¬ü°ê±K¦è®Ú¤j¾Ç¹q¸£¬ì¾Ç¤Î¤uµ{¾Ç³Õ¤h
¬ã¨s¤º®e: ¥¦æ³B²zÀ³¥Îµ{¦¡¤§³Ì¨Î¤Æ, °ª®Ä¯à¹q¸£¬[ºc, ¨t²Î®Ä¯à¤ÀªR¤u¨ã¤Î¤èªk ¶W¯Å¹q¸£¦b¬ì¾Ç¤Î¤uµ{¤§À³¥Î(¬ü°êºÖ¯S¨T¨®¤½¥q¤Î¨ä¥L¬ã¨s³æ¦ì)
- 1992-1994
M.S.E. in Computer Sci. & Eng., Univ. of Michigan,
Ann Arbor, USA
¬ü°ê±K¦è®Ú¤j¾Ç¹q¸£¬ì¾Ç¤Î¤uµ{¾ÇºÓ¤h
- 1991-1992
Teaching Assistant, Dept. Electrical Eng., Nat'l Taiwan Univ., Taipei,
Taiwan
¥x¤j¹q¾÷¤uµ{¨t±M¥ô§U±Ð
- 1989-1991
Officer, R.O.C. Marine Corp
¤¤µØ¥Á°ê®üx³°¾Ô¶¤¤Ö±L
- 1985-1989
B.S.E. in Electrical Eng.,
Nat'l Taiwan Univ., Taipei,
Taiwan
¥x¤j¹q¾÷¤uµ{¨t¾Ç¤h
Research Interests ¬ã¨s»â°ì
Introduction to Performance Engineering: Co-Optimization of Computer Applications and Architectures
¨t²Î®Ä¯à¤uµ{ - ¹q¸£À³¥Î»P¬[ºc¬Û¤¬³Ì¨Î¤Æ
Performance
and applications have been driving the evolution of the computer industry to
where it is today. A lot of people can write programs for a system, but those
who are familiar with the system architecture, optimizing compilers, and
performance tools, can often write good programs which run several times faster
and far more efficiently on the same system. On the other hand, architectural
innovations and hardware features have been adopted to make computer systems
more powerful, run specific applications better, and solve large problems
quicker every year. Performance engineering is a practice and a research to
find ways to improve application performance with a wide range of hardware or
software techniques.
Performance
engineering covers many areas in computer systems. Our students are trained to
be knowledgeable on computer architecture and system programming. Based on
that, we analyze specific applications to understand how a system can be
designed or enhanced to serve the applications better, and how the applications
can be tuned to run well on a system. While our focuses on sometimes on the
individual components or problems, for example, instruction scheduling and
cache utilization, it is most critical to characterize and optimize the
application and the system as a whole. Even for experts, it is an art to
evaluate performance problem precisely, identify performance problems quickly,
and decide on proper solutions wisely.
Performance
engineering is important to application developers and system vendors. In our
lab, we use state-of-the-art performance tools to analyze applications ranging
from embedded processing to high-performance computing. We work with industry
partners on real applications and develop skills and techniques to solve
problems in designing and optimizing applications. Many research topics in this
field are still open, and we are focusing on innovative ways to profile
performance, model application behavior, simulate execution, and evaluate future
system designs.
Here
is a presentation that Prof. Hung gave at a
seminar by Sun Microsystems on 2006-05-05,
which is a good illustration of the general work that we do for research.
The
research being performed by Prof. Hung is subdivided in the following catagories:
- ®Ä¯àµû¦ô Performance Evaluation
- ¥¦æ³B²z Parallel Processing
- ºô¸ô®Ä¯à Network Performance and Optimization
- ¹q¸£¦w¥þ Network and Computer Security
Prof.
Hung established the Performance, Applications, and
Security Lab in 2005.
We
see three key issues that have fundamentally driven the evolution of the
computer industry to where it is today: Performance, Applications, and
Security, and we believe that they are keys to building better computer systems
for tomorrow. Why are we putting them together in one sentence? Because many
practical computing problems require us to consider more than one issue in
order to obtain optimal solutions. For example, people are talking about
hardware-software co-design these days. In our experience, solving such kind of
problems is usually highly challenging, as it often requires the understanding
of the big picture of the problem and in-depth knowledge of many
state-of-the-art technologies.
To
make a computer better, we need to improve its performance, applications, and
security with hardware and software the technologies. The key technologies may
vary as new technologies are invented while old technologies become obsolete.
Amazingly, the advance of hardware technologies allows our latest computers to
perform just well enough to keep up with complex applications and meet Today's
security requirement. But, what if the computer industry runs out of hardware
tricks to make CPU's run twice as fast in 18 months? How about buying the
latest 8-CPU systems before you figure out your applications have to be
re-written to scale beyond 2 CPU's? When 10 gigabit Ethernet shows up, can our
computers take advantage of the abundant bandwidth? Do you trust software
vendors to provide us with killer applications that run smoothly and securely
over the Internet? How would you design a system on a chip to run specific
applications, when performance and low-power are critical?
Before
establishing this Lab in 2005, I spent 12 years in attacking various
performance problems in applications related to scientific/engineering,
database, e-commerce, networking, and security. At the University of Michigan,
we optimized parallel applications on supercomputers by writing assembly codes.
We developed performance tools so that we were able to understand the
applications and the platform better than anybody, even their makers. At Sun
Microsystems, our group competes with IBM and HP by producing many world-record
benchmark results on Big-Iron enterprise servers. When security became a hot
topic, I helped Sun design special cryptographic functionality that makes
secured applications run 10X faster on Sun systems. Even after I joined NTU,
Sun and I collaborate to solve certain hardware-software co-design issues for
Sun's next-generation embedded processors.
Our
study of computer performance emphasizes on realistic applications that run on
modern platforms: We like to know how to make applications run faster by
co-designing its software and hardware. Preferably, we look at production
applications that are real, e.g. Oracle database server, Web server, streaming media
server, etc. We are interested in working with all varieties of application
developers to make the computing world more efficient.
Security
is extremely important for applications in Today's networking environment.
Security usually comes at the cost of performance because many security
operations consumes enormous amount of computer and network resources. The
choice and use of security protocols can impact application performance
greatly. For example, the Secure Socket Layer (SSL) protocol widely used in
e-commerce would slow down Web transactions by 100X. Therefore, we study how
security protocols are performed in applications and the software and hardware
technologies to accelerate security operations.
- Shih-Hao Hung, Shu-Jheng Huang,
and Chia-Heng Tu, New
Tracing and Performance Analysis Techniques for Embedded Applications, in
the 14th IEEE International Conference on Embedded and Real-Time Computing
Systems and Applications (RTCSA 2008), Kaohsiung,
Taiwan, August 25-27, 2008. (Abstract)(PDF
File)
- Nei-Chiung Perng and Shih-Hao Hung, Task Scheduling for Context Minimization in
Dynamically Reconfigurable Platforms, in 2007 IFIP International
Conference on Embedded and Ubiquitous Computing, Taipei, December 17 - 20, 2007. (Abstract)(PDF File)
- Shih-Wei Liao, Shih-Hao Hung, Chia-Heng Tu, and Jen-Hao Chen,
Scalable Lossless High Definition Image Coding on Multicore
Platforms, in 2007 IFIP International Conference on Embedded and
Ubiquitous Computing, Taipei,
December 17 - 20, 2007. (Abstract)(PDF
File)
- Chi-Sheng (Daniel) Shih, Chia-Lin
Yang, Shih-Hao Hung, Chih-Wen
Hsueh, Chuen-Liang
Chen, and Tei-Wei Kuo,
SoC System Design Program for Computer Science
Majors, in the Proceedings of the Workshop of Embedded Software Education,
October, 2007. (Abstract)(PDF
File)
- Tai-Yi
Huang, Chung-Ta King, Shih-Hao Hung and Tei-Wei Kuo, An Update on
the Embedded Software Consortium of Taiwan, in 2006 Workshop on Embedded
System Education, held in conjunction with the EMSOFT conference, Seoul,
South Korea, October 26, 2006. (Abstract)(PDF
File)
- Chun-Yuan
Chang, Tsungnan Lin, Din-Yuan Chan and Shih-Hao Hung, A Low Complexity Rate-Distortion Source
Modeling Framework, in 2006 IEEE International Conference on Acoustics,
Speech, and Signal Processing (ICASSP), Toulouse, France, May 14-19, 2006.
(Abstract)(PDF File)
- C.-Y.
Chen, C.-L. Yang, S.-H. Hung, Cache Leakage Management for
Multi-programming Workloads, in Tenth Asia-Pacific Computer Systems
Architecture Conference (ACSAC 05), Singapore, October 24 - 26,
2005. (Abstract)(PDF
File)
- S.-H.
Hung and P. Bhattacharya. On the Delivered Performance of the Sun Crypto
Accelerator 1000. the Sun Users Performance Group 2002 Conf., Honululu,
Hawaii, April. 2002. (PDF File)
- J.
Huang, S.-H Hung, G.-P. Musumeci, M. S. Klivansky, and K.-T. Ko. Sun
Fire Gigabit Performance Characterization. the Sun Users Performance Group
2001 Conf., Amsterdam,
Netherlands,
Oct. 2001, (PDF File)
- P. Czarnul, S. Venkatasubramanian,
C. D. Sarris, S.-H. Hung, D. Chun, K. A. Tomko,
E. S. Davidson, L. P.B. Katehi and B. Perlman, Locality Enhancement and Parallelization of a
Finite Difference Time Domain Simulation, HPCMO Users Conf., Billoxi,
MS, June, 2001. (PDF
File)
- C.
Sarris, K. Tomko, P. Czarnul,
S.-H. Hung, R. Robertson, D. Chun, E. Davidson, L. Katehi.
Multiresolution Time Domain Modeling for Large
Scale Wireless Communication Problems. the 2001 IEEE AP-S Intl Conf. on
Antennas and Propagation. July 2001, Boston.
(PDF File)
- S.-H.
Hung and E. S. Davidson. A framework for performance optimization of
parallel applications. In Performance Evaluation and Benchmarking with
Realistic Applications, pp. 129- 160, The MIT Press, 2001. (PDF File)
- S.-H.
Hung and E. S. Davidson. System Support for Dynamic Optimization of
Application Performance. In Innovative Architecture for Future Generation
High-Performance Processors and Systems, pp. 7-20, IEEE CS Press, Jan. 99.
(PDF File)
- Shih-Hao Hung, Optimizing Parallel Applications, Ph.D.
Dissertation, Computer Science and Engineering, University of Michigan,
June 1998. (Abstract) (Full PDF File)
- S.-H.
Hung and E. S. Davidson, Characterizing and Reducing Overhead in Parallel
Applications, the Automative Research Center
1997 Conference on Critical Technologies for Modeling and Simulation of
Ground Vehicles, Ann Arbor, Michigan, June 1997. (PDF File)
- S.-H.
Hung and E. S. Davidson, A Parallel Application Development Environment,
9th Annual Industrial Partners of Computer Science and Engineering, Ann
Arbor, Michigan, March 1998. E. Boyd, W. Azeem,
H.-H. Lee, T.-P. Shih, S.-H. Hung, and E. Davidson. A hierarchical
approach to modeling and improving the performance of scientific
applications on the KSR1. In Proc. of the 1994 Intl Conf. on Parallel
Processing, Vol. III, pp.188-192, 1994. (PDF File)
Supervised
Students and Their Works «ü¾É¾Ç¥Í¤Î§@«~
Ph.D. Students
- Ò\¹Å«í Chia-Heng Tu
- Shih-Hao Hung, Shu-Jheng Huang,
and Chia-Heng Tu,
New Tracing and Performance Analysis Techniques for Embedded
Applications, in the 14th IEEE International Conference on Embedded and
Real-Time Computing Systems and Applications (RTCSA 2008), Kaohsiung, Taiwan, August 25-27, 2008. (Abstract)(PDF File)
- Shih-Wei Liao, Shih-Hao Hung, Chia-Heng
Tu, and Jen-Hao
Chen, Scalable Lossless High
Definition Image Coding on Multicore Platforms,
in 2007 IFIP International Conference on Embedded and Ubiquitous
Computing, Taipei,
December 17 - 20, 2007. (Abstract)(PDF
File)
- ÁÂ¥¿ÄP J.P. Shieh
Master Students,
Joined in 2008
- ¿½èûÂE Jui-Hung
Hsiao
- ·¨¬î²± Qiu-Cheng Yang
- ªL«T§Ê Chun-Tin Lin
- ©P«Â§Ê Wei-Tin
Chou
- ½²ªFªN Tung-Chieh
Tsai
- ªL©°¦ö Gen-You Lin
Master Students,
Joined in 2007
- ªL©v¼y Zong-Cing
Lin
- ·¨¤å¶© Wen-Long
Yang
- ³\¤å©÷ Wen-Chang
Hsu
- ±iµqµ¾ Hao-Siang Chang
- ³¯«\¥ô Yu-Jen Chen
- ³¯¹m¤¤ Chun-Jong
Chen
- ®]¤Ñ¨q Thean-Siew
Soon
Master Students,
Joined in 2006
- ½²©Ó¯§ Cheng-yu Tsai
- Optimization of Dynamic Scratchpad Memory Utilization :A Hardware/Software
Approach, Master Thesis,
August 2008 (Abstract)(PDF File)
- ³¯¦¿ºÍ Jiang-Rui
Chen
- A
System-Level Performance and Power Simulation Environment for Embedded
Computer Systems, Master Thesis,
August 2008 (Abstract)(PDF File)
- ¤ý«T¤å Chun-wen Wang
- Performance
Optimization of the Samba Read Service on Linux-based Network-Attached
Storage Systems, Master Thesis,
August 2008 (Abstract)(PDF File)
- ¶ÀÎ뵤 Chang-Jun Huang
- Performance
Optimization of the Samba write serviceon
Linux-based Network-Attached Storage Systems, Master Thesis, August 2008 (Abstract)(PDF
File)
- ²øÂצ° Feng-Hsu Chuang
- Power
Estimation for Embedded Processors based on Verilog-to-SystemC
Conversion, Master Thesis,
August 2008 (Abstract)(PDF File)
- ³¯«a¾§ Kuanju
Chen
- Evaluating
Task Migration Overhead for Heterogeneous Multi-Core Architectures, Master Thesis, August 2008
(Abstract)(PDF File)
- ¹ùÑ{§» Yuh-Hung
Liaw
Master Students,
Joined in 2005
- ªL¥H} Yi-Di Lin
- Automating Server Application Performance
Modeling Process on Solaris System via D-Trace and Trace-driven Analysis, Master Thesis, August 2007
(Abstract)(PDF File)
- ªL·×´Ë Huang-Sen Lin
- Automatic Selection of Compiler Options
for Performance Optimization on the Kernel Modules of a Storage Server, Master Thesis, August 2007 (Abstract)(PDF File)
- ±ißNÁ¨ Hsiao-Wei Chang
- A Rapid Simulation Environment for
Application Performance Estimation on Parameterized
Multi-core/Multi-threading Architecture Models, Master Thesis, August 2007
(Abstract)(PDF File)
- §d«Ø¦¨Chien-Cheng Wu
- Performance Evaluation of Caching and Prefetch Strategies on a Storage Server, Master Thesis, August 2007 (Abstract)(PDF File)
- ³¯¹Åµ¾ Jia-Siang Chen
- Performance Optimization on a RAID System: Design
and Implementation of a Fast Indexing Table for Disk Caching, Master Thesis, August 2007
(Abstract)(PDF File)
- ³¯¤H»¨ Jen-Hao Chan
- System-Level Performance Profiling and
Simulation Framework for I/O-Intensive Applications, Master Thesis, August 2007 (Abstract)(PDF File)
- Shih-Wei Liao, Shih-Hao Hung, Chia-Heng Tu, and Jen-Hao Chen,
Scalable Lossless High Definition
Image Coding on Multicore Platforms, in
2007 IFIP International Conference on Embedded and Ubiquitous Computing, Taipei, December 17
- 20, 2007.
- ³¯©_©s Chi-Meng
Chen
- Finding the Best Compiler Optimization
Option Set Rapidly via Machine Learning, Master Thesis, August 2007 (Abstract)(PDF File)
- ¶À®Ñ¬F
Shu-Jheng Huang
- Developing New Tracing and Performance
Analysis Techniques for Embedded Applications, Master Thesis, August 2007 (Abstract)(PDF File)
- Shih-Hao Hung, Shu-Jheng
Huang, and Chia-Heng Tu,
New Tracing and Performance Analysis Techniques for Embedded
Applications, in the 14th IEEE International Conference on Embedded and
Real-Time Computing Systems and Applications (RTCSA 2008), Kaohsiung, Taiwan, August 25-27, 2008. (Abstract)(PDF
File)
- ªL¬f§» Po-hung Lin
- Performance and Power Evaluation for
Non-Uniform Cache Architecture, Master Thesis, January 2008 (Abstract)(PDF File)
CONTACT:
hungsh@csie.ntu.edu.tw