Learn how fast YJIT really is. This posts walks through Shopify's new benchmarking harness for YJIT, plus graphs and benchmarks updated twice a day.
Overview
The article discusses the development of YJIT, a Just-In-Time Compiler for Ruby, and the implementation of a benchmarking harness to measure its performance. It highlights the advantages of using GitHub Actions and GitHub Pages to automate the reporting and visualization of benchmark results.
What You'll Learn
How to automate benchmark reporting using GitHub Actions and GitHub Pages
Why YJIT is faster than interpreted CRuby and MJIT
How to set up a Jekyll site for continuous reporting
When to use AWS for controlled benchmarking environments
Prerequisites & Requirements
- Basic understanding of Ruby and benchmarking concepts
- Familiarity with GitHub Actions and GitHub Pages(optional)
Key Questions Answered
How fast is YJIT compared to CRuby and MJIT?
What is the role of GitHub Actions in the benchmarking process?
What challenges might arise when using AWS with GitHub Actions?
How can graphs be generated for benchmark results?
Key Statistics & Figures
Technologies & Tools
Some links below are affiliate links. We may earn a commission if you make a purchase.
Key Actionable Insights
1Automate your benchmark reporting process using GitHub Actions to save time and reduce manual errors.By setting up scheduled workflows, you can ensure that your benchmark results are always current without manual intervention, allowing you to focus on analysis rather than data collection.
2Utilize Jekyll for hosting your benchmarking reports to leverage GitHub Pages' capabilities.Jekyll simplifies the process of generating static sites from dynamic data, making it easier to present your findings in an organized manner.
3Consider using AWS for running benchmarks to maintain control over the testing environment.Running benchmarks on AWS allows you to configure the instance specifications, ensuring consistent performance metrics that are not influenced by shared environments.