gpgpu programming courses: getting the word out to the test and evaluation community itea technical...
TRANSCRIPT
GPGPU Programming Courses: Getting the Word Out to the
Test and Evaluation Community
ITEA Technical Review:Cyber Security
21 July 2010Gene Wagenbreth for Robert F. Lucas, D.M. Davis and K-T. Yao { genew, rflucas, ddavis, kyao }@isi.edu
Outline
Why Might T&E Professionals use GPGPU Technology
ISI’s Experience in Using ItTeaching Courses to Various
GroupsLessons Learned Analyzing Needs and Capabilities
GPGPUs and T&E
T&E can effectively use more computing that it isAn approach to reducing costs, time and physical
danger, is to adopt heterogeneous computing. Heterogeneous computing aids the CPUs, using:
General Purpose Graphics Processing Units (GPGPUs)Field Programmable Gate Arrays (FPGAs)Digital Signals Processors (DSPs)Sony/ Toshiba/IBM (STI) Cell processors
There is a growing body of evidence on the benefits of using these devices
This talk will concentrate on GPGPUs
GPU Architecture
Multiple SIMD cores
MultithreadedO(1000) per
GPU
Banked shared memory
32 Kbytes Tesla48 Kbytes
Fermi
Simple thread modelOnly sync at
host
Courtesy NVIDIA
Why GPUs?
●GPU performance can be 100X hosts• Don’t forget Prof. Gene Amdahl, 2-3X
typical• This differential is expected to grow
●Early Simulation work (UNC & SAIC)• Line of Sight• Route Finding• Collision Detection• Sparse Matrix Factorization (see RFLucas
paper)
●ISI verified they’re also bottlenecks in SAFs
●New ideas for use in sensor scenario creation for new multi-spectral sensors
CUDA TrainingPET Courses
●Dr. David Pratt conceived and organized • HPCMP FAPOC for FMS
●Location & Dates: • SAIC facility Suffolk VA, 23 - 25 October
2007• ISI Marina del Rey 21- 23 October 2008• UCSD San Diego 5 – 6 March 2009
●Attendees: total ~ 60 HPCMP users●Also taught at USC as part of Parallel
Programming Class
Course Materials are On-Line
Course was very well received by participantsAll completed the courseLast session devolved into a very spirited discussion of
possible usesMaterials are on-lineURL for .pdf presentations slides:http://www.isi.edu/~ddavis/GPU/Course/Slides/GPU+CUDA.pdf80% participants completed surveyRankings all quite high
West Coast Class in Preparation for this Fall
Success of class in Suffolk encouragingHigh attendance Good reviews Introduced HPC to many new programmersLots of requests to repeat
Considered West Coast eventMany HPC users in San Diego, L.A., Monterey, Bay areaNext event at SPAWAR San Diego or ISI Marina del ReyProbably in late September early October, 2 – 3 daysContact Dan Davis [email protected] 310 448-8434 or
watch URL http://www.isi.edu/~ddavis/GPGPU/Course2
Practicum and Programming Sessions
Gene Wagenbreth gives programming
exercises
Patrick Legresley helps with
implementation
Very Early Programming
Trained ISI staff with Sparse Matrix SolverAlso Looked at line-of-sight
Looks promisingRarely peaks in way GPGPUs necessaryPeaks do drive overall performanceSeeking optimum approach to final programming model
Initiating work on router planningEarly results encouragingMay have broad application
Lessons Learned
Three distinct ways of looking at teachingGeneral Classrooms SettingFocused Instruction
with LabsPracticum with
Follow-up Assistance
Pros and Cons to each
General Classrooms Setting
Didactic approachEasy to prepare for, like reading a
scriptGeneral coveragePros
Covers wide areas of interest to programmerFormal and organized
ConsMisses the markSpend time on issues that won’t be used
Focused Instruction with Labs
Lecture some; practice someGets hands on experience Pros
Keeps interest upSpot weaknesses of students
ConsUneven advancement of different
studentsNeeds more than one teacher
Practicum with Follow-up AssistanceLittle lecturing
Almost immediate hands onHelp-desk-like support laterPros
Focus on areas to be usedNot spend time covering material
understood
ConsMay not get good coverage of materialSome students may be lost
Finding the Right Approach
Each situation differentAnalyze what you are doingConsider your people carefullyPick approach you
Can supportFeel your people we acceptThink will meet your goals
Analyzing Needs and Capabilities
First look at your goalsCode productionMorale builderProfessional studies
Second, consider contraintsTimeFunding Production Schedule
The Instructor’s Characteristics
Useful qualificationsParallel programming experienceExcellent communicatorStrong egoComfortable with groups
Also instructor needsA couple of months to master CUDAAssistance in hands on tutoring
Different Student Types
Student shouldBe journeyman programmersKnow C, as CUDA has a C-like “feel”Have some dedicated time freeWant to learn CUDA
TypesEager learnersSelf taught CUDA “exerts”Foot dragging, sour pusses
Assessing the Impact
Evaluation sheet at end of courseCareful logging of requests for
help Follow up with supervisorsQuestionnaire after working with
CUDA for six monthsOn-line survey as to usage
Evangelizing and Building a Community
Training does more than just establish skill level in students
Acts to inform students and their communities as to benefits of GPGPU programming
Establish Birds of a Feather sessions at conferences
Encourage papers and web sites.
Resources and Classes
Slides from ISI Coursehttp://www.isi.edu/~ddavis/rfl/CS503-GPU.ppt
CUDA Downloadshttp://developer.nvidia.com/object/cuda_3_1_downloads.html
CUDA Manualhttp://developer.download.nvidia.com/compute/cuda/3_1/toolkit/docs/CudaReferenceManual.pdf
Conclusions
GPGPUs are an important potential benefit to T&ECUDA makes this use feasibleTraining will both inform and motivate adoptionTrainers need to be carefully selectedStudents easily pick up conceptsEvaluation later will identify those who are
inclined to this kind of effortLongevity of this technique will be sufficient to
justify training, beyond that is up the fate
This material is based on research sponsored by the U.S. Joint Forces Command via a contract with the Lockheed Martin Corporation and SimIS, Inc., and on research sponsored by the Air Force Research Laboratory under agreement numbers F30602-02-C-0213 and FA8750-05-2-0204. The U.S. Government is authorized to reproduce and distribute reprints for Governmental purposes notwithstanding any copyright notation thereon. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of the U.S. Government. Approved for public release; distribution is unlimited.
Research Funded by JFCOM and AFRL