RESUME
PERSONAL DATA
Name: Zhang, Guansong Date of Birth:
Dec., 1967
Email: zgs@npac.syr.edu Tel: (315)-443-3872
Homepage: http://www.npac.syr.edu/users/zgs
FIELDS OF INTEREST
Parallel and distribute processing, client-server application. A strong
background on parallel programming and parallelizing compiler, which will
help to bring the power of super computer to desktop for a variety kinds
of computations.
EDUCATION
-
1990-1995: Ph.D. Dept. of Computer Science and Engineering. Graduate School
of Harbin Institute of Technology. Specialty: Computer Organization and
Architecture
-
1986-1990: BS degree. Dept. of Computer Science and Engineering.
Harbin Institute of Technology. Specialty: Computer Science and Application
COMPUTER SKILLS
-
Programming languages: Java, C/C++, Fortran, HPF, Perl, Pascal and various
scripting languages. The latest Java project, HPJava compiler, includes
around 40K lines of Java code. The previous project, a 100K line system
in C and C++.
-
Parallel and distribute processing: MPI and client-server application.
These includes classic parallel applications with MPI programming, multi-thread
client-server application with socket communication and Java AWT interface.
-
Software development tools: autoconf, cvs. A team developer on multi platforms.
In charge of software packaging, branch and version control, involving
programmers around the world.
-
Cross platform development: Windows NT and UNIX, including major Unix system
such as IBM AIX SP2, DEC OSF Alpha farm, SGI IRIX Challenge, SUN Solaris
cluster, and Linux.
-
Compiler tools: lex, yacc, and javacc.
-
Other: HTML, DBASE, and PC assembly language.
RESEARCH WORK
1995-1999: at NPAC
-
Principle designer. HPJava language design. HPJava introduces a high level
structured SPMD programming model, which is funded by NSF. It is a parallel
language for programming on distributed memory system based on message
passing. The basic idea is to provides global name space and collective
communications, which will help programmers write programs with high level
construct similar to HPF, yet have full accesses to low level communication
libraries, such as MPI.
-
Project leader. HPJava compiler, the first compiler for HPJava language.
It incorporates the latest Java techniques, such as JavaCC, JTB, and uses
practice-proved design patterns, such as "visitor", "factory" and "wrapper".
The compiler enables the object-oriented Java language to provide a new
distributed array type for data across multiprocessors.
-
Release and package manager. MPI Java binding: With JNI interface, MPI
library (including MPICH MPI, SUN HPC MPI and Windows WMPI), is wrapped
with an object-oriented Java interface.
-
PCRC run-time library. Design and implement Java interface for C++ run-time
library, which provides data descriptors and collective communication functions
in "structured SPMD" programming model. The library is also based on JNI
interface.
-
Project leader. PCRC NPAC HPF compiler, a HPF compiler based on run-time
support. It has touched the basic language features such as data alignment,
distribution and inherit-directive in procedure. A new detecting communication
algorithm is designed and implemented. The preliminary benchmark results
show that the system out-performances commercial HPF compilers.
-
Project leader. frontEnd system, a programming language development environment,
including HPF 2.0, Java 1.1 parser, and extended Sage++ class library,
auto-configured and tested on 6 UNIX platforms. The system has been successfully
used as NPAC HPF compiler developing tools, and other research groups.
1989-1995: in college
-
Compiler development: Fortran D prototype implementation, a compilation
system, aimed at workstation cluster.
-
Parallel programming analyses for system efficiency and speedup, programming
in simulation tools to evaluate performance of different algorithms.
-
System software development for ABC-90, an array based SIMD computer.
-
Interconnection network: design and implement the interconnection network
for non-conflict access of array vectors.
TEACHING EXPERIENCE
-
August, 1994-June, 1995 Assistant in the graduate program for MS degree
-
March, 1994-June, 1994 Assistant in the undergraduate projects.
-
March, 1992-June, 1992 Assistant in the undergraduate projects.
IMPORTANT PAPERS
-
Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen.
The HPspmd model and its Java Binding, November 1998. To appear in "Cluster
Computing", published by Prentice Hall.
-
Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen.
Considerations in HPJava language design and implementation. In 11th International
Workshop on Languages and Compilers for Parallel Computing, August 1998.
-
Guansong Zhang, Bryan Carpenter, Geoffrey Fox, Xinying Li, and Yuhong Wen.
A high level SPMD programming model: HPspmd and its Java language binding.
In International Conference on Parallel and Distributed Processing Techniques
and Applications (PDPTA'98), July 1998.
-
Guansong Zhang, Bryan Carpenter, Geoffrey Fox Xiaoming Li, Xinying Li,
Yuhong Wen, "PCRC-based HPF compilation", In 10th International Workshop
on Languages and Compilers for Parallel Computing, 1997.
-
"HPFfe: a Front end for HPF", NPAC, SU, technical report, SCCS-771, 1996
-
"Barrier Synchronization and Pipeline Synchronization in Distributed Memory
Machines", Science Bulletin, 1996
-
"Partitioning Data Parallel Program for Workstation Cluster", Ph.D. thesis,
Harbin Institute of Technology., 1995
-
"Predicting Execution Time of Parallel Program Based on Simulation Software",
Chinese Journal on Computers., 1995
-
"Analysis of Interconnection Functions Needed for a New Nonlinear Skewing
Scheme", Chinese Journal on Computers., 1994
-
"Software System for ABC-90jr., an Array Based Computer", IEEE TENCON'93,
1993