GSoC Idea: Core Performance Analysis

Analysis of Long-Term Core Performance


Areas C, Tcl, ...
Good if student knows C, Benchmarking, Statistics
Priority Medium
Difficulty Easy to Medium
Benefits to the student ???
Benefits to the Tcl Community An enhanced performance benchmark suite, long-term performance measurements to guide core development, hopefully places to look into where things can be done better.
Mentor ???
See alsoGSoC Idea: Microbenchmarking extension (specific possible sub-project)

Project Description

At the core (sic!) of the project is the use of tclbench and other benchmark suites and tools (valgrind, cachegrind, ...) to investigate the Tcl's core performance over a long period of time, i.e. starting from now back at least 8 years (as we have all this in the repository history).

Based on this data the student should further investigate times of abrupt changes to determine causes as much as possible.

Another part of the work will be to extend/modify tclbench with additional benchmarks, more sensible benchmarks, etc.

Maybe also create a set of C based benchmarks which directly use and measure the performance of various sets of API functions, internals, etc.

Possibly even develop/collect a suite of applications which can be used to measure real-world performance, versus the synthetic benchmarks of tclbench.

References

  • tclbench
  • there is a macro-benchmark suite for python [1 ] that may serve as inspiration

Comments & Discussion

Some comments here