Client-Sever Computing

advertisement
Client-Sever Computing
Client-Sever Computing
–
–
–
–
–
Sockets / RPC
IP (internet protocols) (40)
TCP (transmission control) (50)
HTTP/FTP (40 ms)
Others (web services, etc)
http://jan.netcomp.monash.edu.au/ClientServer/old/socket.html
Computational Science for NRM
D. Wang
Internet Based Computing
Internet Based Services
–
–
–
–
Static website design (html)
Dynamic website Jscript/JavaApplet
Database and other components
CGI/JSP/ASP/ASP.net …
Middleware – grid computing
Computational Science for NRM
D. Wang
High Performance Computing
A branch of computer science that concentrates on
developing supercomputers and software to run on
supercomputers. A main area of this discipline is developing
parallel processing algorithms and software: programs that
can be divided into little pieces so that each pieces can be
executed simultaneously by separated processors
www.webopedia.com/TERM/H/High_Performance_computing.html
• Performance orientated hardware
Low overhead / low latency (us)
Specially designed message passing
• Parallel algorithm
Computational Science for NRM
D. Wang
High Performance Computing
Amdahl’s Law (Maximum speedup) (Gene Amdahl IBM 1967)
If S is the fraction of calculation that is serial and 1-S is
the fraction that can be parallelized, then the greatest
speedup that can be achieved using P processors is
1/(S +(1-S)/P) which has a limiting value of 1/S for an
infinite number of processors.
http://en.wikipedia.org/wiki/Amdahl's_law
Gustafson’s Law (Scalable speedup) (John Gustafson, SNL 1988)
It states that if the size of most problem is increased
sufficiently, you can achieve any given efficiency by
increase the amount of processors.
http://www.scl.ameslab.gov/Publications/Gus/AmdahlsLaw/Amdahls.html
Computational Science for NRM
D. Wang
High Performance Computing
Is High Performance Programming Far Away?
My PC: 1 GHz Intel Celeron, 50 W, 500 MB, 40 GB, >$1000,
Capability: 1 billion floating point operations per second
1991 First computer achieve 1Gflop/s
1995 #400 in Top500 1 Gflop/s
2005 #450 in Top500 1 Tflop/s (10^12)
2015 #1 in Top500 1 Pflop/s (10^15)
My PC in 2015: 1-3 trillion floating point operations per second
RAM at ORNL: 256, 1.5 Ghz Intel Itanium2, 2 TB, Linux
www.ccs.ornl.gov/user/computers.html
Computational Science for NRM
D. Wang
High Performance Computing
Basic Concepts
Parallel Computer Memory Architecture
Shared memory / Distributed memory
Communication
Parallel tasks need to exchange data, through
shared memory bus or over a network
Synchronization
The coordination of parallel tasks in real time, very
often associated with communication
Standard Message Passing Library (MPI)
Debugging tools (Totalview)
Some frontiers in HPC: Fault tolerance, Algorithms…
Computational Science for NRM
D. Wang
Programming Language
A vocabulary and set of grammatical rules for instructing a
computer to perform specific tasks.
Mathematic / Simulation
Object-oriented language
High level Language
Block-structured language
Assembly Language
Flexible
Machine Language
Hardware
Fast
Computational Science for NRM
D. Wang
Programming Language
Two ways to covert your program into machines language
Compile the program – to transform a
program from source code into object code
Interpret the program – immediately execute
high-level language
Which language is the best? Chose the right language
Every language has its strengths and weakness.
The choice of which language to used depends on the type
of computer the program is to run on, what sort of program
it is and the expertise of the programmer
Computational Science for NRM
D. Wang
Store your data
Files
A collection of data or information that has a name.
Binary machine-readable / Textual human-readable (ASCII)
Database
A collection of information organized in such a way that a
computer program can quickly select desired piece of data
Relational DB – field, record, files
Object DB – every thing is objects
http://www.research.ibm.com/journal/sj/361/srinivasan.html
Computational Science for NRM
D. Wang
Download