https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95348
--- Comment #25 from Martin Liška <marxin at gcc dot gnu.org> --- > I will try to get more data on our real application. > > one question: why not just delete the entire records whose counter is zero > and delete the entire file whose counter is zero? Because we need to distinguish in between situations where a function was really not executed (counter == 0) and the situation where we miss profile for a function. One another solution could be the usage of gzip that can shrink file sizes ~10x. That will be beneficial in situation where you don't merge profiles. How exactly do you merge profiles? Do you run parallel invocation which can take log2(N)?