Re: why so slow? gcc vs vc6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I've tried gprof
this is the result
Flat profile:

Each sample counts as 0.01 seconds.(what does this mean?)
  %   cumulative   self              self     total           
 time   seconds   seconds    calls   s/call   s/call  name    
 32.23      7.56     7.56                             __ieee754_log
 17.31     11.62     4.06                             log1
 17.05     15.62     4.00    40300     0.00     0.00  get_f
 11.64     18.35     2.73                             __ieee754_pow
  4.01     19.29     0.94                             __exp1
  3.75     20.17     0.88                             pow
  3.71     21.04     0.87                             isnan
  2.32     21.59     0.55                             log
  1.32     21.90     0.31                             times
  1.19     22.18     0.28                             __write_nocancel
  0.72     22.35     0.17                             __printf_fp
  0.43     22.45     0.10      101     0.00     0.00  store_X
  0.43     22.55     0.10                             finite
  0.34     22.63     0.08                             _int_malloc
  0.34     22.71     0.08                             sqrt
  0.30     22.78     0.07                             matherr
  0.26     22.84     0.06      100     0.00     0.04  get_df_dt
  0.26     22.90     0.06                             clock
  0.26     22.96     0.06                             dgerkernf_
  0.26     23.02     0.06                             vfprintf
  0.21     23.07     0.05                             _int_free
  0.19     23.11     0.05                             malloc
  0.17     23.15     0.04                             __overflow
  0.17     23.19     0.04                             power1
  0.15     23.23     0.04                             cfree
  0.13     23.26     0.03                             dger_
  0.09     23.28     0.02                             __mpn_extract_double
  0.09     23.30     0.02                             isinf
  0.06     23.31     0.02                             wrt_F
  0.04     23.32     0.01      100     0.00     0.00  check_X
  0.04     23.33     0.01                             _IO_file_overflow
  0.04     23.34     0.01                             _IO_new_do_write
  0.04     23.35     0.01                             __ieee754_exp
  0.04     23.36     0.01                             __mpn_mul
  0.04     23.37     0.01                             __mpn_mul_1
  0.04     23.38     0.01                             __mpn_rshift
  0.04     23.39     0.01                             dgbtf2_
  0.04     23.40     0.01                             dgercomp_
  0.04     23.41     0.01                             dswap_
  0.04     23.42     0.01                             dtbsv_
  0.04     23.43     0.01                             new_do_write
  0.04     23.44     0.01                             printf
  0.02     23.45     0.01                             _IO_file_write
  0.02     23.45     0.01                             _IO_new_file_xsputn
  0.02     23.46     0.01                             s_cmp
  0.02     23.46     0.01                             s_copy
  0.00     23.46     0.00      202     0.00     0.00  transfer_data
  0.00     23.46     0.00      100     0.00     0.00  get_next_X
  0.00     23.46     0.00      100     0.00     0.00  set_r
  0.00     23.46     0.00        1     0.00     0.00  get_X
  0.00     23.46     0.00        1     0.00     0.00  init
  0.00     23.46     0.00        1     0.00     4.17  main
I'm wondering is the total time as much as 23.46 seconds? I'm comfused...

On 4/21/05, Arturas Moskvinas <arturas.moskvinas@xxxxxxxxx> wrote:
> Do not use clock to determine the speed, better use profiler...
> Compile your program with
> gcc-3.4 -g0 -march=k8 -O3 -fomit-frame-pointer -funit-at-a-time
> -fpeel-loops -ftracer -funswitch-loops -mfpmath=sse -pg
> 
> Then run your program, after that make "gprof your_program" look where your
> code took a lot of time to execute (it might not be compiler problem).
> 
> Arturas Moskvinas
> P.S.: second of all, gcc is not made for super fast code generation, it is
> not the main criterea (i think so), it is made to be stable, as much as possible
> bug free. And of course it is not very easy to handle so many
> microprocessor architectures. VC++ must handle only one architecture
> i386, and of course only for one operational system (they have more
> time to optimize things for such specific platforms)...
>


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux