nothing-肠胃
/
计算机专业攻读硕士
PERSONAL STATEMENT
:
A fourth-year
student grounded solidly in the basics of computer
science, I am writing in pursuit of graduate
studies that I hope can
help me acquire
cutting-edge expertise in software programming in
general and parallel processing in particular.
Intrigued by the
power of the computer
since high school, I have been trying to stay on
top of the computer science by concentrating my
undergraduate
studies on those subjects
that underpin the discipline, particularly
mathematics and electronics. To build up my solid
knowledge in
these subjects, I have
taken virtually all the related courses that the
university has had to offer. These courses include
Algorithm &
Data Structure,
Mathematical Modeling, Network Theory, Digital
Circuit, Discrete Mathematics, and Electric
Circuit. With a
sophisticated
understanding in these areas, I have been well
positioned to appreciate the basic theories of
computer science and their
applications
to software development. Aided by the firm command
of the basics, I have found it not only easy but
also exciting to
study the various
subjects covered by my major. As most of my
classmates, I took a variety of courses ranging
from AI to Computer
Network, from AI
Programming to Knowledge Engineering, from Pattern
Recognition to Software Engineering, and from
Database
Design to Programming Language
Design. But I distinguished myself by my academic
record, which places me as one of the very top
students in my class. My grades in
these course never went below A or B. I have also
stood out as one of the few who have taught
themselves Real Time System and
Computer Graphics. Armed with sound training in
the basic theories and applied technologies, I
have been able to move on into deeper
and wider areas of computer science. Early in my
university life, I began to understand that the
modern computer''s base, the Turing
machine, was reaching its limits in AI. Gradually,
I have narrowed down my research interest to
parallel & distributive computing,
which I understand can significantly boost the
performance of personal computers by giving them
some of the functions of mainframe
computers. Of all the areas of computer science,
parallel processing fascinates me the most. The
term first came to me when I read the
book Computer Organization & Design: the
Hardware/Software Interface as part of my
Computer Architecture course. By
teaching me how the performance of computers can
be improved through pipelining and parallel
processing, the book reshaped my
thinking in computer science. My lab experience
deepened my understanding of parallel processing.
In my third year, I worked on a GIFT
project with Dr. Komatsu, chief researcher of IBM
Tokyo Research Laboratory and Dr. Koseki,
one of Dr. Komatsu''s colleagues. The
project was to introduce the architecture supports
that can allow compilers to derive more
parallelism from programs. These
architecture supports include three designs, a
conditional execution mechanism to execute
instructions without normal conditional
jump instructions, speculative execution
mechanism, and a dynamic memory disambiguation
mechanism to execute memory access
instructions simultaneously. As undergraduate
students seldom get to be involved in actual
research, I took full advantage of the
opportunity of working in the lab. I particularly
enjoyed the seminars held twice a week as part of
the lab work. At these seminars, I
engaged in in-depth discussions with Master''s
students under Dr. Komatsu''s seasoned guidance.
The
lab experience is adding weight and
insights to my graduation paper An Improvement of
Software pipelining using Loop
Transformations. In this paper, I will
introduce a translation algorithm using loop
interchange and loop skewing. This algorithm can
minimize the initiation interval of
loop nest to improve the performance of software
pipelining. Through my lab experience and other
research, I have developed a long-term
professional objective: the advancement of the
parallel processing technology. While I have
strong faith in this technology, I also
know its limitations as it is today. Some
sequential algorithms can''t be easily translated
into fast
parallel algorithms and most
compilers can only distribute works on one
platform. Another unsettled problem is that
programming
parallel computers is now
still a manual work. But even the modern language
(like Java, C++) can do some automatic translation
work.
If a compiler can be developed to
translate and distribute work into different
platforms, personal computers will be able to work
like
mainframe computers at a fraction
of the mainframes'' costs. This will make it
possible to connect all the computers in the world
and
speed up all the processes. To help
take the parallel processing technology beyond
what is capable of today, I have to undertake more
―――――――――――――――――――――――――――――――――――――――
―――――――――――――――
上海市愚园路
905-907
号
新利商
务中心
1
号楼
2
楼
电话:
1
FAX
:
邮政编码:
200050
/