Hi Simon, I looked over the comments in trac #11115 . Thank you for a very thorough analysis and presentation. One thing I didn't immediately find in the discussion there is that an increased memory footprint for elements can also cause cache-misses sooner, so lead to a slowdown (so memory usage can lead to slowdown).
Cache performance is very dependent on processor and very tricky to test for. However, I would expect that an implementation which uses less memory for its working set will never perform worse than one that uses more (other things being equal). So my default preference would be for the mixed approach (3): make your chance to parents as proposed and let people install __cached_methods manually on elements to get the benefits. The drawback of that approach is that it takes very specialized knowledge to get caching on elements working well. It would need to be featured prominently in the documentation somewhere. -- To post to this group, send an email to [email protected] To unsubscribe from this group, send an email to [email protected] For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org
