-
Notifications
You must be signed in to change notification settings - Fork 409
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The execution time in pipeline
mode is distortion sometimes
#9489
Comments
pipeline
mode is distortion sometimes
After some investigations, I don't find obviously bugs that is releated to the executor's execution time. One possible cause of this distortion seems to be in tiflash/dbms/src/Flash/Pipeline/Exec/PipelineExec.cpp Lines 237 to 250 in 69dd613
It evenly distributes the task queue time to all the operators. In this specific case, the TiDB's executor tree is In pipemode, the executor tree is converted to a pipeline task that looks like SourceOp(TableScan)=>FilterTransformOp=>ExpressionTransformOp(Selection)=>ExpressionTransformOp=>ExpressionTransfromOp(Projection)=>SinkOp(Aggregation) The concurrency is 8. Although still not the same as pull mode, the results is much better than the original one. Actually, the output of |
Change this to an enhancement |
…mmary (#9566) close #9489 Signed-off-by: yibin <[email protected]> Co-authored-by: ti-chi-bot[bot] <108142056+ti-chi-bot[bot]@users.noreply.github.com>
…mmary (#9566) (#9612) close #9489 Signed-off-by: yibin <[email protected]> Signed-off-by: yibin <[email protected]> Co-authored-by: yibin <[email protected]> Co-authored-by: yibin <[email protected]>
Bug Report
Please answer these questions before submitting your issue. Thanks!
Running the same query in pipeline mode and pull mode, the overall query peformance is almost the same, but the execution time for each executor differs a lot between pipeline mode and pull mode
In pipeline mode
HashAgg: 2.23s
Projection: 2.71s
Selection: 1.75s
Cpu flame graph
And in pull mode
HashAgg: 4.4s
Projection: 2.8s
Selection: 0.26s
Cpu flame graph
And compared with cpu flame graph, the executor time in pull mode is much more reasonable.
1. Minimal reproduce step (Required)
2. What did you expect to see? (Required)
3. What did you see instead (Required)
4. What is your TiFlash version? (Required)
The text was updated successfully, but these errors were encountered: