The Spanish Parallel Programming Contest and its use as an educational resource



Similar documents
Optimizing a 3D-FWT code in a cluster of CPUs+GPUs

Retargeting PLAPACK to Clusters with Hardware Accelerators

Graduated with honors (Magna Cum Laude). Grade average: 9.6 over 10.

: La Pedregosa Alta - Km. 4,7 - Qta. Dimensión - Mérida - Estado Mérida -

Course contribution to the programme: The course contributes to the programme by helping the students to:

Curriculum Reform in Computing in Spain

Parallel Algorithm for Dense Matrix Multiplication

Parallel and Distributed Computing Programming Assignment 1

Parallel Computing for Data Science

New 4-year EHEA Degree on Computer Science (Information Systems) All courses taught in Spanish

Data Structures and Performance for Scientific Computing with Hadoop and Dumbo

Spanish Supercomputing Network

Benchmark Hadoop and Mars: MapReduce on cluster versus on GPU

Scheduling Algorithms in MapReduce Distributed Mind

Problems and Measures Regarding Waste 1 Management and 3R Era of public health improvement Situation subsequent to the Meiji Restoration

Pablo Pérez Lantero. Curriculum Vitae (May 26, 2011) Education. Employment history. Grants. Teaching experience. Guiding experience

Europass Curriculum Vitae

Cellular Computing on a Linux Cluster

Parallel Databases. Parallel Architectures. Parallelism Terminology 1/4/2015. Increase performance by performing operations in parallel

Paseo Fotografo Verdú 8 Bajo D Murcia. Spain T: / E: estudio@mohoweb.com W:

A Model for the Automatic Mapping of Tasks to Processors in Heterogeneous Multi-cluster Architectures *

Grupo de Ingeniería de Sistemas Integrados (ISIS) Dpto. Tecnología Electrónica Universidad de Málaga

Friday 1 st August, 2014

Master s Project Summary Paper: ACM SIGSPATIAL GIS Cup 2012

Classifying Large Data Sets Using SVMs with Hierarchical Clusters. Presented by :Limou Wang

LEVERRIER-FADEEV ALGORITHM AND CLASSICAL ORTHOGONAL POLYNOMIALS

OpenMP & MPI CISC 879. Tristan Vanderbruggen & John Cavazos Dept of Computer & Information Sciences University of Delaware

Lecture 10 - Functional programming: Hadoop and MapReduce

EMPLOYMENT INTEGRATION: The role of associations of people with mental illness and their families

How To Create A Tutorial System For Computer Science And Telecommunication Engineering Students

Introduction to GPU Programming Languages

from Larson Text By Susan Miertschin

Matrix Multiplication

Parallel Ray Tracing using MPI: A Dynamic Load-balancing Approach

Auto-Tuning TRSM with an Asynchronous Task Assignment Model on Multicore, GPU and Coprocessor Systems

Final Project Report. Trading Platform Server

Krishna Institute of Engineering & Technology, Ghaziabad Department of Computer Application MCA-213 : DATA STRUCTURES USING C

CUDAMat: a CUDA-based matrix class for Python

MOSIX: High performance Linux farm

INDIAN STATISTICAL INSTITUTE announces Training Program on Statistical Techniques for Data Mining & Business Analytics

Improving MapReduce Performance in Heterogeneous Environments

PARALLEL PROGRAMMING

CONTROL CODE GENERATOR USED FOR CONTROL EXPERIMENTS IN SHIP SCALE MODEL

Parallelization: Binary Tree Traversal

GUJARAT TECHNOLOGICAL UNIVERSITY Computer Engineering (07) BE 1st To 8th Semester Exam Scheme & Subject Code

Le langage OCaml et la programmation des GPU

Data Mining. Cluster Analysis: Advanced Concepts and Algorithms


2. (a) Explain the strassen s matrix multiplication. (b) Write deletion algorithm, of Binary search tree. [8+8]

Ridgeway Kite Innova've Technology for Reservoir Engineers A Massively Parallel Architecture for Reservoir Simula'on

A Lab Course on Computer Architecture

CURRICULUM VITAE. Moisés Soto Bajo

Economics of Education, Public Economics, Urban Economics, Social Conflict, Development Economics.

ABSTRACT FOR THE 1ST INTERNATIONAL WORKSHOP ON HIGH ORDER CFD METHODS

Extended Finite-State Machine Inference with Parallel Ant Colony Based Algorithms

MPI and Hybrid Programming Models. William Gropp

Energy Efficient MapReduce

University of Amsterdam - SURFsara. High Performance Computing and Big Data Course

Overview on Modern Accelerators and Programming Paradigms Ivan Giro7o

5. A full binary tree with n leaves contains [A] n nodes. [B] log n 2 nodes. [C] 2n 1 nodes. [D] n 2 nodes.

Computer Algorithms. NP-Complete Problems. CISC 4080 Yanjun Li

IOWA End-of-Course Assessment Programs. Released Items ALGEBRA I. Copyright 2010 by The University of Iowa.

Architecture of distributed network processors: specifics of application in information security systems

CS5310 Algorithms 3 credit hours 2 hours lecture and 2 hours recitation every week

Operation Count; Numerical Linear Algebra

Operatin g Systems: Internals and Design Principle s. Chapter 10 Multiprocessor and Real-Time Scheduling Seventh Edition By William Stallings

Dynamic Load Balancing on Dedicated Heterogeneous Systems

COMP/CS 605: Introduction to Parallel Computing Lecture 21: Shared Memory Programming with OpenMP

7th Marathon of Parallel Programming WSCAD-SSC/SBAC-PAD-2012

The truck scheduling problem at cross-docking terminals

Collaborative Computational Projects: Networking and Core Support

