Skip to content

Commit 258cf3c

Browse files
committed
Small text fixes and making URLs clickable
1 parent f400c6f commit 258cf3c

File tree

1 file changed

+19
-20
lines changed

1 file changed

+19
-20
lines changed

content/Project-Goals-2025-July-Update.md

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -141,8 +141,8 @@ I'm excited by the lineup of goals we have for this next cycle. See you on the o
141141

142142
**What has happened?**
143143

144-
* [@Ding](https://github.com/dingxiangfei2009) opened a [PR#142518](https://github.com/rust-lang/rust/pull/142518) that implements the [in-place initialization experiment](https://github.com/rust-lang/lang-team/issues/336).
145-
* @Ding is working on an experimental implementation ([PR#143527](https://github.com/rust-lang/rust/pull/143527)) for `arbitrary_self_types`.
144+
* [Ding](https://github.com/dingxiangfei2009) opened a [PR#142518](https://github.com/rust-lang/rust/pull/142518) that implements the [in-place initialization experiment](https://github.com/rust-lang/lang-team/issues/336).
145+
* Ding is working on an experimental implementation ([PR#143527](https://github.com/rust-lang/rust/pull/143527)) for `arbitrary_self_types`.
146146
* Ding opened a PR to Clang (a C frontend for LLVM): [Queries on GCC-style inline assembly statements](https://github.com/llvm/llvm-project/pull/143424) and got it merged.
147147
* [@ojeda](https://github.com/ojeda) opened two Rust for Linux goals for the next period:
148148
* <https://github.com/rust-lang/rust-project-goals/pull/347>
@@ -604,8 +604,7 @@ Current status:
604604
<!-- this comment helps to convince the markdown parser to do the right thing -->
605605

606606
Current status:
607-
- @joshtriplett authored RFCs for both [attribute macros](https://github.com/rust-lang/rfcs/pull/3697) and [derive macros](https://github.com/rust-lang/rfcs/pull/3698).
608-
- After some further iteration with the lang team, both RFCs were accepted and merged.
607+
- @joshtriplett authored RFCs for both [attribute macros](https://github.com/rust-lang/rfcs/pull/3697) and [derive macros](https://github.com/rust-lang/rfcs/pull/3698). Both were accepted and merged.
609608
- @joshtriplett, @eholk, and @vincenzopalazzo did some successful group-spelunking into the implementation of macros in rustc.
610609
- @joshtriplett [rewrote the `macro_rules!` parser](https://github.com/rust-lang/rust/pull/143070/), which enabled future extensibility *and* resulted in better error messages. This then enabled several follow-up refactors and simplifications.
611610
- @joshtriplett wrote a PR implementing attribute macros (review in progress).
@@ -755,18 +754,18 @@ The last update for this project-goal period! I have continued to work on the gp
755754

756755
**Key developments:**
757756

758-
1) My memory-movement PR got reviewed and after a few iterations landed in nightly. That means you can now don't even have to build your own rustc to move data to and from a GPU (with the limitations mentioned in my previous post). As part of my PR, I also updated the rustc-dev-guide: https://rustc-dev-guide.rust-lang.org/offload/installation.html
757+
1) My memory-movement PR got reviewed and after a few iterations landed in nightly. That means you now don't even have to build your own rustc to move data to and from a GPU (with the limitations mentioned in my previous post). As part of my PR, I also updated the rustc-dev-guide: <https://rustc-dev-guide.rust-lang.org/offload/installation.html>.
759758

760-
2) Now that the host (CPU) code landed, I looked into compiling rust kernels to GPUs. When experimenting with the amdgcn target for rustc I noticed a regression, due to which all examples for that target failed. I submitted a small patch to fix it. It landed a few days ago, and prevents rustc from generating f128 types on AMD GPUs: https://github.com/rust-lang/rust/pull/144383
759+
2) Now that the host (CPU) code landed, I looked into compiling rust kernels to GPUs. When experimenting with the amdgcn target for rustc I noticed a regression, due to which all examples for that target failed. I submitted a small patch to fix it. It landed a few days ago, and prevents rustc from generating f128 types on AMD GPUs: <https://github.com/rust-lang/rust/pull/144383>.
761760

762-
3) I looked into HIP and OpenMP (managed/kernel-mode) examples to see what's needed to launch the kernels. I should already have most of the code upstream, since it landed as part of my host PR, so I think I should soon be able to add the remaining glue code to start running Rust code on GPUs. https://github.com/rust-lang/rust/pull/142696.
761+
3) I looked into HIP and OpenMP (managed/kernel-mode) examples to see what's needed to launch the kernels. I should already have most of the code upstream, since it landed as part of my host PR, so I think I should soon be able to add the remaining glue code to start running Rust code on GPUs. <https://github.com/rust-lang/rust/pull/142696>.
763762

764-
4) The main PR of @KMJ-007 is up, to start generating typetrees for Enzyme, the backend of our std::autodiff module. Enzyme sometimes wants more information about a type than it can get from LLVM, so it either needs to deduce it (slow), or it will fail to compile (bad). In the future we hope to lower MIR information to Enzyme, and this is the first step for it. I just submitted the first round of reviews: https://github.com/rust-lang/rust/pull/142640
763+
4) The main PR of @KMJ-007 is up, to start generating typetrees for Enzyme, the backend of our std::autodiff module. Enzyme sometimes wants more information about a type than it can get from LLVM, so it either needs to deduce it (slow), or it will fail to compile (bad). In the future we hope to lower MIR information to Enzyme, and this is the first step for it. I just submitted the first round of reviews: <https://github.com/rust-lang/rust/pull/142640>
765764

766765
5) The main PR of @Sa4dUs is up, it replaces my historically grown middle-end with a proper rustc-autodiff-intrinsic. This allows us to remove a few hacks and thus makes it easier to maintain. It will also handle more corner-cases, and reduces the amount of autodiff related code in rustc by ~400 lines. I also gave it a first review pass.
767766

768767

769-
I also submitted an updated project-goal to finish the `std::offload` module, to the point where we can write an interesting amount of kernels in pure (nightly) Rust and launch them to GPUs. All new project goals are supposed to have "champions" from the teams they are related to, which in the case of my autodiff/batching/offload work would be t-compiler and t-lang (see Niko's blog post for more details). Since I joined the compiler team a while ago I can now champion for it myself on the compiler side, and @traviscross volunteered to continue the support on the language side, thank you!
768+
I also submitted an updated project-goal to finish the `std::offload` module, to the point where we can write an interesting amount of kernels in pure (nightly) Rust and launch them to GPUs. All new project goals are supposed to have "champions" from the teams they are related to, which in the case of my autodiff/batching/offload work would be t-compiler and t-lang (see [Niko's blog post for more details](/inside-rust/2025/06/23/project-goals-2025h2-call-for-submissions/)). Since I joined the compiler team a while ago I can now champion for it myself on the compiler side, and @traviscross volunteered to continue the support on the language side, thank you!
770769

771770

772771
<!-- markdown separator -->
@@ -1285,9 +1284,9 @@ Key developments: https://github.com/rust-lang/rust/issues/143352 proposes an ex
12851284

12861285
**Final monthly update!**
12871286

1288-
- Even more optimizations have been achieved on the documentation lints front. https://github.com/rust-lang/rust-clippy/pull/15030. (-6.7% on `bumpalo`).
1287+
- Even more optimizations have been achieved on the documentation lints front. <https://github.com/rust-lang/rust-clippy/pull/15030> (-6.7% on `bumpalo`).
12891288

1290-
- The 3rd heaviest function was optimized away by 99.75%, along with the [`strlen_on_c_strings`](https://rust-lang.github.io/rust-clippy/master/index.html#strlen_on_c_strings) lint. This gives us about a 15% optimization on `tokio`. https://github.com/rust-lang/rust-clippy/pull/15043
1289+
- The 3rd heaviest function was optimized away by 99.75%, along with the [`strlen_on_c_strings`](https://rust-lang.github.io/rust-clippy/master/index.html#strlen_on_c_strings) lint. This gives us about a 15% optimization on `tokio`. <https://github.com/rust-lang/rust-clippy/pull/15043>.
12911290

12921291
- As a minor improvement, we now instantiate a lot less types on `unit_return_expecting_ord` (89% less calls in some benchmarks). This saves us a lot of locks on the type interner.
12931292

@@ -1494,7 +1493,7 @@ Key developments:
14941493

14951494
Key Developments: **Goal Complete.**
14961495

1497-
The FLS is now an independent repository within the Rust Project, not relying on imported Ferrocene packages for building (we have brought them in locally). A version of the FLS has been published at https://rust-lang.github.io/fls using the new build process. The content changes were mostly non-normative at this point, but we have officially published the first rust-lang owned release of the FLS.
1496+
The FLS is now an independent repository within the Rust Project, not relying on imported Ferrocene packages for building (we have brought them in locally). A version of the FLS has been published at <https://rust-lang.github.io/fls> using the new build process. The content changes were mostly non-normative at this point, but we have officially published the first rust-lang owned release of the FLS.
14981497

14991498
Next steps: Continue adding/modifying appropriate content for the FLS moving forward. Determine any potential H2 2025 spec-related project goals.
15001499

@@ -1537,9 +1536,10 @@ Next steps: Continue adding/modifying appropriate content for the FLS moving for
15371536
<!-- markdown separator -->
15381537

15391538

1540-
We're almost done with the refactoring thanks again to @makai410 who is part of the GSoC. We are now considering renaming the crate before publishing, if you have any suggestion, please post it in https://rust-lang.zulipchat.com/#narrow/channel/320896-project-stable-mir/topic/Renaming.20StableMIR/with/520505712.
15411539

1542-
Finally, we're designing the test and release automation.
1540+
We're almost done with the refactoring thanks again to @makai410 who is part of the GSoC.
1541+
1542+
The `stable_mir` crate is now `rustc_public`. We are now finalizing the infrastructure and working on a compiler MCP. We should be ready to publish version 0.1 in the second half of the year. Thanks to everyone who helped, especially @makai410, who did most of the work.
15431543

15441544

15451545
<!-- markdown separator -->
@@ -1558,10 +1558,9 @@ Finally, we're designing the test and release automation.
15581558
<blockquote>
15591559

15601560
<!-- this comment helps to convince the markdown parser to do the right thing -->
1561+
We're almost done with the refactoring thanks again to @makai410 who is part of the GSoC. We are now considering renaming the crate before publishing, if you have any suggestion, please post it in https://rust-lang.zulipchat.com/#narrow/channel/320896-project-stable-mir/topic/Renaming.20StableMIR/with/520505712.
15611562

1562-
We're almost done with the refactoring thanks again to @makai410 who is part of the GSoC.
1563-
1564-
The `stable_mir` crate is now `rustc_public`. We are now finalizing the infrastructure and working on a compiler MCP. We should be ready to publish version 0.1 in the second half of the year. Thanks to everyone who helped, especially @makai410, who did most of the work.
1563+
Finally, we're designing the test and release automation.
15651564

15661565
<!-- this comment helps to convince the markdown parser to do the right thing -->
15671566

@@ -1652,9 +1651,9 @@ The `stable_mir` crate is now `rustc_public`. We are now finalizing the infrastr
16521651
We made further progress on the new benchmarking scheme. The side of the website is nearing MVP status, currently we are switching focus on the side of the collector tha truns the benchmarks.
16531652

16541653
Some notable PRs:
1655-
- Benchmark request queue for try builds and release artifacts (https://github.com/rust-lang/rustc-perf/pull/2166, https://github.com/rust-lang/rustc-perf/pull/2192, https://github.com/rust-lang/rustc-perf/pull/2197, https://github.com/rust-lang/rustc-perf/pull/2201).
1656-
- Splitting of benchmark requests into benchmark jobs, including backfilling (https://github.com/rust-lang/rustc-perf/pull/2207).
1657-
- Benchmark sets (https://github.com/rust-lang/rustc-perf/pull/2206).
1654+
- Benchmark request queue for try builds and release artifacts (<https://github.com/rust-lang/rustc-perf/pull/2166>, <https://github.com/rust-lang/rustc-perf/pull/2192>, <https://github.com/rust-lang/rustc-perf/pull/2197>, <https://github.com/rust-lang/rustc-perf/pull/2201>).
1655+
- Splitting of benchmark requests into benchmark jobs, including backfilling (<https://github.com/rust-lang/rustc-perf/pull/2207>).
1656+
- Benchmark sets (<https://github.com/rust-lang/rustc-perf/pull/2206>).
16581657

16591658

16601659
<!-- markdown separator -->

0 commit comments

Comments
 (0)