Typically such performance disparities are due to changes in the memory footprint with the 64-bit code, and resulting cache miss rates being higher with the 64-bit code than the 32-bit code.
You need to use the Studio tools to profile the code, and/or cputrack to measure cache hit rates. Thanks, /jim On Aug 16, 2010, at 9:58 PM, Kishore Kumar Pusukuri wrote: > Hi, > I am surprised with the performances of some 64-bit multi-threaded > applications on my AMD Opteron machine. For most of the applications, the > performance of 32-bit version is almost same as the performance of 64-bit > version. However, for a couple of applications, 32-bit versions provide > better performance (running-time is around 76 secs) than 64-bit (running time > is around 96 secs). Could anyone help me to find the reason behind this, > please? > > > $ldd program-64 (64-bit version) > libpthread.so.1 => /lib/64/libpthread.so.1 > libstdc++.so.6 => /usr/lib/64/libstdc++.so.6 > libm.so.2 => /lib/64/libm.so.2 > libgcc_s.so.1 => /usr/lib/64/libgcc_s.so.1 > libc.so.1 => /lib/64/libc.so.1 > > $ ldd program-32 (32-bit version) > libpthread.so.1 => /lib/libpthread.so.1 > libstdc++.so.6 => /usr/lib/libstdc++.so.6 > libm.so.2 => /lib/libm.so.2 > libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 > libc.so.1 => /lib/libc.so.1 > -- > This message posted from opensolaris.org > _______________________________________________ > perf-discuss mailing list > perf-discuss@opensolaris.org _______________________________________________ perf-discuss mailing list perf-discuss@opensolaris.org