llvm-developers-meeting
2023 LLVM Developers’ Meeting
1s82ngwgzmjksuctwtwhtiw

Recently, members of the PassiveLogic compiler team had the opportunity to attend the 2023 LLVM Developers’ Meeting in Santa Clara, CA. It was a tremendously rewarding experience for all of us.

For those who aren’t familiar, LLVM is a huge project that hosts compiler technologies which underpin a lot of the software and hardware products we use every day. Many modern programming languages are built upon the foundations that LLVM provides, such as Swift, Rust, and more. The LLVM Developers’ Meeting brings together experts from nearly every major technology company you’ve heard of to learn about advancements in the compiler, language, and related fields.

For the newer members of PassiveLogic’s compiler team, it was their first large industry and research conference and a valuable learning experience. They saw how the names behind big, important projects belonged to friendly people who loved to talk at length about their work. It’s always intimidating when you first arrive at a conference like this, but once you strike up that first conversation, you see how approachable everyone is.

Differentiable Swift Roundtable

PassiveLogic’s connection to LLVM is closely tied to our work in advancing the Swift programming language, particularly the experimental language feature of differentiable Swift. We’re working to make Swift the first systems language with first-class differentiation support integrated right into the language. This is in support of our unique physics-based digital twins and their heterogeneous compute graphs, and what we see as a path to a post-deep-learning era beyond the confines of traditional homogeneous neural networks. To learn more about differentiable Swift, watch our PassiveLogic 2023 Launch Event.

In addition to our immediate team, our partners from Access Softek Toolchains were present at the LLVM Conference as sponsors of the event. They do amazing LLVM work and have been critical to the advancement of differentiable Swift. Together, PassiveLogic and Access Softek Toolchains organized a roundtable on differentiable programming, and we had a great planning session about the future of differentiable Swift as well as broader discussions about automatic differentiation in general. It was extremely productive for us to also connect directly with the Swift team members at the conference as we coordinated on next steps for this language feature.

MLIR

1qm2wdirrn04ckewn_yegxa

Our event T-shirts were a fun mix of gradient descent optimization and the slopes near our home office.

Most of our team, myself included, opted to attend the pre-conference MLIR workshop. MLIR is a flexible framework for building compilers, growing out of the recognition that we are facing a Cambrian explosion of novel computing hardware and we need better ways of building software for this new world. A big theme of this year’s meeting was how MLIR is being adopted across a range of applications: from adversarial JavaScript detection, to circuit design via CIRCT, to sparse tensor computation.

I was particularly interested to hear about early explorations into how the Enzyme automatic differentiation framework can be applied to MLIR. Enzyme is a fascinating technology for performing automatic differentiation — to date at the LLVM IR level — and we’ve previously written about our experiments with coupling this to the Swift language.

Modular’s keynote address continued the theme of MLIR and its applications, presenting greater background on how they constructed their MLIR-based AI Engine and in the process determined they needed a new language as an interface to that. Mojo was the result. I do have to say that I appreciated Jeff Niu from Modular doing a technical deep dive in front of everyone wearing a pink unicorn onesie. 🦄

You can catch an insightful conversation between PassiveLogic CEO Troy Harvey and Modular CEO Chris Lattner within our 2023 Launch Event here. Both Modular and PassiveLogic share a vision of a future without boundaries between application logic and machine learning code. At PassiveLogic, this integration is necessary to solve real-world problems with our generative design technologies built on physics-based digital twins.

Open Source Communities

Beyond the technical discussions, I had a particular interest in the session held on the evolution of governance for the LLVM project. A full description of the proposal can be found in this pull request. LLVM brings together so many companies and groups across industry and research, all with their own (sometimes conflicting) interests. As a project, it has grown such that current processes can’t handle its scale. The members have considered recent governance discussions taking place across other sizable open source projects like Apache, Python, and Rust.

1p-1gslfj6k6d0s2mp6e3aq

Open source project governance sounds boring, but the discussion was both entertaining and important.

Additionally, April Wensel gave a very well-received keynote about compassionate coding. She provided an easy-to-understand shorthand: “compassion is understanding plus action.” This rings true, and the healthiest open source communities that I’ve been a part of had policies of treating everyone with respect.

I want to personally thank Tanya Lattner and all of the organizers from the LLVM Foundation for their hard work in putting together the 2023 installment of the LLVM Developers’ Meeting. This was a unique opportunity for the compiler team at PassiveLogic to meet a ton of great people who are also working in this space. We came home with many areas to research, and encouragement from our LLVM peers to continue to push the limits of what can be achieved with compilers.

Previous post
2 / 24
Next post
Twitter%20X