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

should allocation tracking ignore compilation by default? #19981

Closed
StefanKarpinski opened this issue Jan 11, 2017 · 2 comments
Closed

should allocation tracking ignore compilation by default? #19981

StefanKarpinski opened this issue Jan 11, 2017 · 2 comments

Comments

@StefanKarpinski
Copy link
Member

When using --track-allocation it's almost impossible to coax it into not putting a bogus looking large allocation on the first line of each function, which presumably is due to compilation kicking in when the function first runs. Can we turn off allocation tracking when we enter the compiler and then turn it back on once we've left compilation? Perhaps --track-allocation=user should exclude compilation time and --track-allocation=all should include it?

@vchuravy
Copy link
Member

The recommended procedure is to force compilation by executing all the commands you want to analyze, then call Profile.clear_malloc_data() to reset all allocation counters. Finally, execute the desired commands and quit Julia to trigger the generation of the .mem files.

Maybe we should make the above more prominent in http://docs.julialang.org/en/stable/manual/profile/#memory-allocation-analysis?

@StefanKarpinski
Copy link
Member Author

Wouldn't it be better (if possible) to just do the right thing by default?

vtjnash added a commit that referenced this issue Jan 3, 2020
Don't include one-time costs (JIT compilation) so that warm-up isn't generally required.
And adjust codegen emission to charge call entry costs to the caller.

fixes #11753
fixes #19981
fixes #21871
fixes #34054
close #18595
vtjnash added a commit that referenced this issue Jan 15, 2020
Don't include one-time costs (JIT compilation) so that warm-up isn't generally required.
And adjust codegen emission to charge call entry costs to the caller.

fixes #11753
fixes #19981
fixes #21871
fixes #34054
close #18595
vtjnash added a commit that referenced this issue Jan 21, 2020
Don't include one-time costs (JIT compilation) so that warm-up isn't generally required.
And adjust codegen emission to charge call entry costs to the caller.

fixes #11753
fixes #19981
fixes #21871
fixes #34054
close #18595
KristofferC pushed a commit that referenced this issue Apr 11, 2020
Don't include one-time costs (JIT compilation) so that warm-up isn't generally required.
And adjust codegen emission to charge call entry costs to the caller.

fixes #11753
fixes #19981
fixes #21871
fixes #34054
close #18595
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

No branches or pull requests

2 participants