-----Original Message-----
From: Jeff Law [mailto:[email protected]]
Sent: Wednesday, December 23, 2015 12:06 PM
To: Ajit Kumar Agarwal; Richard Biener
Cc: GCC Patches; Vinod Kathail; Shail Aditya Gupta; Vidhumouli Hunsigida;
Nagaraju Mekala
Subject: Re: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa
representation
On 12/11/2015 02:11 AM, Ajit Kumar Agarwal wrote:
>
> Mibench/EEMBC benchmarks (Target Microblaze)
>
> Automotive_qsort1(4.03%), Office_ispell(4.29%), Office_stringsearch1(3.5%).
> Telecom_adpcm_d( 1.37%), ospfv2_lite(1.35%).
>>I'm having a real tough time reproducing any of these results. In fact, I'm
>>having a tough time seeing cases where path splitting even applies to the
>>Mibench/EEMBC benchmarks >>mentioned above.
>>In the very few cases where split-paths might apply, the net resulting
>>assembly code I get is the same with and without split-paths.
>>How consistent are these results?
I am consistently getting the gains for office_ispell and office_stringsearch1,
telcom_adpcm_d. I ran it again today and we see gains in the same bench mark
tests
with the split path changes.
>>What functions are being affected that in turn impact performance?
For office_ispell: The function are Function "linit (linit, funcdef_no=0,
decl_uid=2535, cgraph_uid=0, symbol_order=2) for lookup.c file".
"Function checkfile (checkfile,
funcdef_no=1, decl_uid=2478, cgraph_uid=1, symbol_order=4)"
" Function correct (correct, funcdef_no=2,
decl_uid=2503, cgraph_uid=2, symbol_order=5)"
" Function askmode (askmode, funcdef_no=24,
decl_uid=2464, cgraph_uid=24, symbol_order=27)"
for correct.c file.
For office_stringsearch1: The function is Function "bmhi_search (bmhi_search,
funcdef_no=1, decl_uid=2178, cgraph_uid=1, symbol_order=5)"
for bmhisrch.c file.
>>What options are you using to compile the benchmarks? I'm trying with
>>-O2 -fsplit-paths and -O3 in my attempts to trigger the transformation so
>>that I can look more closely at possible heuristics.
I am using the following flags.
-O3 mlittle-endian -mxl-barrel-shift -mno-xl-soft-div -mhard-float
-mxl-float-convert -mxl-float-sqrt -mno-xl-soft-mul -mxl-multiply-high
-mxl-pattern-compare.
To disable split paths -fno-split-paths is used on top of the above flags.
>>Is this with the standard microblaze-elf target? Or with some other target?
I am using the --target=microblaze-xilinx-elf to build the microblaze target.
Thanks & Regards
Ajit
jeff