YoVDO

RaftLib - Simpler Parallel Programming

Offered By: CppNow via YouTube

Tags

C++Now Courses C++ Courses CUDA Courses Parallel Programming Courses OpenCL Courses Memory Allocation Courses

Course Description

Overview

Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the complexities of parallel programming and learn about RaftLib, a C++ template library designed to simplify multicore and heterogeneous computing, in this comprehensive conference talk from C++Now 2017. Dive into the challenges of modern hardware complexity, including multiple core types, memory types, and link types, and discover how RaftLib abstracts away these complexities. Gain insights into writing performant parallel applications using familiar stream operator semantics to link multiple parallel actors. Understand how RaftLib enables code execution across multiple processes, threads, and distributed nodes without the need to learn numerous complex interfaces. Walk through the pitfalls of parallel programming, examine RaftLib as a solution, and learn how to use it effectively. Cover topics such as memory folding, productivity improvements, boilerplate code reduction, virtual memory handling, and stream manipulation operators. Benefit from Jonathan Beard's expertise in computer architecture research and his focus on next-generation architectures for Big Data beyond exascale.

Syllabus

Intro
What isRaftLib
Motivation
Memory Folding
ML Programming
Motivation 1 Productivity
Motivation 2 boilerplate code
Motivation 3 Parallel programming
Productivity example
Why did you do a library
Hei adoption
Code example
Virtual Memory
Wrapped Loop Kernel
RaftLib Overview
Injected State
Autopipe
VHDL
OpenCL CUDA
Key Encapsulation
Scheduler
State Capsulation
Split Joints
Barriers
More complicated example
Stream manipulation
Highlevel details
Stream manipulation operators
Finding the library
Memory allocation
Buffer sizes
Allocation


Taught by

CppNow

Related Courses

Computer Graphics
University of California, San Diego via edX
Intro to Parallel Programming
Nvidia via Udacity
Initiation à la programmation (en C++)
École Polytechnique Fédérale de Lausanne via Coursera
C++ For C Programmers, Part A
University of California, Santa Cruz via Coursera
Introduction à la programmation orientée objet (en C++)
École Polytechnique Fédérale de Lausanne via Coursera