> In xalancbmk, with the partition option, most of object files have > nonzero size cold sections generated. The text size of the binary is > increased to 3572728 bytes from 3466790 bytes. Profiling the program > using the training input shows the following differences. With > partitioning, number of executed branch instructions slightly > increases, but itlb misses and icache load misses are significantly > lower compared with the binary without partitioning. > > > David > > With partition: > ----------------- > 53654937239 branches > 306751458 L1-icache-load-misses > 8146112 iTLB-load-misses
Note that I was also planning for some time to introduce notion of provably cold stuff into our branch prediction heurstics. I.e. code leading to aborts, eh etc that can be then offlined even w/o profile feedback and could perhaps help to large apps. (also the whole pass should be more effective with larger testcases, SPEC2k6 is slowly becoming a small one) Honza