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

Improve performance of axom::Array::push_back #1471

Open
kennyweiss opened this issue Nov 13, 2024 · 0 comments
Open

Improve performance of axom::Array::push_back #1471

kennyweiss opened this issue Nov 13, 2024 · 0 comments
Labels
Core Issues related to Axom's 'core' component high priority Performance Issues related to code performance Reviewed

Comments

@kennyweiss
Copy link
Member

In #1469, we added some initial benchmarking of axom::Array w.r.t. std::vector (see also #287),
and observed that axom::Array was slower for push_back and emplace_back operations on native types.

Initial profiling using hpctoolkit did not reveal any low-hanging fruit.
Our assumption is that the performance might be due to function call overhead, e.g. for functions that are not inlined.

@publixsubfan noticed that axom::Array::emplace() calls the virtual function Array::updateNumElements(), and axom::Array has several other virtual functions.

@kennyweiss kennyweiss added Core Issues related to Axom's 'core' component high priority Performance Issues related to code performance labels Nov 13, 2024
@rhornung67 rhornung67 added this to the FY25 Development milestone Dec 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Core Issues related to Axom's 'core' component high priority Performance Issues related to code performance Reviewed
Projects
None yet
Development

No branches or pull requests

2 participants