Популярное

Музыка Кино и Анимация Автомобили Животные Спорт Путешествия Игры Юмор

Интересные видео

2025 Сериалы Трейлеры Новости Как сделать Видеоуроки Diy своими руками

Топ запросов

смотреть а4 schoolboy runaway турецкий сериал смотреть мультфильмы эдисон
dTub
Скачать

Introduction to C++ Coroutines Through a Thread Scheduling Demonstration - Dian-Lun Lin CppNow 2023

Автор: CppNow

Загружено: 2023-07-10

Просмотров: 13178

Описание:

https://www.cppnow.org​
  / cppnow  
---

An Introduction to C++ Coroutines Through a Thread Scheduling Demonstration - Dian-Lun Lin - CppNow 2023
Slides: https://github.com/boostcon
---

C++20 has finally introduced coroutines, a feature that has been eagerly awaited for years, and has already been present in several popular programming languages like Go and Python. C++ coroutines provide a mechanism for writing asynchronous, non-blocking code. A coroutine is a type of function that can be paused and resumed multiple times, allowing for multiple flows of execution to exist within a single thread. This helps to simplify asynchronous programming by providing a way to write code that appears to run concurrently, without the need for multiple threads or locks. This can also lead to more readable and maintainable code, as well as improved performance, compared to traditional approaches to asynchronous programming.

While the C++ coroutine feature is powerful, understanding how to write coroutines in C++ can be extremely difficult due to the numerous customization options available. In this session, I will go through the fundamental components of C++ coroutines and explain how coroutines can improve the performance of a CPU-GPU heterogeneous workload. Specifically, by using coroutines, we can enable efficient multitasking between CPU and GPU tasks, avoiding blocking wait on CPU threads for GPU tasks to finish. I will also talk about how to design a lightweight coroutine programming model and support it with a scheduling algorithm. Finally, I will demonstrate how our solution can improve the performance of microbenchmarks. Results will be open-source and available on GitHub.
---

Dian-Lun Lin

Dian-Lun Lin (https://dian-lun-lin.github.io/) is a fourth-year Ph.D. student at the Department of Electrical and Computer Engineering at the University of Utah. During Dian-Lun's recent three-year PhD studies, he focuses on parallel computing and GPU computing using C++ and CUDA. Dian-Lun was a presenter at the CppCon 2021. He also gave a talk at Nvidia Research and several conferences such as ICPP and Euro-Par. He received second place in ACM/PACT Student Research Competition (SRC 2022). He also received the champion award in a research competition (IEEE HPEC Challenge 2020).
---

Video Sponsors: think-cell and Bloomberg Engineering
Audience Audio Sponsors: Innoplex and Maryland Research Institute
---

Videos Filmed & Edited By Bash Films: https://bashfilms.com/
YouTube Channel Managed & Optimized By Digital Medium Ltd: https://events.digital-medium.co.uk
---

CppNow 2024
https://www.cppnow.org​
  / cppnow  
---

#boost #cppprogramming #cpp

Introduction to C++ Coroutines Through a Thread Scheduling Demonstration - Dian-Lun Lin  CppNow 2023

Поделиться в:

Доступные форматы для скачивания:

Скачать видео mp4

  • Информация по загрузке:

Скачать аудио mp3

Похожие видео

Как разрабатывать приложения с использованием C++20 coroutines, Константин Вуколов

Как разрабатывать приложения с использованием C++20 coroutines, Константин Вуколов

Deciphering C++ Coroutines - A Diagrammatic Coroutine Cheat Sheet - Andreas Weis - CppCon 2022

Deciphering C++ Coroutines - A Diagrammatic Coroutine Cheat Sheet - Andreas Weis - CppCon 2022

Как взломать любое программное обеспечение

Как взломать любое программное обеспечение

Законодательное ограничение C++

Законодательное ограничение C++

4 Reasons C++ Still BEATS Rust (The Technical Reality)

4 Reasons C++ Still BEATS Rust (The Technical Reality)

Bjarne Stroustrup - The Essence of C++

Bjarne Stroustrup - The Essence of C++

C++20’s Coroutines for Beginners - Andreas Fertig - CppCon 2022

C++20’s Coroutines for Beginners - Andreas Fertig - CppCon 2022

C++ Coroutine Intuition - Roi Barkan - CppNow 2023

C++ Coroutine Intuition - Roi Barkan - CppNow 2023

Dependency Injection in C++ - A Practical Guide - Peter Muldoon - C++Now 2024

Dependency Injection in C++ - A Practical Guide - Peter Muldoon - C++Now 2024

C++23: An Overview of Almost All New and Updated Features - Marc Gregoire - CppCon 2023

C++23: An Overview of Almost All New and Updated Features - Marc Gregoire - CppCon 2023

C++ Memory Model: from C++11 to C++23 - Alex Dathskovsky - CppCon 2023

C++ Memory Model: from C++11 to C++23 - Alex Dathskovsky - CppCon 2023

Assembly, System Calls, and Hardware in C++ - David Sankel - CppNow 2023

Assembly, System Calls, and Hardware in C++ - David Sankel - CppNow 2023

Создайте свое первое многопоточное приложение — Введение в многопоточность в современном C++

Создайте свое первое многопоточное приложение — Введение в многопоточность в современном C++

Introduction to C++ Coroutines and gRPC and How to Write Coroutine Support Code - Jonathan Storey

Introduction to C++ Coroutines and gRPC and How to Write Coroutine Support Code - Jonathan Storey

What I learned from sockets - Filipp Gelman - Meeting C++ 2023

What I learned from sockets - Filipp Gelman - Meeting C++ 2023

Будет ли встраиваемые системы по-прежнему привлекательной карьерой в 2026 году?

Будет ли встраиваемые системы по-прежнему привлекательной карьерой в 2026 году?

Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022

Concurrency in C++: A Programmer’s Overview (part 1 of 2) - Fedor Pikus - CppNow 2022

2016 LLVM Developers’ Meeting: G. Nishanov “LLVM Coroutines”

2016 LLVM Developers’ Meeting: G. Nishanov “LLVM Coroutines”

«Что такое сопрограмма?» — Джон Риз (North Bay Python 2019)

«Что такое сопрограмма?» — Джон Риз (North Bay Python 2019)

Почему Rust НИКОГДА не заменит C++

Почему Rust НИКОГДА не заменит C++

© 2025 dtub. Все права защищены.



  • Контакты
  • О нас
  • Политика конфиденциальности



Контакты для правообладателей: [email protected]