Does myelin of Tensorrt synchronize the multi-streams?
@zerollzeng is already working on this.
Since Mar 7, 2023.
- Dominant language
- C++
- Stars
- 13.4k
- Forks
- 2.4k
- Avg merge
- 5d 3h
- Merged PRs (30d)
- 2
Description
Description
I try to utilize multi-streams (e.g 4 stream) to overlap the H2D, compute and D2H time.
However, there are gaps between each multi-streams as shown in profile.
It seems that the myelin graph synchronize the streams of the D2H stage or something else,
and thus degrade the pipeline of the multi-streams.
PS: We user Gather op in the graph, dose this op make the difference?

Specifically, there are 4 meylinGraphExecute in different streams, but it seems that the meylinGraphUnload are done in the same stream, which synchronize the 4 streams. As there are not document of myelin, could you please provide some information of the mechanism of the myelinGraphExecute in multi-stream, with Gathrer op. Thanks very much!!!


Environment
TensorRT Version: 8.4.3
NVIDIA GPU: Tesla T4
NVIDIA Driver Version: 460.73.01
CUDA Version: 11.6
CUDNN Version:
Operating System: Ubuntu 20.04
ONNX opset: 13
Python Version (if applicable):
Tensorflow Version (if applicable):
PyTorch Version (if applicable):
Baremetal or Container (if so, version):
Relevant Files
Steps To Reproduce
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.