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

profiling label #1935

Closed
kyungjoo-kim opened this issue Dec 11, 2018 · 7 comments
Closed

profiling label #1935

kyungjoo-kim opened this issue Dec 11, 2018 · 7 comments
Assignees
Labels
Enhancement Improve existing capability; will potentially require voting

Comments

@kyungjoo-kim
Copy link
Contributor

random functor does not have labels.

N6Kokkos4Impl25fill_random_functor_rangeINS_4ViewIPPPNS_7complexIdEEJNS_10LayoutLeftENS_6OpenMPEEEENS_22Random_XorShift64_PoolIS9_EELi128ELi3ElEE (ParFor)           1.17556         2964         0.00040   0.818   0.573 
@ndellingwood ndellingwood added the Enhancement Improve existing capability; will potentially require voting label Feb 1, 2019
@ndellingwood ndellingwood added this to the 2019 April milestone Feb 7, 2019
@crtrott crtrott removed this from the 2019 April milestone Aug 21, 2019
@dhollman
Copy link

Is this something we provide in general for internal Kokkos functors? What should our policy be on this?

@DavidPoliakoff
Copy link
Contributor

@dhollman I'd like it if we had labels, it's fairly jarring for users to see stuff like this in their profiling outputs

@dhollman
Copy link

Yeah I agree. I was just thinking we should think this through and have some sort of convention, like surrounding the name with square brackets and/or prefixing the label with "Kokkos Internal" or something

@DavidPoliakoff
Copy link
Contributor

I think [Kokkos Internal] KernelName would be a pretty idiomatic way to do this

@DavidPoliakoff
Copy link
Contributor

@dhollman it gives some false positives, but match callExpr(callee(unresolvedLookupExpr(hasAnyDeclaration(namedDecl(matchesName("Kokkos::parallel_"))))),unless(anyOf(hasDescendant(stringLiteral()),hasAnyArgument(hasDescendant(declRefExpr(hasType(asString("const char*")))))))) gets us what we want.

I think the rule should be "if we're in Kokkos, unless we're in a forwarding layer which calls another Kokkos::parallel_* construct, calls to Kokkos::parallel_* must name their kernels." Does that sound like the semantics we want?

@dhollman
Copy link

dhollman commented Sep 3, 2019

Seems reasonable :-)

@DavidPoliakoff DavidPoliakoff added this to the Tentative 3.1 Release milestone Sep 4, 2019
@dalg24
Copy link
Member

dalg24 commented Mar 4, 2020

@DavidPoliakoff will look into this

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
Projects
None yet
Development

No branches or pull requests

6 participants