Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BLOG POST] C++ infra for bril #428

Open
wants to merge 8 commits into
base: 2023fa
Choose a base branch
from
Open

Conversation

ryanwmao
Copy link
Contributor

with xalbt

C++ infra for bril

repo

Closes #404

Copy link
Owner

@sampsyo sampsyo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello! Congratulations on finishing your project. This blog post needs some more details on your design decisions. I have left several markers where your high-level summaries could be backed up with concrete examples and detail. Surely there are interesting, specific outcomes that you can report here.

content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved
content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved
content/blog/2023-12-11-BrilCpp.md Show resolved Hide resolved
content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved
content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved
content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved
content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved
content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved

We found a few memory leaks with our final iteration but our program should still be memory safe.

For runtime performance, we ran the existing `brili` interpreter as well as our own interpreter against the core benchmarks in the course repo. We timed the wall clock runtime of both our interpreter and the existing interpreter over all benchmarks in the folder. We observe that we can obtain upwards of 10x improvement over the previous benchmark in wall clock runtime for some of the benchmarks. ![data](https://docs.google.com/spreadsheets/d/1QoUncdD2We8P7KumqAfWIKOdVGDnGZ_klbH5AieZHrQ/edit?usp=sharing).
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's too bad that you didn't get a chance to compare against the existing fast interpreter, written in Rust. That would have been a more instructive comparison; comparing against an implementation sitting on top of a JIT mostly just measures startup time.

content/blog/2023-12-11-BrilCpp.md Outdated Show resolved Hide resolved
@sampsyo
Copy link
Owner

sampsyo commented Dec 23, 2023

Looks like the Zola CI is complaining about missing "front matter." You can see a description of what is required in this repo's README:
https://github.com/sampsyo/cs6120/blob/2023fa/README.md

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Project Proposal: C++ Infrastructure for Bril
2 participants