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

Modern diag manager: Improve performance #1631

Open
uramirez8707 opened this issue Jan 8, 2025 · 0 comments · May be fixed by #1634
Open

Modern diag manager: Improve performance #1631

uramirez8707 opened this issue Jan 8, 2025 · 0 comments · May be fixed by #1634
Assignees

Comments

@uramirez8707
Copy link
Contributor

Describe the bug
When comparing the performance between the modern diag manager and the legacy diag manager, you can see that the performance of the modern diag manager is consistently 4-7% slower than the legacy diag manager

To Reproduce
Compare performance between the modern and the legacy diag manager

One way to improve performance is to avoid x**power (where power is equal to 1)
https://github.com/uramirez8707/FMS/blob/bd9cbebd9efd1f94207a141cf43ee65cd0d041cd/diag_manager/include/fms_diag_reduction_methods.inc#L323-L325

Another way is to avoid having diag_send_complete loop through all the variable to check if it is time to do the buffer math/write output if send_data has not been called since the last time diag_send complete call.

Another way is to explore using do concurrent loops to parallelize the do loops when doing the math

Expected behavior
The performance should be similar or better

System Environment
This will happen in any system

Additional context
N/A

@uramirez8707 uramirez8707 self-assigned this Jan 8, 2025
@uramirez8707 uramirez8707 linked a pull request Jan 8, 2025 that will close this issue
8 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant