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

Use a TypedArena in ty::ctxt. #12809

Merged
merged 4 commits into from Sep 8, 2014
Merged

Use a TypedArena in ty::ctxt. #12809

merged 4 commits into from Sep 8, 2014

Conversation

eddyb
Copy link
Member

@eddyb eddyb commented Mar 10, 2014

This was inspired by seeing a LLVM flatline of ~600MB when running rustc with jemalloc (each type's t_box_ is allocated on the heap, creating a lot of fragmentation, which jemalloc can deal with, unlike glibc).

@nikomatsakis
Copy link
Contributor

meta comment: It seems like a good idea to introduce a convention of using 'tcx for the lifetime of the type context, or something like that.

@eddyb
Copy link
Member Author

eddyb commented Mar 10, 2014

@nikomatsakis I'll wait and see how much this can be reduced with better lifetime variance inference support, and only then start adding 'tcx, but I like it otherwise.

@alexcrichton
Copy link
Member

ping, looks like this can be rebased now that the de-@ phase has landed

@eddyb
Copy link
Member Author

eddyb commented Mar 19, 2014

@alexcrichton I'm waiting for a snapshot so I can make traits generic over lifetimes (#12807), otherwise this would still be hacky.

@alexcrichton
Copy link
Member

I talked to @eddyb on IRC, and he said that this needs some more work, and to close it for now.

@eddyb
Copy link
Member Author

eddyb commented Apr 23, 2014

This is plagued by "pointer has a longer lifetime than the data it references" errors, sadly - see my comment on #10396.

@thestinger
Copy link
Contributor

This needs another rebase. I'm going to close it for now.

@emberian
Copy link
Member

emberian commented Sep 7, 2014

r=me with rebase

@pcwalton
Copy link
Contributor

pcwalton commented Sep 7, 2014

Do we know what the memory usage implications of this are?

bors added a commit that referenced this pull request Sep 8, 2014
This was inspired by seeing a LLVM flatline of **~600MB** when running rustc with jemalloc (each type's `t_box_` is allocated on the heap, creating a lot of fragmentation, which jemalloc can deal with, unlike glibc).
@bors bors merged commit 8bfbcdd into rust-lang:master Sep 8, 2014
@eddyb eddyb deleted the ty-arena branch September 8, 2014 20:51
bors added a commit to rust-lang-ci/rust that referenced this pull request Jul 25, 2022
fix: Work around Code bug with empty diagnostics

Closes rust-lang#11404
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

Successfully merging this pull request may close these issues.

None yet

7 participants