410 likes | 778 Views
Research Center for Multiprocessor Systems Doctor Sergei Abramov. Supercomputers and multiprocessor software . Technologies for regional computer networks building . Functional programming , supercompilation and metacomputation theories , and their applications to practical programming . .
E N D
Research Center for Multiprocessor SystemsDoctor Sergei Abramov • Supercomputers and multiprocessor software. • Technologies for regional computer networks building. • Functional programming, supercompilation and metacomputation theories, and their applications to practical programming.
The SKIF Supercomputer Projectof the Russia-Belarus Union State Participants: structure
Peak performance of the clusters 2534 717 x125 ratio 98 48 20
Linpack-performance of the clusters 2032 472 x185 ratio 57 26 11
2000-2004: Supercomputing Industry. Linpack-performance Growth
2000-2004: Supercomputing Industry. Linpack-performance Growth
SKIFK-500(October 2003, Minsk) • Developers • UIIPof NAS, Belarus • NII EVM • The T-Platforms Company • PSI RAS • The project was completed in months
SKIFK-500: testing(September 2003, Moscow) The project has been completedin 4 months,cost per 1 TFlops (peak):under$700,000
SKIF К-1000 • Developers • UIIPof NAS, Belarus • NII EVM • PSI RAS • T-platforms • Development stages • Variant investigation, concept development:December 2003 — March 2004 • Specification preparation: April 2004 • Preparation of tender documents, tender:May 2004 • Implementation: July 15 — October 1, 2004, 2½months
SKIF К-1000 • Peak performance2,5 Tflops • Linpack-performance2,0Tflops • Efficiency factor = 80.1 % • SKIF К-1000 project cost: $ 1 800 000(several times cheaper than the competition) • Competitions: IBM, HP, Fujitsu-Siemens
SKIF К-1000: hardware SKIF К-1000:convenient components design,easily scalableup to 15 TFlops
SKIF К-1000 • is ranked #98 in the world (theTop500 rating) • Only four countries take the first 100 ranks: Union State, USA, Japan, and China • November 2004: first place in the worldaccording to theTopCrunch rating (the 3 Cars Crash Test) • November 2004: first place on the territory of ex-USSR (theTop50 national rating)
SKIF in theTop50 rating • On December 7, 2004 seven SKIF computerswere listed of fifty most powerful supercomputers of the Commonwealth of Independent States(Тор50, http://www.supercomputers.ru) and took the following places: 1, 6, 8, 20, 22, 32, 34 • Installations of the SKIF family take 14%of all places in the list • Their total peak performance amounts to 25%from the sum of all peak performances of all the systems presented in the Top50 list • Their totalLinpack performance amounts to33%from the sum of all Linpack performances of all systems presented in the Top50 list
Cluster-level Software Suite • Linux-SKIF OS kernel • PVFS-SKIF — parallel file system • OpenPBS-SKIF — batch queue • FLAME-SKIF — the system of monitoring and control (reset, power on/off)over installations of the SKIF family
Cluster-level Software Suite • OpenTS — open architecture T-system • the TG++ compilerfor the T++ language • the TF2TCtranslator (T-Fortran T++) • TDB — distributed interactive debugger for MPI programs supporting T-programs debugging(TotalView counterpart)
Cluster-level Software Suite • 6software applicationsin theOpenTS environment • 12 adapted free packages, libraries, and applications • 14 in-house designed applications (3of them in the AI field) • The platform is compatible with commercial engineering packages (over6fields of application)
ServNET: cluster management (June 2003) RS-485 links:up to 125 nodes, up to 1,000 meters Several links (equaling the number ofCOM-ports) may be connected tothe control station.
ServNET: simple hardware • Single-sided board. • OneAtmel microcontroller • Two Maxim chips (MAX232A и MAX487) • One chip for ferric RAM (FRAM) RAMTRON. • Few auxiliary components.
ServNET: functionality • Selective node reset (SW: groups). • Selectiveswitching on/off of node’s power supply(SW: groups, also“smooth”, with a target latency “between nodes”). • Access to the serial console of the node allowing...
Access to the serial console of the node allowsthe following: • To change the parameters of the BIOSnode. • LILO: select an OS to be loaded and the loading parameters of the Linux core. • To execute any commands in a console regime. • To monitor critical messages of the OS. • To read several last console messages from the nonvolatile memory of the ServNET board after failure.
ServNET: production • Development – PSI of RAS, Production – Computer Research Institute, Minsk. • A pilot lot of more than 200 items has been produced. ServNET has been installed in: • T-Forge32 (16 nodes). • “SKIF К-500” (64 nodes) and other clusters in Minsk. • Clusters in Pereslavl. • Clusters inthe Research Computing Center of the Moscow State University (58 ServNET boards). • ServNET v.2: 2004,developed by PSI of RAS and T-platforms, produced byT-platforms.
SKIF-ServNet v.2 • The size has become half as large (66 × 33 mm) if compared with the previous version.
Design and Development ofRegional Telecommunication Systems • The Botik Lab.: Activities • Develops cost effective solutions for regional computer networks (BOTIK Technologies) • Implements the technology in Pereslavl region for testing and enhancement • Transfers the approved technology to Russian regions and the CIS countries Head: Yury Shevchuk, Ph.D.
The BOTIK Network • Started in 1994: 11-year history • State-of-the-art • More than 900 subscribers • More than 3000 networked PCs • External traffic: 250 Gb/month • 4 technology transfer contracts • Almaty, Kazakhstan • Moscow • Ramenskoye, Moscow region • Severomorsk, Murmansk region
The BOTIK Technologies: Core • PC router • IBM PC + Linux + in-house designedHW & SW • Other hardware solutions • Resistance to low-quality power supply, temperature difference, and vandalism • Self-recovery and self-monitoring of devices • Wireless solutions for rural regions • Etherbox: sensor networks device • Software solutions for regional networks • Network Administration System: +10,000 lines…
Functional programming, supercompilation and metacomputation theories, and their applications to practical programming
Functional programming in IPS RAS • Supercompilation, program specialization. • Metacomputation, semantics modifiers – reusing “semantics components”. • Implementation of functional programming languages. • Applied computer algebraic libraries.
Reasons for program optimization • The methods can do almost nothing with programs that are already carefully optimized by a professional programmer in a lower-level language. The methods can clean a program of natural inefficiencies if the program has been developed “inefficiently” in a structured way, using various “high-level” techniques like • interpretation of specialized application-oriented languages and • componentprogramming from libraries of general re-usable software, etc. Thus, the methods are directed to provide degreesoffreedom for newsoftwaretechnologies rather than to optimizing programs written in an old style.
Specialization: the main idea Let human be a program with two parameters knowledge and problem. Then creating a specialist humanknowledge from human and knowledge is a good example of specialization: humanknowledge(problem) = human(knowledge,problem) Specialist humanknowledge can solve problems much quicker than an ordinary human when the problems are covered by his specific knowledge.
A number of tasks for specialization <F x0, y> The first argument of a program F is given, while the second is unknown. <F <G x, y> , z > Let two programs F and G be given, specialize a composition of applications of the programs. That is specialization with respect to a context of application. <IntL ( Program ) e.data > <GO > An interpreter IntL of a programming language L is specialized with respect to a given program. IntL is written in a language M, while the program is written in L, so we expect an optimal program written in M as a result of specialization. Thus a specializer may be used as a compiler from L into M, where M is the subject language of the specializer.
What is supercompilation ? • Supercompilation is a technique of specialization of programs written in a functional programming language. The technique was introduced in the 1970s by V. F. Turchin. He proposed a task of creating tools to observe operational semantics of a program, when a function F that is to be computed by the program is fixed. As a result of such observations a new algorithmic definition of an extension of the function F must be constructed. His ideas were studied by a number of authors for a long time. • The main aim of a supercompiler is to perform as many actions of a given parameterized application of a program uniformly on the parameters as possible. • Also supercompilers can be used • as theorem provers for program verification; • as compilers by specialization of operational specifications; • for porting a non-standard semantics from one programming language to another; by specialization of a semantics modifier.
The Supercompiler SCP4 • is an experimental specializer for a functional language Refal-5. (There are no special restrictions on the input language.) SCP4 has been implemented once again using Refal-5. Sources of the supercompiler, executable modules and sources of Refal-5 are available for immediate free download: http://www.botik.ru/pub/local/scp/refal5/ Windows 98 Windows NT/2000/XP Linux (Intel)
Specialization of interpreters <IntL ( Program ) e.data > <GO > An interpreter IntL of a programming language L is specialized with respect to a given program. IntL is written in a language M, while the program is written in L, so we expect an optimal program written in M as a result of specialization. Thus a specializer may be used as a compiler from L into M, where M is the subject language of the specializer. Semantics modifiers (a class of programs that allow the development of general and reusable “semantics components”) can be specialized alike interpreters.
Verification of parameterized systems by the supercompiler SCP4 • Successful experiments on verification of cache coherence protocols: • IEEE Futurebus+, MOESI, MESI, MSI, “Illinois”, “Firefly”, “Berkeley”. • More parameterized protocols: • Java Meta-Locking Algorithm, Reader-Writer protocol.
References [1] Abramov S.M., and Glueck R. From standard to non-standard semantics by semantics modifiers. International Journal of Foundation of Computer Science, Vol. 12 No. 2, pp:171-211, 2001. [2] Nemytykh A.P., and Turchin V.F. The Supercompiler Scp4: sources, on-line demonstration. http://www.botik.ru/pub/local/scp/refal5/ ,2000. [3] Nemytykh A.P., The Supercompiler Scp4: General Structure., LNCS vol. 2890, pp.162-170, 2003. [4] Nemytykh A.P., A Note on Elimination of Simplest Recursions. In Proceedings of the ACM SIGPLAN Asia-PEPM'02, 138-146. ACM Press, 2002. [5] Korlyukov A.V., and Nemytykh A.P., Supercompilation of Double Interpretation. (How One Hour of the Machine's Time Can Be Turned to One Second). (In English), Vestnik natcional’nogo tekhnicheskogo universiteta “Khar’kovskogo politekhnicheskogo instituta”, Khar’kov, No. 1, 2004. [6] Lisitsa A., and Nemytykh A.P., Verification via Supercompilation. http://www.csc.liv.ac.uk/~alexei/VeriSuper/ , 2005.