-
Notifications
You must be signed in to change notification settings - Fork 1.1k
[GSoC 2021] Performance Tracking in CI
Create a web app that integrates with our buildbot infrastructure to track the performance of many aspects of Halide over time.
Halide is a performance-critical system, so it is imperative that we understand the performance impact of every change we make. This project aims to create a web app to measure and visualize compile times, code size, memory footprint (RSS and stack usage), and execution speed for both the compiler proper and the optimized pipelines. When evaluating a pull request, it should be clear at a glance if any metric changed (whether faster or slower).
- Visualize performance metrics over time
- Visualize performance changes for a particular pull request
- Fully automated reporting via the GitHub API and WebSocket updates.
Stretch goals include:
- Expanding the scope of our existing performance testing.
- Tracking non-numeric metrics, such as warnings.
No prior Halide or C++ experience is required for this project.
- Python 3.6+
- SQL
- Git
- Web development / JavaScript
Medium, maybe Easy if you have significant web development experience.
The source code for the buildbots is available here: https://github.com/halide/build_bot
When reaching out to apply for this project, please include the following:
- A web development portfolio, including:
- Links to published websites you have either developed yourself or contributed to significantly.
- A link to the website's sources, if possible.
- Source code samples in Python, ie. links to a GitHub repo with clear contributions
- Source code samples in JavaScript, ie. links to a GitHub repo with clear contributions
We will likely ask you, as part of your application, to write a small sample web application.
Incomplete applications will not be considered.