May 3, 2024

Modverse #32

Yesterday marked Mojo🔥's first birthday 🎂, launching last year on May 2, 2023. We launched with just an online Jupyter environment and have since released the SDK locally for macOS and Linux on arm64 and x86, and bought up our inference and serving stack MAX⚡️. Yesterday we released Mojo and MAX 24.3 to mark the occasion, along with the first community contributions, 32 of which made it into the official changelog. We're so excited to go on this journey out in the open with our amazing community, thank you to everyone who has been participating!

Blogs, Tutorials, and Videos

Awesome Mojo

  • Vladyslav updated mojo-atol-simd and it's now up to 20% faster than the stdlib.
  • Benny added flag features to his Mojo CLI library prism.
  • Alex updated mojo-pytest with support for the latest 24.3 release.
  • MadAlex has continued development on his numpy-like Mojo library with up to 6x better performance: NuMojo.

MAX Engine

  • ONNX
    • 20% speedup for llama2 & mistral-7b
    • 20% speedup on stable-diffusion
    • 25-45% speedups on image encoders
    • 25-45% speedups on dynamically-quantized transformers
  • PyTorch
    • 20% speedups for mistral-7b
    • 20% speedup on llama2
    • 25% speedup on dlrm-rm2-multihot
    • 25% speedup on replit-3b

Open Source Contributions

  • Gabriel had 10 PRs merged!
    • #2454: Allow StringRef to work with both Int8 and UInt8
    • #2451: Removed FileCheck from the dev guide
    • #2448: Allow String() to be created from UInt8 ptr and List too
    • #2407: Use UnsafePointer in builtin_list.mojo
    • #2405: Use UnsafePointer in _cpython.mojo
    • #2404: Use UnsafePointer in info.mojo and some test files
    • #2403: Use UnsafePointer in hex|io|os.mojo
    • #2402: Replace Pointer by UnsafePointer in hash|simd.mojo
    • #2361: Add repr() function and Representable trait
    • #2024: Remove FileCheck in test_object.mojo and removed object.print()
  • #2364 mikowals: add b64decode
  • #2315 mikowals: SIMD.shuffle with StaticIntTuple mask
  • #2294 lsh: Create InlineArray type
  • #2190 arvindavoudi: Add new ComparableCollectionElement trait and index(list, value, start, end) function APIs

Sign up for our newsletter, Modverse

Get all our latest news, announcements and updates delivered directly to your inbox. Unsubscribe at anytime.

Thank you for your submission.

Your report has been received and is being reviewed by the Sales team. A member from our team will reach out to you shortly.

Thank you,

Modular Sales Team

Jack Clayton

AI Developer Advocate

Jack started his career optimizing autonomous truck software for leading mining companies, including BHP and Caterpillar. Most recently he was designing computer vision software, putting AI inference pipelines into production for IDVerse. He is enormously passionate about the developer community, having been a Rust, Go, Python and C++ developer for over a decade. Jack enjoys making complicated topics simple and fun to learn, and he’s dedicated to teaching the world about Mojo 🔥.