From: SourceForge.net <no...@so...> - 2007-08-10 23:52:28
|
Patches item #1772004, was opened at 2007-08-10 18:43 Message generated for change (Comment added) made by msofer You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=310894&aid=1772004&group_id=10894 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: 10. Objects Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: miguel sofer (msofer) Assigned to: miguel sofer (msofer) Summary: objReform Initial Comment: (all numbers on 32 b systems) A Tcl_Obj requires 24 bytes, a typical cache line fits 32 bytes. This means that about half the Tcl_Objs will occupy a single cache line, half will require two. Adding 8 bytes at the end of a Tcl_Obj insures that all Tcl_Obj are cache-aligned. The additional space can be used to store the stringRep for small strings, saving the alloc/free. Attached a proof-of-concept patch (hard wired for 32b, for 64b 16 bytes should be added). ---------------------------------------------------------------------- >Comment By: miguel sofer (msofer) Date: 2007-08-10 20:52 Message: Logged In: YES user_id=148712 Originator: YES pat thoyts produced initial benchmarks: http://www.patthoyts.tk/benchmarks.html ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=310894&aid=1772004&group_id=10894 |