Support our efforts, sign up to a full membership!
(Start for free)
Register or login with just your e-mail address
 Videos 

GPU programming with modern C++ - Michael Wong [ACCU 2019]

#GPU #C++ #AccuConf Parallel programming can be used to take advance of multi-core and heterogeneous architectures and can significantly increase the performance of software. It has gained a reputation for being difficult, but is it really? Modern C++ has gone a long way to making parallel programming easier and more accessible; providing both high-level and low-level abstractions. C++11 introduced the C++ memory model and standard threading library which includes threads, futures, promises, mutexes, atomics and more. C++17 takes this further by providing high level parallel algorithms; parallel implementations of many standard algorithms; and much more is expected in C++20. The introduction of the parallel algorithms also opens C++ to supporting non-CPU architectures, such as GPU, FPGAs, APUs and other accelerators. This talk will show you the fundamentals of parallelism; how to recognise when to use parallelism, how to make the best choices and common parallel patterns such as reduce, map and scan which can be used over and again. It will show you how to make use of the C++ standard threading library, but it will take this further by teaching you how to extend parallelism to heterogeneous devices, using the SYCL programming model to implement these patterns on a GPU using standard C++. --------------- Michael Wong is the Vice President of Research and Development at Codeplay Software, a Scottish company that produces compilers, debuggers, runtimes, testing systems, and other specialized tools to aid software development for heterogeneous systems, accelerators and special purpose processor architectures, including GPUs and DSPs. He is now a member of the open consortium group known as Khronos and is Chair of the C++ Heterogeneous Programming language SYCL, used for GPU dispatch in native modern C++ (14/17), OpenCL, as well as guiding the research and development teams of ComputeSuite, ComputeAorta/ComputeCPP. For twenty years, he was the Senior Technical Strategy Architect for IBM compilers. He is a member of the ISO C++ Directions Group (DG), and the Canadian Head of Delegation to the ISO C++ Standard and a past CEO of OpenMP. He is also a Director and VP of ISOCPP.org, and Chair of all Programming Languages for Canada’s Standard Council. He has so many titles, it’s a wonder he can get anything done. He chairs WG21 SG14 Games Development/Low Latency/Financial/Embedded Devices and WG21 SG5 Transactional Memory, and is the co-author of a book on C++ and a number of C++/OpenMP/Transactional Memory features including generalized attributes, user-defined literals, inheriting constructors, weakly ordered memory models, and explicit conversion operators. Having been the past C++ team lead to IBM’s XL C++ compiler means he has been messing around with designing the C++ language and C++ compilers for twenty-five years. His current research interest, i.e. what he would like to do if he had time is in the area of parallel programming, future programming models for Neural network, AI, Machine vision, safety/critical/ programming vulnerabilities, self-driving cars and low-power devices, lock-free programming, transactional memory, C++ benchmark performance, object model, generic programming and template metaprogramming. He holds a B.Sc from University of Toronto, and a Masters in Mathematics from University of Waterloo. He has been asked to speak/keynote at many conferences, companies, research centers, universities, including CPPCON, Bloomberg, U of Houston, U of Toronto, ACCU, C++Now, Meeting C++, ADC++, CASCON, Bloomberg, CERN, Barcelona Supercomputing Center, FAU Erlangen, LSU, Universidad Carlos III de Madrid, Texas A&M University, Parallel, KIT School, CGO, IWOMP/IWOCL, Code::dive, many C++ Users group meetings, Euro TM Graduate School, and Going Native. He is the current Editor for the Concurrency TS and the Transactional Memory TS. http://wongmichael.com/about ----------------- Future Conferences: ACCU 2019 Autumn Conference, Belfast (UK): 2019-11-11 and 2019-11-12. ACCU 2020 Spring Conference, Bristol (UK), Marriott City Centre: 2020-03-24 to 2020-03-28. ------------------------- ACCU Website: www.accu.org ACCU Conference Website: conference.accu.org ACCU Twitter: @ACCUConf ACCU YouTube: https://www.youtube.com/c/ACCUConf Filmed and Edited by Digital Medium Ltd - events.digital-medium.co.uk Contact: [email protected]
Top songs from around the world today


© 2001-2024
top40-charts.com (S4)
about | site map
contact | privacy
Page gen. in 0.2002261 secs // 57 () queries in 0.11181807518005 secs