-
Notifications
You must be signed in to change notification settings - Fork 73
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
[PH] thread count recommendation tests #510
Merged
oschwaldp-oci
merged 12 commits into
feature_performance_harness_stage_2
from
ph-thread-count-tests
Nov 30, 2022
Merged
[PH] thread count recommendation tests #510
oschwaldp-oci
merged 12 commits into
feature_performance_harness_stage_2
from
ph-thread-count-tests
Nov 30, 2022
Conversation
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
Also renaming to use Ptb abbreviation in light of the name change.
Using PtbConfig and LoggingConfig objects simplifies test initializer params and encapsulates related config items into an object describing their use. It also allows easy reporting of test configuration in test report and will allow reporting to come for free if additional config arguments are added. Some renaming for efficiency and clarity.
Break out config and logging classes. Update documentation.
…thread pool size. Each plugin's option determines whether to calculate number of worker threads to use in the thread pool with options of: 'none', 'lmax', or 'full'. In 'none' mode, the default, no calculation will be attempted and default configured thread count will be used. In 'lmax' mode, thread count will incrementally be tested until the performance rate ceases to increase with the addition of subsequent threads. In 'full' mode thread count will incrementally be tested from 2..num logical processors, recording each performance and choosing the local max performance (same value as would be discovered in 'lmax' mode). Useful for graphing the full performance impact of each available thread. Added log directory to collect results of thread optimization calculations. Added option to opt out of running the tps test. Updated README for new options and to show the updates to the result reports.
…d on performance run calculations.
oschwaldp-oci
changed the title
[PH] thread count tests
[PH] thread count recommendation tests
Nov 23, 2022
heifner
approved these changes
Nov 23, 2022
jgiszczak
suggested changes
Nov 29, 2022
jgiszczak
reviewed
Nov 30, 2022
jgiszczak
reviewed
Nov 30, 2022
jgiszczak
approved these changes
Nov 30, 2022
cmadh
pushed a commit
to cmadh/leap
that referenced
this pull request
Jan 2, 2023
…ustive_snapshot [3.2] Add a second account and action to test_exhaustive_snapshot
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.
Develop performance tests to establish thread count recommendations (net, chain, producer)
Add options to calculate recommended producer, chain, and net worker thread pool size.
Each plugin's option determines whether to calculate number of worker threads to use in the thread pool with options of:
none
,lmax
, orfull
. Innone
mode, the default, no calculation will be attempted and default configured thread count will be used. Inlmax
mode, thread count will incrementally be tested until the performance rate ceases to increase with the addition of subsequent threads. Infull
mode thread count will incrementally be tested from 2..num logical processors, recording each performance and choosing the local max performance (same value as would be discovered inlmax
mode). Useful for graphing the full performance impact of each available thread.New Arguments
--calc-producer-threads {none,lmax,full}
Determines whether to calculate number of worker threads to use in producer thread pool ("none", "lmax", or "full").
In "none" mode, the default, no calculation will be attempted and default configured --producer-threads value will be used.
In "lmax" mode, producer threads will incrementally be tested until the performance rate ceases to increase with the addition of additional threads.
In "full" mode producer threads will incrementally be tested from 2..num logical processors, recording each performance and choosing the local max performance (same value as would be discovered in "lmax" mode). Useful for graphing the full performance impact of each available thread. (default: none)
--calc-chain-threads {none,lmax,full}
Determines whether to calculate number of worker threads to use in chain thread pool ("none", "lmax", or "full").
In "none" mode, the default, no calculation will be attempted and default configured --chain-threads value will be used.
In "lmax" mode, producer threads will incrementally be tested until the performance rate ceases to increase with the addition of additional threads.
In "full" mode producer threads will incrementally be tested from 2..num logical processors, recording each performance and choosing the local max performance (same value as would be discovered in "lmax" mode). Useful for graphing the full performance impact of each available thread. (default: none)
--calc-net-threads {none,lmax,full}
Determines whether to calculate number of worker threads to use in net thread pool ("none", "lmax", or "full").
In "none" mode, the default, no calculation will be attempted and default configured --net-threads value will be used.
In "lmax" mode, producer threads will incrementally be tested until the performance rate ceases to increase with the addition of additional threads.
In "full" mode producer threads will incrementally be tested from 2..num logical processors, recording each performance and choosing the local max performance (same value as would be discovered in "lmax" mode). Useful for graphing the full performance impact of each available thread. (default: none)
Added option to opt out of running the tps test.
--skip-tps-test
Determines whether to skip the max TPS measurement tests (default: False)Updated thread configurations based on test recommendations
--producer-threads PRODUCER_THREADS
Number of worker threads in producer thread pool (default: 6)
--chain-threads CHAIN_THREADS
Number of worker threads in controller thread pool (default: 3)