Apriori-Map/Reduce Algorithm

Lecture 1: Data Storage & Index

Simón Planells Struse PhD candidate 2014/2015.

Big Data Mining Services and Knowledge Discovery Applications on Clouds

European Union - Regional Economics Applications Laboratory

DATA STRUCTURES USING C

ADVANCED COMPUTER ARCHITECTURE: Parallelism, Scalability, Programmability

Transcription:

The Spanish Parallel Programming Contest and its use as an educational resource Francisco Almeida Departamento de Estadística, Investigación Operativa y Computación, University of La Laguna Javier Cuenca, Ricardo Fernández-Pascual Departamento de Ingeniería y Tecnología de Computadores, University of Murcia Domingo Giménez Departamento de Informática y Sistemas, University of Murcia Juan Alejandro Palomino Benito Centro de Supercomputación, Fundación Parque Científico, Murcia EduPar Workshop, Shanghai, May 21, 2012

Outline 1 The contest 2 Resources 3 Teaching 4 Perspectives

The First Spanish Parallel Programming Contest Participation in groups of three students + one teacher-coach In situ and online participation In the Jornadas de Paralelismo in September 2011, La Laguna, Tenerife. MPI+OpenMP programming in a cluster of 4 nodes, each node 8 cores Five problems, for which a sequential solution is provided and the score is calculated based on speed-ups Automatic, real time scoring using Mooshak

Mooshak A tool for organization contests. We use it in programming and algorithm courses at the University of Murcia. Adapted to work in the cluster and to calculate scoring based on speed-ups. Access to mooshak through the contest s page (cpp.fpcmur.es) The participants send their solution to mooshak, which compiles and links it with a scheme (used for I/O, validation and scoring), sends the compiled program to the cluster, collects the result and execution time, validates the output and calculates scores.

Problems A Multiplication of matrices with rectangular holes. B Live game with variable neighbourhood. C Obtain values in given positions after sorting. D Multiply four dense square matrices. E Knapsack problem with affinities. Well-known problems, sequential solution provided, solved with well-known algorithmic schemes, but it is necessary to adapt them to the system to obtain high speed-ups; the effort is centred on parallelization.

Solutions In a file a function with the sequential solution which is substituted by a parallel solution: void mh(int t,double *a,double *b,double *c,int nodo,int np) And a header indicating the resources to use: /* CPP NUM CORES = 1 CPP PROCESSES PER NODE 1 CPP PROBLEM=mh */

Participation First edition: 4 in situ + 4 online From the second edition: prepared in English and online participation of non Spanish teams.

Classification For each problem: scoring (execution time, speed-up, submissions) When in a problem a speed-up higher than 15 is obtained, the scores of all the teams for this problem are linearly scaled to values between 0 and 15

Website: cpp.fpcmur.es Contest. Subcluster: used for some practicals at the university of Murcia. Modifications to Mooshak: it has been adapted and the modifications can be used in other courses. Problems: are available on the website. Programs: solutions in the records table. Explanations: explanation of the improvements for new records. CUDA stuff: for the second edition.

Records table A B C D E sequential 3 1 1.2 4 2 message-passing 3 1.5 1.5 3.5 3.5 shared-memory 6 6 4 7 6 maximum speed-up 54 9 7.2 98 42 Table: Estimated maximum speed-ups achievable, and the maximum with sequential, message-passing and shared-memory optimization.

Possibilities Finished and on-going experiences resource Contest Early Adopters Paral. Prog. Master Extra-cur. Contest X Subcluster X X X X X Modif. Mooshak X X X X X Problems X X X X X Programs X X Explanations X Website X X X X CUDA stuff X Planned and possible activities resource CUDA Courses Autonomous Modif. Mooshak X Problems X X X Programs X X Explanations X X Website X X CUDA stuff X X X

Used in: Early Adopters project, University of Murcia: approx. 100 students. Parallel programming courses: 2 universities, approx. 20 students. Master courses: 2 universities, approx. 10 students. Extracurricular courses Univ. Murcia+Supercomputing Centre: 10 participants. and at present in other Spanish universities in Parallel programming courses in the Degree and the Master.

Second edition At the University Miguel Hernández of Elche, Alicante, September 19-21, 2012. MPI+OpenMP and CUDA competitions. MPI+OpenMP in situ and online, CUDA only in situ. The online competition open to non Spanish teams. Inscription on the website of the contest. Deadline: June 30 (in situ), September 14 (online). Teaching For next year use of the resources in the same courses at the Universities of La Laguna and Murcia. Projected use of the problems in Parallel programming courses at other Spanish universities. Possible use of the stuff generated for the CUDA competition in other courses at the University of Murcia. Plan to use the resources in a virtual extracurricular course.

Second edition At the University Miguel Hernández of Elche, Alicante, September 19-21, 2012. MPI+OpenMP and CUDA competitions. MPI+OpenMP in situ and online, CUDA only in situ. The online competition open to non Spanish teams. Inscription on the website of the contest. Deadline: June 30 (in situ), September 14 (online). Teaching For next year use of the resources in the same courses at the Universities of La Laguna and Murcia. Projected use of the problems in Parallel programming courses at other Spanish universities. Possible use of the stuff generated for the CUDA competition in other courses at the University of Murcia. Plan to use the resources in a virtual extracurricular course.

Participation during EduPar The First Contest is temporally open (cpp.fpcmur.es). It is possible to ask for an account today by accessing the contest and creating an account in the group EduPar, with name, the e-mail address. With this account you can try to establish new records. And if you have some question about the contest or how to participate, I am at the conference until Saturday, or you can contact me at domingo@um.es. And the same... if you want to sponsor the contest.