PRE-REQUISITE No prior knowledge on GPGPU programming or CUDA is not required, but participants should have working knowledge on C/C++ programming language. *IMPORTANT: All participants are recommended to bring along laptop/notebook for hands-on session, preferably with GPU card and installed with at least CUDA4.2 SDK.
SUITABLE FOR Software Development Managers, Software Engineers, Developers, Requirements Analysts Test Managers, Test Engineers, Testers.
Requirements
Engineers,
PUSAT PENGAJIAN SAINS KOMPUTER SCHOOL OF COMPUTER SCIENCES Dates
: 7 & 8 April 2014 (Monday & Tuesday).
HRDF Claimable* *Subject to HRDF Approval
Time
: 9:00 a.m. – 5:00 p.m.
Venue
: School of Computer Science, Universiti Sains Malaysia, Penang.
COURSE FEE
in collaboration with:
(Covers course materials, refreshment including lunches and Certificate of Attendance)
MYR 1,400.00 per participant GROUP: MYR 1,250.00 per participant
(Minimum 3 participants from the same company / organisation)
STUDENT: MYR 1,000.00 per participant
(Proof of I.D. is compulsory) (Not entitled for group discount)
(wholly-owned by Universiti Sains Malaysia) (Co. No. 473883-H)
INTRODUCTION GPGPUs have recently been utilized in various domains, including high performance computing and computational finance targeted for numerous end applications. They can be regarded as massively parallel processors with multiple-time faster computation and higher memory bandwidth compared to CPU. The speed up and lower cost from this system means that business critical computation can be performed in real-time and not rely on overnight computation jobs for data analysis. This course will cover in-depth topics of both GPU architecture and CUDA Programming models. It also includes basic and advance techniques of CUDA programming for NVIDIA GPGPU cards with profiling methods discussed. This will lead to using CUDA and integrate it with your system to achieve the best performance by utilizing the ultra-speed big data processing. LEARNING OUTCOMES Upon completion, participants should be able to demonstrate each of the following: i. Understand the technique of utilizing GPGPU architecture in your own system ii. Ability to program CUDA and understand parallel programming. COURSE METHODOLOGY This Course will utilize a combination of lecture, discussions, role-playing, and practice/ hands-on session and group discussion. SYSTEM REQUIREMENT 1. CUDA-CAPABLE GPU Refer to https://developer.nvidia.com/cuda-gpus 2. OPERATING SYSTEM: Microsoft Windows XP, Vista, 7, or 8 or Windows Server 2003 or 2008 Linux (Fedora 16, RHEL 5.x/6.x, Ubuntu 11.10/10.04, OpenSuse Server SP1/SP2 MAC OS X 3. NVIDIA CUDA TOOLKIT (available at no cost from): https://developer.nvidia.com/cuda-downloads 4. MICROSOFT VISUAL STUDIO 2008 or 2010, or a corresponding version of Microsoft Visual C++ Express. ENQUIRIES Technical : Dr. Nurul Hashimah Ahamed Hassain Malim School of Computer Sciences Universiti Sains Malaysia, Penang. (T) : +604–653 4645 (M) : +6019–313 1449 (E) :
[email protected]
Registration and others: Khairol Anuar Hazir Mohammed USAINS Holding Sdn. Bhd. (DL) : +604–653 4372 (M) : +6012–286 9048 (E) :
[email protected] /
[email protected] INSTRUCTOR PROFILE
DR. ETTIKAN KK Dr. Ettikan KK, holds a Ph.D (in the area of Distributed Computing), MSc. and BSc. (in Computer Science) is currently attached to MIMOS Bhd, Accelerative Technologies Laboratory of ICT Division as the Principal Researcher. With more than 18 years of industrial experiences with leading MNC companies, encompasses different Lead capacity roles in the areas of organization, division level Research Definition & Management, Team Leadership in Software Architecture, Design Architecture, Solution Architecture, direct technical and research experiences (in embedded software engineering) that produces world marketable R&D products with rapid results into commercialisation. His current research activities are in the area of Network Protocols, GP/GPU, FPGA, Many/Multicores, Distributed Computing, P2P, AV, QoS, BI (Business Intelligence in Data Processing, BigData Analytics, Algorithm Design/Optimization and System Performance Acceleration). During this period he was instrumental and lead in establishing a “GPU R&D and Compute Solution Centre” (http://gpu.mimos.my) jointly funded and governed by Nvidia, HP and MIMOS, serving as the centre of GPGPU related R&D activities by collaborating with international companies, universities and industry partners.
KK YONG KK Yong joins MIMOS Berhad as a staff engineer in the parallel computing research and development team. He is responsible for the applied research and the application development to the real world large data processing issues, analyse the existing algorithms and identify the possible parallelization by implementing and optimising algorithms through GPU CUDA a programming. He has a spent of over 15 years in software development, started developing a system from the scratch, performing tests, and deploying to the customers. Those client and server based applications communicating with both thick client, embedded system and worked for various commercial projects, including active and passive RFID solution, Biometric Devices, Set-top Box, Switch, Router, Door Access System, Time Attendance System, Asset Tracking System and Guard Tour System. He has the strong knowledge on .Net (PC based software) agile development and C/C++ in embedded Linux. In addition, he uses Microsoft SQL and SQLite for the database implementation. Also, he was a certified process-based approach for project management. He has wide project/people management experience from the above mentioned projects. He holds a Master Degree in Interactive Multimedia, with a Bachelor of Science (Hons) degree in Information Technology and Business Information System. His research area is NLP (Natural Language Processing), Software Engineering, Parallel Processing and has published and present papers in International conferences.
INTRODUCTION TO GPGPU AND PARALLEL COMPUTING (GPU Architecture and CUDA Programming Models)
Course Contents and Tentative Schedule DAY 1 - INTRODUCTION TO CUDA PROGRAMMING TIME
TOPIC
9:30 – 10:30 a.m.
1. 2.
10:30 – 11.00 a.m.
Notion of parallel Computing with GPUs, From GPUs to GPGPUs Introduction to CUDA Architecture
Break
11.00 a.m. – 12:30 p.m.
12:30 – 2.00 p.m.
3. 4.
Getting your system ready with CUDA Hands-on: Compiling and Executing Hello World First Kernel
Lunch
2:00 – 3:30 p.m.
5. 6.
3:30 – 4:00 p.m.
CUDA Programming Model Hands-on: Working on CUDA Kernels
Break
4:00 – 5:00 p.m.
7. 8.
CUDA Memory Model Hands-on: CUDA Thread Operation
DAY 2 - SHARED MEMORY AND DEBUGGING TOOLS 9:30 – 10:30 a.m. 10:30 – 11.00 a.m. 11.00 a.m. – 12:30 p.m.
12:30 – 2.00 p.m. 2:00 – 3:30 p.m.
3:30 – 4:00 p.m. 4:00 – 5:00 p.m.
9.
Shared Memory with Asynchronous operation
Break 10. Hands–on: Matrix Multiplication & Reversed Array 11. CUDA API and Debugging
Lunch 12. Knowing about Tools: Visual Profiler, Parallel Nsight, cuda-gdb 13. CUDA enabled Libraries – Thrust
Break 14. Hands-on: Thrust Exercises
Disclaimer The Organizer reserves the right to reschedule or cancel any part of its published programme or venue due to unforeseen circumstances and will not accept liability for costs incurred by participants or their organizations for the cancellation of travel arrangements and/or accommodation reservations because of the course being cancelled or postponed. Advance notice will be given if there is such a change or cancellation.
REGISTRATION FORM
INTRODUCTION TO GPGPU AND PARALLEL COMPUTING (GPU Architecture and CUDA Programming Models) Send registration form to : Khairol Anuar, USAINS Holding Sdn. Bhd., Ground Floor, Kompleks ЄUREKA, Universiti Sains Malaysia, 11800 USM PENANG. Fax : 04-657 2210 OR Email to :
[email protected] /
[email protected] /
[email protected] NO.
PARTICIPANT NAME
EMAIL
1. 2. 3. 4. 5. Company / Organisation: Address:
Postcode: Contact Person:
E-mail:
Tel No:
Fax No:
MODE OF PAYMENT I enclosed
NUMBER
Mobile No: BANK
NO. OF PARTICIPANT
Cheque
Normal
Bank Draft
Group
Money Order
Student
LO / PO
MYR
Total
Cheque / Bank Draft / Money Order / LO / PO must be made payable to ‘USAINS HOLDING SDN. BHD.’. 1. Bank Transfer [Please fax your Bank-in Slip (Print your name & details on the slip)].
Payee Name Details Name of Bank Account Number
: USAINS Holding Sdn. Bhd. : INTRODUCTION TO GPGPU AND PARALLEL COMPUTING : CIMB Bank Berhad (USM Branch), Universiti Sains Malaysia, 11800 USM Penang. : 0709-0006708-05-7
2. A Local Order (LO) or Purchase Order (PO) must be presented before the event. The Organizer reserves the right to refrain a registered participant from taking part in the event if no proof of payment can be presented. This only applies to registered participants who have NOT paid the registration fee PRIOR to the event date. 3. Cancellation / Substitution A refund less administration fee of MYR400.00 will be given for cancellations received at least 10 working days before the start date of the course. No refund will be made after this period. However, substitute participants are welcome at no extra charge if a written notice of at least 5 working days before the event is given to the Organizer.