1. A computer-implemented method for performance analysis of computer systems, the method comprising: receiving a software application that is configured to execute a plurality of tasks; causing the execution of the software application to generate execution data that includes performance data for each of the plurality of tasks and dependency links between different tasks included in the plurality of tasks; and based on the execution data, determining a subset of tasks included in the plurality of tasks that is included in a critical path that establishes the overall execution speed of the software application.