Modverse Weekly - Issue 32

May 3, 2024

Jack Clayton

AI Developer Advocate

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