This month in Julia world - 2024-12

A monthly newsletter, mostly on julia internals, digestible for casual observers. A biased, incomplete, editorialized list of what I found interesting this month, with contributions from the community.

“Internals” Fora and Core Repos (Slack/Zulip/Discourse/Github):

  • Julia’s compiler has long had the ability to detect if memory allocations escape local scopes, and optimize them away in some cases when it can be proven they don’t escape. However, this existing ‘escape analysis’ in Julia has been limited and hasn’t actually enabled much optimisation. A new overhaul of escape analysis aims to be more accurate and open the door for implementing further memory optimisations in the future.
  • Support for the independent external experimental Garbage Collector framework MMTk is almost a reality.
  • Another discussion on current and future ways to work with interfaces and traits in Julia. While these discussions are always informative, be careful as they also can be a bit bikesheddy.
  • A small helpful discussion on when does @inbounds increase performance?

In search of contributors and new maintainers (specify novice/moderate/expert and internals/domain background necessary):

Ecosystem Fora, Maintenance, and Colab Promises (Slack/Zulip/Discourse/Github):

Julia Autodiff ecosystem:

Notes from other ecosystems:

See also: French community newsletter, community calendar, minutes of triage meetings

Please feel free to post below with your own interesting finds, or in-depth explanations, or questions about these developments.

If you would like to help with the draft for next month, please drop your short, well formatted, linked notes in this shared document. Some of it might survive by the time of posting

55 Likes

A fast Julia re-implementation of the low-rank Apollo optimizer from a very recent paper - (Apollo: SGD-like memory, ADAMW-level performance) by Meta. :slight_smile:

Apollo is a memory-efficient optimizer designed for large language model (LLM) training, offering significant memory savings and throughput improvements while maintaining competitive performance with AdamW.

Original Post: @benjmurrell.bsky.social on Bluesky

9 Likes