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

Symbol Visibility #2528

Open
ax3l opened this issue Feb 13, 2018 · 0 comments
Open

Symbol Visibility #2528

ax3l opened this issue Feb 13, 2018 · 0 comments
Labels
install installation & packaging

Comments

@ax3l
Copy link
Member

ax3l commented Feb 13, 2018

Other C++ template metaprogramming-heavy projects such as pybind11 make extensive use of symbol hiding via -fvisibility=hidden:

This reduces binary size a lot - likely at the cost of less verbose callstack in crashes. It is worth investigating if the binary size change pays of for us and if it has further implications, maybe even in performance.

For an implementation, make it controllable via a CMake option (which is default ON in Release builds) and set the target property CXX_VISIBILITY_PRESET to hidden for selected PIConGPU targets. Note that there is also "inlines hidden" causing all inlined class member functions to have hidden visibility.

@ax3l ax3l added the install installation & packaging label Feb 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
install installation & packaging
Projects
None yet
Development

No branches or pull requests

1 participant