On Sat, Feb 11, 2023 at 8:37 PM Basile Starynkevitch <bas...@starynkevitch.net> wrote: > > Hello all, > > Shivansh Khare wrote: > > > > I have looked into the different starter projects that are offered in the > > [Wiki GSoC page](https://gcc.gnu.org/wiki/SummerOfCode) and I was > > particularly interested in the `-ftime-trace` project. The following is > > what is given as a short description about the problematic: > > "Implement something similar to Clang's -ftime-trace feature which > > generates performance reports that show where the compiler spends compile > > time. For more information, please check the following blog post. > > Are you aware of the existing -ftime-report option to GCC 12 or later?
It looks like -ftime-trace can be implemented ontop of the existing time tracking that's reported with -ftime-report and -ftime-report-details, possibly a first step would be to make the raw data more accessible. We've now not alternate output for various auxiliary data for example in JSON format, so implementing -ftime-report=json plus an external visualization tool/script might be a good start for the project. Richard. > On Linux (and probably many other POSIX) systems, at least in straight > (non-cross) x86-64 GCC compilers, implementing that should be not very > difficult. Here are some insights. > > Read carefully https://man7.org/linux/man-pages/man7/time.7.html > > First, you could experiment by writing a GCC plugin doing that timing > (in some experimental way). > https://gcc.gnu.org/onlinedocs/gccint/Plugins.html > > Maybe consider later providing such a "standard" GCC plugin to do the > timing. > > Modifying the pass manager > https://gcc.gnu.org/onlinedocs/gccint/Pass-manager.html#Pass-manager to > use clock_gettime system call. See > https://man7.org/linux/man-pages/man2/clock_gettime.2.html > > It is related to plugin gate functions... > > > Regards. > > > BTW, my pet open source project is http://refpersys.org/ (symbolic > inference engine, work in progress). > > > -- > Basile Starynkevitch <bas...@starynkevitch.net> > (only mine opinions / les opinions sont miennes uniquement) > 92340 Bourg-la-Reine, France > web page: starynkevitch.net/Basile/ >