Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

wrf 29x slowdown vs native due to 185M uninits #1188

Open
derekbruening opened this issue Nov 28, 2014 · 0 comments
Open

wrf 29x slowdown vs native due to 185M uninits #1188

derekbruening opened this issue Nov 28, 2014 · 0 comments

Comments

@derekbruening
Copy link
Contributor

From [email protected] on April 17, 2013 23:32:49

on ancalagon:

cd /extsw/spec2006/benchspec/CPU2006/481.wrf/run/run_base_ref_amd64-m32-gcc42-nn.0000

/usr/bin/time /work/drmemory/git/build_x86_rel/bin/drmemory.pl -replace_malloc -dr_ops "-msgbox_mask 12 -prof_pcs" -pause_at_assert -dr /work/dr/git/exports -- ./wrf_base.amd64-m32-gcc42-nn > rsl.out.0000

Dr.M ERRORS FOUND:
Dr.M 1 unique, 2 total unaddressable access(es)
Dr.M 60 unique, 185522998 total uninitialized access(es)
Dr.M 0 unique, 0 total invalid heap argument(s)
Dr.M 0 unique, 0 total warning(s)
Dr.M 2 unique, 2 total, 331000 byte(s) of leak(s)
Dr.M 8 unique, 8 total, 188000 byte(s) of possible leak(s)
Dr.M ERRORS IGNORED:
Dr.M 2268 still-reachable allocation(s)
Dr.M (re-run with "-show_reachable" for details)
Dr.M Details: /work/drmemory/git/build_x86_rel/logs/DrMemory-wrf_base.amd64-m32-gcc42-nn.18787.000/results.txt
22675.12user 23.30system 6:19:17elapsed 99%CPU (0avgtext+0avgdata 974348maxresident)k

head pcs_; IFS=$'\n'; for i in grep '^pc._UNKNOWN' pcs\* | sed 's/pc=//' | sed 's/#=//' | awk '{printf "&#37;s &#37;s\n",$2, $1}'; do addr2line -f -e /work/drmemory/git/build_x86_rel/bin/bin32/release/libdrmemory.soecho $i | awk '{print $2}'| xargs echo $i; done | sort -n > RES-basename pcs_; for i in RES-pcsamples.0.; do echo $i; cat $i | perl -e 'while(<>){if(/^(\d+)\s+\S+\s+(\S+)/){$hits{$2}+=$1;}else{die"bad:$";}}foreach $k (sort {$hits{$a} <=> $hits{$b}} keys %hits){printf "%5d %s\n", $hits{$k}, $k;}' | tail -12; done

ITIMER distribution (2267893):
0.0% of time in APPLICATION (3)
9.4% of time in INTERPRETER (212391)
0.3% of time in DISPATCH (6606)
2.7% of time in SYSCALL HANDLER (60259)
0.2% of time in INDIRECT BRANCH LOOKUP (5102)
11.4% of time in FRAGMENT CACHE (258170)
76.1% of time in UNKNOWN (1725362)
RES-pcsamples.0.18787.html
19029 is_retaddr
32965 syscall_get_param
44365 report_in_suppressed_module
48299 get_shadow_table
102790 shadow_get_dword
106817 address_to_frame
117464 bitmapx2_byte
127081 print_address_common
164888 callstack_module_unload
419084 text_contains_any_string

looks like it's the uninits!

DUPLICATE ERROR COUNTS:
Error # 12: 89,552,910
Error # 14: 67,681,030
Error # 18: 2888730
Error # 20: 2031787
Error # 30: 11,865,070
Error # 31: 9331328

grep 'Error # ' /work/drmemory/git/build_x86_rel/logs/DrMemory-wrf_base.amd64-m32-gcc42-nn.18787.000/results.txt | awk '{s+=$NF} END {print s}'
185,522,985

top ones:

Error #12: UNINITIALIZED READ: reading 0xfffbad90-0xfffbad94 4 byte(s)
#0 __module_sf_noahlsm_MOD_sstep
#1 __module_sf_noahlsm_MOD_smflx
#2 __module_sf_noahlsm_MOD_nopac
#3 __module_sf_noahlsm_MOD_sflx
#4 __module_sf_noahlsm_MOD_lsm
#5 _module_surface_driver_MOD_surface_driver
#6 solve_em

Note: @0:00:53.532 in thread 18787
Note: instruction: fld 0xfffffffc(%ebx,%eax,4) -> %st0

Error #14: UNINITIALIZED READ: reading 0xfffbae30-0xfffbae34 4 byte(s)
#0 __module_sf_noahlsm_MOD_hstep
#1 __module_sf_noahlsm_MOD_shflx
#2 __module_sf_noahlsm_MOD_nopac
#3 __module_sf_noahlsm_MOD_sflx
#4 __module_sf_noahlsm_MOD_lsm
#5 _module_surface_driver_MOD_surface_driver
#6 solve_em

Note: @0:00:53.555 in thread 18787
Note: instruction: fld 0xfffffffc(%ebx,%eax,4) -> %st0

Error #18: UNINITIALIZED READ: reading 0xfffbad94-0xfffbad98 4 byte(s)
#0 __module_sf_noahlsm_MOD_sstep
#1 __module_sf_noahlsm_MOD_smflx
#2 _module_surface_driver_MOD_surface_driver
#3 solve_em

Note: @0:00:53.594 in thread 18787
Note: instruction: fld 0xfffffffc(%ebx,%eax,4) -> %st0

Error #20: UNINITIALIZED READ: reading 0xfffbae34-0xfffbae38 4 byte(s)
#0 __module_sf_noahlsm_MOD_hstep
#1 __module_sf_noahlsm_MOD_shflx
#2 __module_sf_noahlsm_MOD_sflx
#3 __module_sf_noahlsm_MOD_lsm
#4 _module_surface_driver_MOD_surface_driver
#5 solve_em

Note: @0:00:53.611 in thread 18787
Note: instruction: fld 0xfffffffc(%ebx,%eax,4) -> %st0

Error #30: UNINITIALIZED READ: reading 0xfffb9268-0xfffb926c 4 byte(s)
#0 __module_sf_noahlsm_MOD_hstep
#1 header_from_ptr
#2 __module_sf_noahlsm_MOD_shflx
#3 header_from_ptr
#4 next_chunk_forward
#5 __module_sf_noahlsm_MOD_nopac
#6 __module_sf_noahlsm_MOD_sflx
#7 __module_sf_noahlsm_MOD_lsm
#8 _module_surface_driver_MOD_surface_driver
#9 solve_em

Note: @0:03:13.993 in thread 18787
Note: instruction: fld 0xfffffffc(%ebx,%eax,4) -> %st0

Error #31: UNINITIALIZED READ: reading 0xfffb9260-0xfffb9264 4 byte(s)
#0 __module_sf_noahlsm_MOD_hstep
#1 __module_sf_noahlsm_MOD_shflx
#2 header_from_ptr
#3 next_chunk_forward
#4 __module_sf_noahlsm_MOD_nopac
#5 __module_sf_noahlsm_MOD_sflx
#6 __module_sf_noahlsm_MOD_lsm
#7 _module_surface_driver_MOD_surface_driver
#8 solve_em

Note: @0:03:14.005 in thread 18787
Note: instruction: fld 0xfffffffc(%ebx,%eax,4) -> %st0

they're all floats: is this issue #471 ?

valgrind takes 2:54:24 and reports about 100K uninits: none of the fld ones here are among them.

Original issue: http://code.google.com/p/drmemory/issues/detail?id=1188

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant