540 likes | 678 Views
ivec.org. Team Quokka: Australia’s First Foray into the Student Cluster Challenge. Rebecca Hartman-Baker, Ph.D. Senior Supercomputing Specialist & SCC Team Coach rebecca@ivec.org Happy Cheeks , Ph.D. Supercomputing Quokka & Team Mascot http://www.facebook.com/happycheeksquokka. ivec.org.
E N D
ivec.org Team Quokka: Australia’s First Foray into the Student Cluster Challenge Rebecca Hartman-Baker, Ph.D. Senior Supercomputing Specialist & SCC Team Coach rebecca@ivec.org Happy Cheeks, Ph.D. Supercomputing Quokka & Team Mascot http://www.facebook.com/happycheeksquokka
ivec.org Outline • Student Cluster Competition • Building & Training SCC Team • Cluster Design • Science Applications • Competition
I. Student cluster competition iVEC Student Cluster Competition Training Team, 2013
Student Cluster Competition: Introduction • 48-hour non-stop computing showdown held at annual supercomputing conference • Held in Denver, Colorado, USA in 2013 • Teams of undergraduates design, build, run apps on cluster • Power constraint ~3000W (standard track) • $2500 equipment constraint (commodity track)
SCC: Introduction • Key cluster architecture rules: • Machine must contain only publicly available components • All components must be turned on at all times (low-watt idle okay) • When running applications, must not exceed 26 A @ 120 V power draw (~3120 W)
SCC: Introduction • Applications: HPCC + 3 known apps, 1 mystery app • 2013 apps: Graphlab, WRF, Nemo5, + Flying Snakes (OpenFOAM) • Teams judged on throughput of work provided by judges, plus interview to determine depth of understanding
SCC: History • First held at 2007 Supercomputing conference, SC07 • Brainchild of Brent Gorda, now General Manager, Intel High-Performance Data Division (formerly Whamcloud) • Now three Student ClusterCompetitions/year: • China (April) • ISC (June) • SC (November)
SCC: iVEC’s Motivation • Increase computational science literacy in WA • Develop future users/employees • Train professional workforce for local industry • Exposure for iVEC in international HPC community • It sounded like fun!
II. Building & Training the Team “Compiling,” http://xkcd.com/303/
Starting iVEC’s SCC Team • Began by raising interest at iVEC partner universities • Contacted iVEC directors at universities, got leads for whom to contact • First interest came from ECU (3 students) • Other unis followed
Sponsorship for SCC Team • SGI • NVIDIA • Allinea • Rio Tinto
Sponsorship for SCC Team • Discussed hardware sponsorship with Cray & SGI • SGI first to commit, hardware + travel money • Solicited financial sponsorship from mining companies in WA • Rio Tinto committed to sponsor 3 students • Obtained software & hardware sponsorship from Allinea & NVIDIA
Team Hardware Sponsorship • Most important sponsorship to get • SGI very enthusiastic about sponsoring team • Put best person in Asia-Pacific region on project • Todd helped team: • Select machine architecture • Determine software stack • Set the machine up in Perth & at competition
Team Hardware Sponsorship • When team decided to use GPUs in cluster, NVIDIA loaned us 8 K20X GPUs • Received free of charge through academic program (had to return after competition )
Team Travel Sponsorship • Travel to competition very expensive • Budget: $3000/student • SGI committed enough for half of team • Solicited support from mining companies in WA, successful with Rio Tinto
Team Software Sponsorship • I “won” license for Allinea software • I asked Allinea to sponsor license for team instead • Allinea provided license for MAP & DDT products • MAP: simple profiling tool, very useful to novice users • DDT: parallel debugger, intuitive GUI
Team Composition • Breakdown: • 3 Computer Science/Games majors from ECU • 2 Physics/Computer Engineering majors from UWA • 1 Geophysics major from Curtin • Each student assigned areas of expertise (1 primary, 2 secondary) • At beginning of training, I facilitated students’ development of team norms (standards of behavior) that proved very effective • No conflicts, no inappropriate behavior
III. Cluster Design “Crazy Straws,” http://xkcd.com/1095/
Cluster Design • Designing cluster, generally the following must be considered: • Cost • Space • Utility • Performance • Power Consumption • Cost
Cluster Design • Designing cluster, generally the following must be considered: • Cost • Space • Utility • Performance • Power Consumption • Cost
Cluster Design • Architecture choices: • All CPU nodes • All accelerator nodes • Hybrid CPU/accelerator • Accelerator choices: • NVIDIA Tesla • Intel Xeon Phi • Combination (?)
Cluster Architecture • 2 Pyramid nodes • 4 x NVIDIA K20X • 2 x Intel Ivy Bridge 12-core 64 GB • 8 Hollister nodes • 2 x Intel Ivy Bridge 12-core 64 GB • Infiniband interconnect • Stay within power budget by running only GPUs or CPUs
Cluster Architecture • Chose CPU/GPU hybrid architecture • For good LINPACK performance • Potential accelerated mystery app • Maximize flops per watt performance
Cluster Software • CentOS 6 • Cephfilesystem • Open-source Software • GCC • OpenMPI • Numerical libraries • FFTW • PETSc • NetCDF • HDF5 • Proprietary software • Intel compiler/MKL • Allinea DDT/MAP • PGI compiler • CUDA
Cluster Software: Ceph • Each node has > 1TB disk, need parallel filesystem • Could use Lustre, however issues with losing data if one node fails • Ceph: distributed object store and file system designed to provide excellent performance, reliability and scalability
Cluster Software: Ceph • Ceph object-storage system with traditional file-system interface with POSIX semantics • Looks like regular filesystem • Directly mounted in recent CentOS kernel • Underneath, Ceph keeps several copies of files balanced across hosts • Metadata server cluster can expand/contract to fit file system • Rebalance dynamically to distribute data (weighted distribution if disks differ in size)
IV. Applications “TornadoGuard,” https://xkcd.com/937/
Applications • High-Performance LINPACK • Graphlab • NEMO5 • WRF • Mystery Application – Flying Snakes!
LinpackHistory • Linear algebra library written in Fortran • Benchmarking added in late 1980s to estimate calculation times • Initial releases used fixed matrix sizes 100 and 1000 • Arbitrary problem size support added in 1991 • LAPACK replaced the Linpacklibrary for linear algebra, however Linpackbenchmarking tool still used today
HPL Standard • Released in 2000 re-written in C and optimized for parallel computing • Uses MPI and BLAS • The standard benchmark used measure supercomputer performance • Used to determine the Top500 • Also used for stress testing and maintenance analysis
CUDA HPL • CUDA-accelerated Linpack released by NVIDIA available on developer zone • Uses the GPU instead of the CPU and limited to GPU memory • Popularity gaining with GPU providing better flops/watt • Standard for HPL runs in Student Cluster Competitions
TF Year
GraphLab • Toolkit for graph algorithms • Topic Modelling • Graph Analytics • Clustering • Collaborative Filtering • Graphical Models • Computer Vision
Graphlab Applications • Page rank (e.g., Google) • Image reconstruction • Recommendation predictions (e.g., Netflix) • Image stitching (e.g., panoramic photos)
NEMO5 • Stands for NanoElectronicsMOdeling Tools • Free for academic use, not exactly open source • Evolved to current form over 15 years • Developed by Purdue University
NEMO5 • NEMO5 designed to model at the atomic scale • Simulation of nanostructure properties: strain relaxation, phonon modes, electronic structure, self-consistentSchrodinger-Poisson calculations, and quantum transport • E.g., modelling Quantum Dots
WRF • Next-generation mesoscale numerical weather prediction system • Used for both weather prediction and research forecasting, throughout the world
Mystery Application • Unknown application, presented at competition • To prepare, compiled and ran one new code each week during 2nd semester • Gained experience with different types of compiles (e.g., edit makefiles, make.inc, cmake, autoconf, etc.) • Gained familiarity with common errors encountered while compiling, and how to fix them
Flying Snakes! • Aerodynamics of flying snakes • Flying snakes inhabit rainforest canopy in East Asia & jump between tree branches, gliding to next branch • Case of fluid dynamics: behavior of air as snake passes through, development of vortices, eddies, etc. • Modeled with OpenFOAM, open-source computational fluid dynamics toolbox
V. Competition “Standards,” http://xkcd.com/927/
Competition • Arrived in Denver Thursday before competition, to acclimate to 15-hour time difference • Visited National Renewable Energy Laboratory to see supercomputers • Began setting up on Saturday before competition • Competition time: Monday evening – Wednesday evening • Wednesday evening: party at Casa Bonita • Thursday: Pros vs. amateurs competition • Friday: back home