Skip to main navigation Skip to search Skip to main content

Using C++ Generators in Dataflow Broadcast

  • University of Tennessee
  • Virginia Polytechnic Institute and State University
  • NVIDIA

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Template Task Graph TTG) is a multiparadigm programming model built from task flowgraphs. Each task in TTG produces data for a single consumer (send) or multiple consumers (broadcast), possibly along multiple flowgraph edges. Until now identifiers of broadcast consumers had to be encoded as explicit dynamically-computed sequences, which is crucial for composing data-dependent algorithms. In this work, we split the task discovery from the main task body and introduce the use of generators available since C++23 to generate the successor list. This improves composability by allowing us to implement multiple broadcast strategies using the on-demand key generation.

Original languageEnglish
Title of host publicationAsynchronous Many-Task Systems and Applications - 4th International Workshop, WAMTA 2026, Proceedings
EditorsPatrick Diehl, Markus Rampp, Erwin Laure, Martin Schulz
PublisherSpringer Science and Business Media Deutschland GmbH
Pages161-171
Number of pages11
ISBN (Print)9783032276759
DOIs
StatePublished - 2026
Event4th International Workshop on Asynchronous Many-Task Systems and Applications, WAMTA 2026 - Hybrid, Garching, Germany
Duration: Feb 16 2026Feb 18 2026

Publication series

NameLecture Notes in Computer Science
Volume16592 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference4th International Workshop on Asynchronous Many-Task Systems and Applications, WAMTA 2026
Country/TerritoryGermany
CityHybrid, Garching
Period02/16/2602/18/26

Keywords

  • Data-Flow
  • Multiresolution Analysis
  • Task Based Programming
  • Template Task Graphs

Fingerprint

Dive into the research topics of 'Using C++ Generators in Dataflow Broadcast'. Together they form a unique fingerprint.

Cite this