I removed about 30% by caching the options for the high number of belongs to associations in that table, combined with the high number of records.
I would think however that a general caching solution could be implemented since in most cases the options are not unique to the record. I do have cases where they are unique to the record based on security and other restrictions, so per-record options needs to remain an possibility. Given that I am using the Rails 3 fork I can not use your branch directly, but will look at it for ideas. Michael On May 4, 2011, at 12:16 PM, Ed W wrote: > Also have a look at some of the ideas in my "performance" branch on > github. I found a bunch of time was due to the GC being called > frequently. This in turn is due to large amounts of concatenations and > temp variables created in freq called functions. > > Even small decreases in the size of created partials and implicitly > number of concat operations can work wonders. > > I need to work on other projects for the next fair while, but I think > there is a lot of performance to be gained by a slightly invasive change > to alter how we generate our output. Basically moving stuff up the tree > and as far as possible even to compile time. I did discuss a bunch of > ideas with Sergio, but we didn't reach an agreement because he is a > little more conservative than me about removing per call customisation > options... :-) However, I think it's solveable > > Good luck > > Ed W > > -- > You received this message because you are subscribed to the Google Groups > "ActiveScaffold : Ruby on Rails plugin" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/activescaffold?hl=en. > -- You received this message because you are subscribed to the Google Groups "ActiveScaffold : Ruby on Rails plugin" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/activescaffold?hl=en.
