Title: Open TS: an Advanced Tool for Parallel and Distributed Computing
1Open TS an Advanced Tool forParallel and
Distributed Computing
- PSI RAS Moscow State University,Sergey M.
Abramov, 23/02/05(presentation for Microsoft
Research Ltd., Cambridge)
2Proposal Motivation
- Parallel architecture multitude multi-core CPUs,
SMP, clusters, PC farms, supercomputers,
distributed systems, GRID - Parallel programming is still too complex
- Challenge
- Parallel programming should be easier to be
widely used - Software should be portable and efficient
- Proposal addresses this for Windows platform
3Presentation Outline
- Short self-introduction
- Open TS architecture applications
- Proposal
- Open TS
- Web service synthesis
- Approach testing (applications)
41. Short Self-Introduction
5Program Systems Institute
- PSI RAS was established in 1984 by a decree
issued by the USSR government - Goals to foster the development of computer
science in the country
The first buildings of the Institute
The first directorof the InstituteProfessor
A.Aylamazyan
62005 PSI RAS, Pereslavl-Zalesski
72005 Institute Structure
- Artificial Intelligence Research Centre
- Medical Informatics Research Centre
- Research Center for Multiprocessor Systems
- System Analysis Research Centre
- Control Processes Research Centre
- Scientific and educational centre
- International Childrens Computer Centre named
after A. Aylamazyan - Kindergarten and Primary school Pochemuchka
8University of Pereslavl-Zalesski
9SKIF Supercomputing Project
- Joint project of the Russian Federation and the
Republic of Belarus - 2000-2004
- 10 10 organizations
- PSI RAS is the leading organization from the
Russian Federation - Hardware and Software
10Flagship SKIF ?-1000
- Peak performance2,5 Tflops
- Linpack-performance2,0 Tflops
- Efficiency factor80.1
- The most powerful supercomputer in ex-USSR
- Ranked No98 in Top500 (November 2004)
11Moscow State University
2005 MSU celebrates 250th anniversary
122. Proposal BackgroundOpen TS Architecture
Applications
13T-System History
- Mid-80-iesBasic ideas of T-System
- 1990-iesFirst implementation of T-System
- 2001-2002, SKIF GRACE Graph Reduction
Applied to Cluster Environment - 2003-current, SKIF Open TS Open T-system
14Open TS an Outline
- High-performance computing
- Automatic dynamic parallelization
- Combining functional and imperative approaches,
high-level parallel programming - ? language Parallel dialect of C an
approach popular in 90-ies
15Open TS Environment
16?-Approach
- Pure functions (tfunc) invocations produce
grains of parallelism - T-Program is
- Functional on higher level
- Imperative on low level (optimization)
- C-compatible execution model
- Seamless C-extension (or Fortran-extension)
- Multiple assignment
17Comparison T-System and MPI
Sequential
Parallel
18? Seven Keywords C
- tfun ?-function
- tval ?-variable
- tptr ?-pointer
- tout Output parameter (like )
- tdrop Make ready
- twait Wait for readiness
- tct ?-context
19Sample Program
- include ltstdio.hgt
- tfun int fib (int n)
- return n lt 2 ? n fib(n-1)fib(n-2)
-
- tfun int main (int argc, char argv)
- if (argc ! 2) printf("Usage fib ltngt\n")
return 1 - int n atoi(argv1)
- printf("fib(d) d\n", n, (int)fib(n))
- return 0
-
20Open TS Runtime
- Three-tiered architecture (?, M, S)
- Design microkernel , 10 extensions currently
- Supermemory
- Lightweight threads
- DMPI Dynamic MPI
- auto selection of MPI implementation
- dynamic loading and linking
21Supermemory
- Object-Oriented Distributed shared memory (OO
DSM) - Global address space
- Cell versioning
22Multithreading Communications
- Lightweight threads
- PIXELS (1 000 000 threads)
- Asynchronous communications
- A thread A asks non-ready value (or new job)
- Asynchronous request sent Active messages
Signals delivery over network to stimulate data
transfer to the thread A - Context switches (including a quant for
communications) - Latency Hiding for node-node exchange
23DMPI
- Dynamic MPI
- auto selection of MPI implementation
- dynamic loading and linking
- Seven implementations of MPI supported now
- LAM
- MPICH
- SCALI MPI
- MVAPICH
- IMPI
- MPICH-G2
- PACX-MPI
- even PVM can be used instead of MPI
24Debugging WAD, LTDB
25Statistics Gathering
26Message Tracing
27Tests NASA CG, NASA EP, FIB
28Open TS Applying to Distributed Computing
- Meta-cluster messaging support(MPICH-G2, IMPI,
PACX-MPI) - Customizable scheduling strategies(network
topology information used)
29Out of Scope ofthis Presentation
- Other T-languages T-Refal, T-Fortan
- Memoization
- Automatically choosing between call-style and
fork-style of function invocation - Checkpointing
- Heartbeat mechanism
- Flavours of data references normal, glue and
magnetic lazy, eager and ultra-eager
(speculative) data transfer
30T-System in Comparison
Related work Open TS differentiator
Charm FP-based approach
mpC Implicit parallelism
Glasgow Parallel Haskell Allows C/C based low-level optimization
OMPC Provides both language and C templates library
Cilk Supports SMP, MPI, PVM, and GRID platforms
31Out of Comparison Scope
- Parallel Programming Using C (Scientific and
Engineering Computation) by Gregory V. Wilson
(Editor), Paul Lu (Editor)ABC, Amelia, CC,
CHAOS, COOL, C//, ICC, Mentat, MPC,
MPI, pC, POOMA, TAU, UC
32Open TS Current Status
- Tested for quality under SKIF project
- Approximately 20 applications (some notes below)
- Supported by grants of Russian Academy of Sciences
33?-Applications
- MultiGen biological activity estimation
- Remote sensing applications
- Plasma modeling
- Protein simulation
- Aeromechanics
- Query engine for XML
- AI-applications
- etc.
34MultiGenChelyabinsk State University
?0
Level 0
Level 1
?11
?12
Level 2
?22
?21
Multi-conformation model
35MultiGen Speedup
National Cancer Institute USA Reg.No.
NCI-609067 (AIDS drug lead)
National Cancer Institute USA Reg.No.
NCI-641295 (AIDS drug lead)
TOSLAB company (Russia-Belgium) Reg.No. TOSLAB
A2-0261 (antiphlogistic drug lead)
Substance Atom number Rotations number Conformers Exectution time (min.?) Exectution time (min.?) Exectution time (min.?)
Substance Atom number Rotations number Conformers 1 node 4 nodes 16 nodes
NCI-609067 28 4 13 933 321 122
TOSLAB A2-0261 82 18 49 11527 3923 1609
NCI-641295 126 25 74 26619 9557 3448
36AeromechanicsInstitute of Mechanics, MSU
37Belocerkovskis approach
flow presented asa collection of
smallelementary whirlwind(colours
clockwiseand contra-clockwiserotation)
38Aeromechanics Speedup
500 steps 1 node 2 nodes 4 nodes 8 nodes
C 160
MPI 160 87 56 41
T 214 130 81 61
39Creating Images fromSpace-Born Radar Holograms
40Simulating Broadband Radar Signal
- Graphical User Interface
- Non-PSI RAS development team (Space research
institute of Khrunichev corp.)
41LANDSAT Image Classification
- Computational web-service
42Further Development
- Distributed computing
- Schedulers use information of the network
topology and connectivity between nodes - DMPI add new transports
- Interface to web-services
- Fault-tolerance
- Optimizing for modern CPUs
- Algorithmic skeletons, patterns and high level
parallel libraries
Supportedby Russian Academy of Sciences
433. The ProposalOpen TS an Advanced Tool for
Parallel and Distributed Computing
44Open TS Proposal
- Open TS migration to MS Windows
- Web service
- Approach illustrated by applications
- Artificial intelligence
- Molecular modeling
45Migration Approach
- Goal provide Open TS on Windows clusters and
SMPs (Win 32 platform) - Migration issues
- MPI available
- Linux-specific memory management
- Compilation of T-programs
46Web-Service Synthesis
- T-functions are pure easy to expose as
web-services - Ease creation of computational services
- Easy integration of computational service with
- Data
- Other services
- Build end-to-end data processing chains
47Approach demos and presentations
- Current importance of selected applications
- Two applications
- Artificial Intelligence
- Molecular modeling (QM/MM approach)
- Development of T-programs by experts in
application areas, not in T-programming - Testing of T-System usability
48AKTIS Text Categorization System
- The goal classification documents into a
predefined categories - The categories are defined by a training set a
set of category-labeled documents - Features
- Machine learning techniques will be used
- One-word and multi-word terms will be used
- Extraction of multi-word terms will be based on
partial syntactic analysis - Different types of term occurrence will be
taking into account
49AKTIS High Performance Computing is Needed
- Complicated algorithms and a big incoming data
flow require a powerful computational facility - Input texts of varying size and complexity
require dynamical load balancing - Open-TS will be used to solve the issues
50Moscow State University Team
- Department of Chemistry,M. V. Lomonosov Moscow
State University - Molecular modeling.QM/MM multi-scale technique
51The aim is to study mechanisms of chemical
reactions in complex molecular environment by
considering multidimensional potential energy
surfaces in the QM/MM approach E EQM EMM (
EQM/MM)
52Running ProjectCleavage of Insulinby
Serine-Carboxyl Peptidases
E EQM EMM ( EQM/MM)
QM
Catalytic triad Asp84
Glu80 Ser287
Substrate Insulin
53Project Plan
5. Web-service tool Development and testing 6.
AI Initial implementation 7. AI Testing and
performance tuning on Windows 8. QM/MM Initial
implementation 9. QM/MM Testing and performance
tuning on the Windows
- 1. Open TS Preliminary porting design
- 2. Open TS Migrating to the Windows platform
- 3. Open TS bugfixing and performance tuning
- 4. Web-service tool Design of web-service
synthesis tool
2005
2006
Q1
Q2
Q3
Q4
Q1
1
2
3
4
5
6
7
8
9
54THANKS