-
Notifications
You must be signed in to change notification settings - Fork 275
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat engine: reduce contention in coro::Pool
Part 2/2 of the efforts to reduce contention in `TaskProcessor` Uses thread-local `Coroutine` cache and bulk push-pop to reduce contention on global `coro::Pool` coroutine stack queue. Before: ``` Benchmark Time CPU Iterations ------------------------------------------------------------------------------------ engine_multiple_tasks_multiple_threads/1 480 ns 480 ns 15230177 engine_multiple_tasks_multiple_threads/2 721 ns 721 ns 9664295 engine_multiple_tasks_multiple_threads/4 1036 ns 1036 ns 6668418 engine_multiple_tasks_multiple_threads/6 1406 ns 1406 ns 5204157 ``` After: ``` Benchmark Time CPU Iterations ------------------------------------------------------------------------------------ engine_multiple_tasks_multiple_threads/1 440 ns 440 ns 15851717 engine_multiple_tasks_multiple_threads/2 590 ns 589 ns 11844265 engine_multiple_tasks_multiple_threads/4 838 ns 838 ns 8269024 engine_multiple_tasks_multiple_threads/6 1249 ns 1249 ns 5681120 ``` 7fb381685354e92514a20aff7d41c808ccea8cac Pull Request resolved: #584
- Loading branch information
1 parent
bbe9f5d
commit f392f6b
Showing
10 changed files
with
152 additions
and
11 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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