-
Notifications
You must be signed in to change notification settings - Fork 93
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
feature(artifact_test): testing the output of perftune.py #8788
base: master
Are you sure you want to change the base?
Conversation
|
cb8795c
to
c0e089a
Compare
1adc58d
to
84b9a41
Compare
perftune.py is a script within seastar (which is a part of scylla_setup) that configures several system parameters, like the amount of CPU cores that are designated to handle IRQ, and which are not. I have recorded the expected results as of master 20230717.567b4536892f in defaults/perftune_results.json, and the test will compare them to the output of the script. Ref: scylladb/scylla-enterprise#2909
84b9a41
to
f1fac7c
Compare
self.architecture = architecture | ||
self.expected_compute_bits: int = 0 | ||
|
||
match number_of_cpu_cores: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
here's the new logic, it's just maps to how many irq cpus we expect.
self.compare_cpu_mask() | ||
self.compare_irq_cpu_mask() | ||
if not self.node.is_nonroot_install: | ||
# The following checks are not applicable for non-root installations, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know if it's intended or not, but non-root installs doesn't call perftune at all.
@roydahan have you seen this one ? |
self.expected_irq_bits: int = 2 | ||
case 16: | ||
if self.architecture == "aarch64": | ||
self.expected_irq_bits: int = 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@vladzcloudius isn't this a bug?
Why would we set only 1 core for irq in arm?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it's a good opportunity to verify defaults shipped with AMI? Could be in followup too if we want it.
try: | ||
self.compare_cpu_mask() | ||
self.compare_irq_cpu_mask() | ||
if not self.node.is_nonroot_install: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could return here to drop nesting.
defaults you mean the content of |
yes, how much we differ from that - shouldn't be much (what is much I don't know yet) |
perftune.py is a script within seastar (which is a part of scylla_setup) that configures several system parameters, like the amount of CPU cores that are designated to handle IRQ, and which are not.
Ref: https:/scylladb/scylla-enterprise/issues/2909
Replacement of #6192
Testing
PR pre-checks (self review)
backport
labelsReminders
sdcm/sct_config.py
)unit-test/
folder)