[pipeline] add pipeline authoring guide + async/auto_stop doc fixes - #1578
Merged
Conversation
Add a from-scratch SPDL pipeline authoring guide (`tools/skills/authoring/building_pipelines.md`) covering stage decomposition by operation nature, concurrency budgeting, `spdl.io` for media, and multi-threading-in-subprocess for production. Its minimal example shows the build-once / re-iterate-per-epoch pattern. Clarify async stage handling in the pipeline reference docs: async functions can be passed to `.pipe()` directly and must not be wrapped in `asyncio.run()`, which only adds per-item event-loop init/finalize overhead and forces the work onto worker threads instead of running as cheap cooperative coroutines on the shared event loop. Mark `auto_stop()` as obsolete in the optimization reference docs — a `Pipeline` is built once and re-iterated each epoch without it.
Contributor
|
This pull request has been imported. If you are a Meta employee, you can view this in D110348146. (Because this pull request was imported automatically, there will not be any future comments.) |
mthrok
marked this pull request as ready for review
July 1, 2026 21:34
mthrok
added a commit
that referenced
this pull request
Jul 6, 2026
…1583) (Followup of #1578, which did not include the main guideline file.) Add a from-scratch SPDL pipeline authoring guide (`tools/skills/authoring/building_pipelines.md`) covering stage decomposition by operation nature, concurrency budgeting, `spdl.io` for media, and multi-threading-in-subprocess for production. Its minimal example shows the build-once / re-iterate-per-epoch pattern. Clarify async stage handling in the pipeline reference docs: async functions can be passed to `.pipe()` directly and must not be wrapped in `asyncio.run()`, which only adds per-item event-loop init/finalize overhead and forces the work onto worker threads instead of running as cheap cooperative coroutines on the shared event loop. Mark `auto_stop()` as obsolete in the optimization reference docs — a `Pipeline` is built once and re-iterated each epoch without it.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add a from-scratch SPDL pipeline authoring guide (
tools/skills/authoring/building_pipelines.md) covering stage decomposition by operation nature, concurrency budgeting,spdl.iofor media, and multi-threading-in-subprocess for production. Its minimal example shows the build-once / re-iterate-per-epoch pattern.Clarify async stage handling in the pipeline reference docs: async functions can be passed to
.pipe()directly and must not be wrapped inasyncio.run(), which only adds per-item event-loop init/finalize overhead and forces the work onto worker threads instead of running as cheap cooperative coroutines on the shared event loop.Mark
auto_stop()as obsolete in the optimization reference docs — aPipelineis built once and re-iterated each epoch without it.