You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
On Linux Debian 5 with gcc version 4.3.2 (Debian 4.3.2-1.1), several
spec2006 fp benchmarks running with DR produce wrong result.
410.bwaves, 416.gamess, 434.zeusmp, 437.leslie3d, 454.calculix, 465.tonto
result of running spec2006 fp with test input and DR release:
410.bwaves -- 28.9 VE
416.gamess -- 1.28 VE
433.milc -- 7.49 -- S
434.zeusmp -- 21.0 VE
435.gromacs -- 1.42 -- S
436.cactusADM -- 4.32 -- S
437.leslie3d -- 17.5 VE
444.namd -- 14.0 -- S
447.dealII 30 -- CE
450.soplex -- 0.304 -- S
453.povray -- 1.47 -- S
454.calculix -- 0.426 VE
459.GemsFDTD -- 4.28 -- S
465.tonto -- 0.321 RE
470.lbm -- 13.3 -- S
481.wrf -- 0.614 RE
482.sphinx3 -- 2.79 -- S
result of running spec2006 fp natively with test input:
410.bwaves -- 28.4 -- S
416.gamess -- 1.31 -- S
433.milc -- 6.72 -- S
434.zeusmp -- 20.5 -- S
435.gromacs -- 1.18 -- S
436.cactusADM -- 3.95 -- S
437.leslie3d -- 17.3 -- S
444.namd -- 13.8 -- S
447.dealII 30 -- CE
450.soplex -- 0.024 -- S
453.povray -- 0.760 -- S
454.calculix -- 0.061 -- S
459.GemsFDTD -- 3.52 -- S
465.tonto -- 0.886 -- S
470.lbm -- 13.6 -- S
481.wrf -- 0.188 RE
482.sphinx3 -- 2.28 -- S
It seems the bug is because of exist of libdynamorio.so
The program tries to search functions like snprintf. However, it finds DR's
implementation of snprintf in libdynamorio.so instead of the snprintf in /lib/libc.so.6.
The implementation difference may lead to the different result.
snprintf replacing glibc's weak symbol for snprintf has caused other problems in the past
xref PR 262804: [linux] avoid symbol pre-emption conflicts between libdynamorio.so
and application libraries
the only good long-term solution to general pre-emption is a private loader (issue #157).
for this particular case we could get rid of snprintf: it's deprecated already and
only there for backward compat.
I removed snprintf and all benchmarks passed. Before we have our own private loader,
we should get rid of snprintf in the release. Do it earlier is better than later.
From [email protected] on October 22, 2009 15:51:29
On Linux Debian 5 with gcc version 4.3.2 (Debian 4.3.2-1.1), several
spec2006 fp benchmarks running with DR produce wrong result.
410.bwaves, 416.gamess, 434.zeusmp, 437.leslie3d, 454.calculix, 465.tonto
result of running spec2006 fp with test input and DR release:
410.bwaves -- 28.9 VE
416.gamess -- 1.28 VE
433.milc -- 7.49 -- S
434.zeusmp -- 21.0 VE
435.gromacs -- 1.42 -- S
436.cactusADM -- 4.32 -- S
437.leslie3d -- 17.5 VE
444.namd -- 14.0 -- S
447.dealII 30 -- CE
450.soplex -- 0.304 -- S
453.povray -- 1.47 -- S
454.calculix -- 0.426 VE
459.GemsFDTD -- 4.28 -- S
465.tonto -- 0.321 RE
470.lbm -- 13.3 -- S
481.wrf -- 0.614 RE
482.sphinx3 -- 2.79 -- S
result of running spec2006 fp natively with test input:
410.bwaves -- 28.4 -- S
416.gamess -- 1.31 -- S
433.milc -- 6.72 -- S
434.zeusmp -- 20.5 -- S
435.gromacs -- 1.18 -- S
436.cactusADM -- 3.95 -- S
437.leslie3d -- 17.3 -- S
444.namd -- 13.8 -- S
447.dealII 30 -- CE
450.soplex -- 0.024 -- S
453.povray -- 0.760 -- S
454.calculix -- 0.061 -- S
459.GemsFDTD -- 3.52 -- S
465.tonto -- 0.886 -- S
470.lbm -- 13.6 -- S
481.wrf -- 0.188 RE
482.sphinx3 -- 2.28 -- S
Original issue: http://code.google.com/p/dynamorio/issues/detail?id=224
The text was updated successfully, but these errors were encountered: