How to achieve execution agent local variable?
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 25/100
- Issue 类型
- 功能
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- cpp
调研方向
首先审查 P2300 的 execution-agent model,以及 stdexec 如何表示 scheduler 或 execution context。将提议的 concurrency-count 和 current-execution-id 查询与 per-thread random-generator 用例进行比较。要视为完成,需要 maintainer 作出决定,或记录一种受支持的设计;这仍然是一个尚未解答的设计问题。
由索引模型根据 Issue 内容生成。
描述
Sometimes we need some variables to be execution agent local. Taking a use-case of parallel random number generation. If I want random number generator to be non-blocking for multiple threads, then each thread should have a separate copy of random generator.
For example, in case of a thread pool scheduler a thread_local random generator can be used. But that's not a generic solution.
I don't know how to handle the same with P2300. Is there some way to handle this kind of use-case?
I feel the use-case can be solved if I have 2 queries:
- Maximum number of tasks that can be executed concurrently at any moment of time. (can be unbounded too)
- Let's say the above query returns n. Then a query like current_execution_id that returns [0, n) representing on which execution agent task is currently at.
- 主要语言
- C++
- 星标
- 2.4k
- 派生
- 270
- 平均合并
- 2 天 16 小时
- 30 天内合并 PR
- 43
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
NVIDIA/stdexec 的其他 Issue
-
inline_scheduler's namespace-scope static_assert fails under nvcc (private nested __sender access) 未关闭
难度 2/5 1-3 小时 新手友好度 65/100
-
难度 2/5 1-3 小时 新手友好度 68/100
-
难度 4/5 3-5 天 新手友好度 45/100
-
难度 4/5 3-5 天 新手友好度 48/100
-
难度 4/5 3-5 天 新手友好度 65/100
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 75/100
flutter-webrtc/flutter-webrtc#2206 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
Component: GLib
难度 2/5 1-3 小时 新手友好度 70/100
-
Mute ydb/tests/functional/dstool/test_canonical_requests.py.Test.test_group_take_snapshot in main 未关闭ai_reviewed
难度 2/5 1-3 小时 新手友好度 70/100
ydb-platform/ydb#53974 · 3 条评论 ·
-
难度 2/5 1-3 小时 新手友好度 70/100
google/libultrahdr#485 ·