https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95348

--- Comment #17 from qinzhao at gcc dot gnu.org ---
(In reply to Martin Liška from comment #6)

more details:

> 
> Which means one run takes 100MB is size, right? As you mentioned, having
> 1000 .gcda files, it means that one takes 0.1MB?
> 

Out of the 14,239 processes, the amount of gcda data saved is:

- Around 6500 processes in the 120-130M range.
- Around 1000 processes in the 16M-18M range
- Around   10 processes in the 736K - 764K range
- Around 6000 processes in the 8K-32K range

we are mostly interested in those 120-130M range, a typical process in the 130M
bucket has over 5000 gcd files per directory.

> 
> Can you please provide dump of one directory? At least for portion of .gcda
> files?
> How is it common that an entire module is empty?

I compared the GCC profiling data and ICC profiling data for the similar
process, the following are some interesting data:

for GCC, among 5144 modules, there are 4308 empty modules, i.e 83% modules in
GCC are empty;
on function level, among all 187338 functions, only 3524 functions executed,
i.e, 98% functions have zero counts. 

GCC records all the zero count functions and modules, But ICC ONLY records
functions and modules that have non-zero count.

So, GCC's profiling data is MUCH larger than ICC's. 

I believe that this is a big issue that need to be fixed from GCC.

Reply via email to