Research
Prototypes (updated on 8 November 2001)
Associate
Professor Teo Yong Meng
Department
of Computer Science, National University of Singapore
3
Science Drive 2, Singapore 117543
email: teoym@comp.nus.edu.sg, phone: (65) 874
2830
This page is under construction.
1. Modeling and Simulation Libraries
SPaDES/Java is an implementation of the SPaDES (Structured Parallel Discrete-event Simulation)
modeling and simulation framework based on the process-oriented modeling
paradigm. A set of modeling primitives allows the simulationist to focus
on modeling the problem. SPaDES/Java supports sequential simulation,
and it is portable across all platforms.
Parallel simulation using the conservative null
message synchronization will be supported in the next version. Performance optimizations
include carrier-null message, and demand null-message with flushing. Inter-processor communication is
implemented using Java Jini/JavaSpaces.
In addition, performance instrumentation supported includes time and
space analysis, i.e., average event parallelism, profile of memory requirement
based on that required by the simulation problem, as a result of different
event orderings, and the overhead of simulation synchronization.
This is an implementation of SPaDES in C++. An optimistic event
synchronization protocol with constrained speculation is used. The library is available for
educational purpose on request but
without support.
Ministry of Education
(Singapore) research grant R-252-000-020-112 and PSA Corporation research grant
R-252-000-020-490.
2. Performance Improvements of WWW
a. Cluster-based
Web Server Simulator (available soon)
This
is a trace-driven simulator written in Java and simulates a dispatcher-based
web-server cluster. The
simulator is validated against a web-server test-bed consisting of 24 Pentium
PCs, and queuing models.
b. Generalised
Proxy Cache Simulator (available soon)
This is a trace-driven
simulator written in Perl.
Fujitsu Computers
(Singapore) Pte Ltd research grant R-252-000-063-592 and National University of
Singapore research grant R-252-000-063-112.
3.
ALiCE Grid Computing (slides presented
at BioGrid
Computing Symposium, 2001)
ALiCE (Adaptive and scalable
Internet-based Computing Environment) is a grid middleware. Java programs that run on ALiCE are
supported by our TaskGenerator-ResultCollector programming abstraction. ALiCE supports sequential and
parametric applications to maximize computer throughput. For parallel applications, ALiCE breaks
down large computations into tasks to exploit parallelism and speedup. ALiCE core mechanism includes job
submission, execution and result collections, and load balancing. It is implemented in Java and Sun’s
JavaSpaces for cross-platform portability, extensibility, and scalability. Contact the author if interested.