Skip to content
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

serde: Add node_health_report ser/de benchmark #16656

Merged
merged 1 commit into from
Feb 26, 2024

Conversation

StephanDollberg
Copy link
Member

@StephanDollberg StephanDollberg commented Feb 21, 2024

Adds a benchmark for node_health_report de-serialization across the
topic and partitions dimensions.

test iterations median mad min max allocs tasks inst
node_health_report.serialize_many_partitions 824 1.040ms 3.470us 1.036ms 1.068ms 66.000 0.000 23326378.6
node_health_report.serialize_many_topics 214 2.865ms 510.776ns 2.865ms 2.870ms 90.000 0.000 55992409.2
node_health_report.serialize_many_topics_replicated_partitions 143 5.004ms 6.824us 4.995ms 5.014ms 158.000 0.000 101505687.9
node_health_report.deserialize_many_partitions 362 1.483ms 903.525ns 1.481ms 1.484ms 6258.000 0.000 42209025.2
node_health_report.deserialize_many_topics 113 3.552ms 629.637ns 3.550ms 3.558ms 50398.000 0.000 84158327.6
node_health_report.deserialize_many_topics_replicated_partitions 70 6.474ms 3.465us 6.468ms 6.489ms 50398.000 0.000 167368490.8

Backports Required

  • none - not a bug fix
  • none - this is a backport
  • none - issue does not exist in previous branches
  • none - papercut/not impactful enough to backport
  • v23.3.x
  • v23.2.x
  • v23.1.x

Release Notes

  • none

@vbotbuildovich
Copy link
Collaborator

return hr;
}

__attribute__((noinline)) void do_bench_serialize_node_health_report(
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

note: I think [[gnu::noinline]] is preferred today

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

travisdowns
travisdowns previously approved these changes Feb 22, 2024
Copy link
Member

@travisdowns travisdowns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome, LGTM!

Adds a benchmark for `node_health_report` de-serialization across the
topic and partitions dimensions.

| test                                           |  iterations |      median |         mad |         min |         max |      allocs |       tasks |        inst |
| -                                              |           - |           - |           - |           - |           - |           - |           - |           - |
| node_health_report.serialize_many_partitions   |         830 |     1.041ms |   536.095ns |     1.040ms |     1.043ms |      66.000 |       0.000 |  23326375.0 |
| node_health_report.serialize_many_topics       |         211 |     2.823ms |     2.239us |     2.821ms |     2.828ms |      90.000 |       0.000 |  55992429.7 |
| node_health_report.deserialize_many_partitions |         365 |     1.490ms |   261.786ns |     1.490ms |     1.491ms |    6258.000 |       0.000 |  42209042.8 |
| node_health_report.deserialize_many_topics     |         113 |     3.582ms |     2.915us |     3.576ms |     3.586ms |   50398.000 |       0.000 |  84158331.2 |
@StephanDollberg StephanDollberg merged commit d292434 into dev Feb 26, 2024
16 checks passed
@StephanDollberg StephanDollberg deleted the stephan/serde-bench branch February 26, 2024 13:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants