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

Policy for printing macro defines information from Kokkos::print_configuration() #6927

Open
dalg24 opened this issue Apr 10, 2024 · 1 comment
Labels
Enhancement Improve existing capability; will potentially require voting Kokkos-Core

Comments

@dalg24
Copy link
Member

dalg24 commented Apr 10, 2024

The goal of this issue is to serve as a basis for discussion and hopefully come up with some sort of policy on how to include macro defines when printing the current configuration.

Currently we are not consistent and it is up to backend implementers to print what they see fit (loosely related to #5419).
Although I think that implementation freedom is generally a good thing, it might be worthwhile to harmonize what gets printed to the screen.
Below are a few questions that we could try answer:

  • Style: should we follow some specific format?

    • Most places do KOKKOS_SOME_MACRO: {yes,no}
    • Some say "defined" instead of "yes/no"
    • Some use "macro" as a prefix
    • No consistency on whether/where to use whitespaces
    • Few macros have an actual value
  • Verbosity: when should we say that a macro is NOT defined?

    • Kokkos::print_configuration() takes a trailing boolean parameter that is intended to control the verbosity of the output
    • The default is false, i.e. not verbose
    • Passing the --kokkos-print-configuration command line argument or setting the KOKKOS_PRINT_CONFIGURATION environment variable does use that default setting
    • The verbose boolean argument is mostly ignored in our current implementation
@dalg24 dalg24 added Enhancement Improve existing capability; will potentially require voting Kokkos-Core labels Apr 10, 2024
@dalg24
Copy link
Member Author

dalg24 commented Apr 10, 2024

This came up recently when debating whether to exclusively print some backend-specific "IMPL_` macro if it is defined and say nothing otherwise. The reasoning was keeping the output terse and only printing what departs from the default setting makes it less likely the important will get overlooked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Improve existing capability; will potentially require voting Kokkos-Core
Projects
None yet
Development

No branches or pull requests

1 participant