# Compiler Team Sprints (pnkfelix, wesleywiser) --- - Review some compiler-related sprints from 2021 - Presentation Goal: Share outcomes (positive and negative) and lessons learned - Mull over: How to best direct synchronous coding efforts like sprints? --- ## Sprints - Shrinkmem sprint ([retrospective mtg](https://zulip-archive.rust-lang.org/238009tcompilermeetings/97737steeringmeeting20210319memshrinkretro.html)) - wg-polonious sprints --- ## Shrinkmem - In the first week of March, the compiler team hosted a "shrinkmem" sprint. - Shrinkmem Goal: reduce the amount of memory the compiler uses to bootstrap itself. - Why: for some contributors, build times can become unbearable due to swapping. - Current mitigation: reduce number of concurrent jobs, but this has other downsides. --- ## Shrinkmem Positives - Contributors came up with some interesting ideas to try out. <!-- Some people looked at enabling more MIR optimizations in --release, our CGU partitioning, size of rustc data structures, etc. --> --- ## Shrinkmem Positives - We were able to reduce max-rss in some of our perf.rlo tests. --- ## Shrinkmem Positives - The video chat calls were generally a hit and a lot of fun! <!-- @oli set up a video call on jitsi --> --- ## Shrinkmem Positives - We now have docs in the rustc dev guide for doing memory profiling. <!-- Ryan Levick and Wesley Wiser wrote docs for using Windows Performance Analyzer to profile memory allocation. --> --- ## Shrinkmem Negatives - We didn't start the week with a list of tasks to work on, so most of the first day was spent coming up with that list. --- ## Shrinkmem Negatives - The video calls were ad-hoc and due to timezones, some people didn't even know when they were happening. --- ## Shrinkmem Negatives - Some of the ideas we spent the week working on never panned out. <!-- The CGU partitioning work in particular yielded interesting data but we were not able to get a win from it. --> --- ## Shrinkmem Negatives - Some people felt that a week was too short a sprint to make meaningful progress on a large goal like this. <!-- Two weeks probably would have yielded better results. --> --- ## wg-polonious - The Polonious working group has done a few sprints and have generally achieved positive results! - Sprints were 4 hours a day for one week. - Information in this section was gathered from wg-polonious members. --- ## wg-polonious Positives - Working on something participants were already familiar with kept productivity high during the sprint. --- ## wg-polonious Positives - The sprints were mostly a way to schedule dedicated time to work on the existing set of items. --- ## wg-polonious Positives - Several participants pointed to the concrete set of work items prior to the start of the sprint as a key component of the success of the sprints. --- ## wg-polonious "Negatives" ![air quotes](https://thumbs.gfycat.com/ThreadbareFrenchCobra-max-1mb.gif) - "the biggest problem is them [sprints] not happening more" - Niko Matsakis --- ## What we're going to do next time - Plan, plan, plan! --- ## What we're going to do next time - We need to start the week with a set of tasks already in mind and people willing to work on them. --- ## What we're going to do next time - Do a better job of coordinating conversation and status updates with the participants. --- ## What we're going to do next time - Try to find a way to offer mentoring for interested individuals. --- ## Social hours - A lot of people expressed interest in having a regular video call just to chat with other people work on the project. - Maybe we should try to set something up on a recurring basis?
{"metaMigratedAt":"2023-06-16T00:18:48.211Z","metaMigratedFrom":"YAML","title":"4: Compiler team sprint retrospective","breaks":true,"contributors":"[{\"id\":\"b859b5b9-394b-4459-a237-20c3fd40c185\",\"add\":3994,\"del\":678},{\"id\":\"ebc76d8d-2914-465e-bd23-99641782eac2\",\"add\":526,\"del\":151},{\"id\":\"27d8f2ac-a5dc-4ebe-8c31-cc45bcd8447e\",\"add\":161,\"del\":60}]"}
    858 views
   owned this note