From: Evan Zhao Date: 2018-08-14T15:24:52+08:00 Subject: [ruby-core:88474] Re: [Ruby trunk Feature#14989] Add Hash support for transient heap Thanks for the quick response. > Why you can say that a hash's size has something to do with its age? Thanks for pointing it out, I admit that there are some problems with this statement. I will go to measure it. > > 1. We don't have to create st_table for small hash(but it will when necessary) > > As you should have been aware, we already do something very similar to struct LinearTable (see MAX_POWER2_FOR_TABLES_WITHOUT_BINS if you have missed). Is this really a benefit? > Yes, I know it. It is not about a optimization for st_table, the question is that transient heap has to know the obj builtin type, like T_ARRAY, or T_HASH, LinearTable serves as a temporary space to store small hash objs which request space from transient heap. st_table is more like a data structure with general purposes widely used in internal ruby. It will need massive rewriting if bind it with hash. > I find it difficult to navigate the repository. Where can I find the exact patch that we should look at? Is it 0002-add-transient-heap-linear-table-support.patch ? Sorry for the inconvenience, I merged separate patches into one, you can go to check this one: https://github.com/Tacinight/ruby-gsoc-2018/blob/master/patch/add-hash-support-for-transient-heap.patch Thanks Yimin Unsubscribe: