[HN Gopher] Outperforming Rust DNA sequence parsing benchmarks b...
___________________________________________________________________
Outperforming Rust DNA sequence parsing benchmarks by 50% with Mojo
Author : _diyar
Score : 34 points
Date : 2024-02-07 16:58 UTC (6 hours ago)
(HTM) web link (www.modular.com)
(TXT) w3m dump (www.modular.com)
| john-tells-all wrote:
| Given that Mojo is a _very_ Python-compatible language, this is
| incredible! Mojo gives most of the benefits of Python (immense
| ecosystem, short and clear code), with incredible speed.
| seanray wrote:
| Is this comparing normal Rust vs Moji with SIMD? I don't see how
| Mojo can produce faster code than C/C++/Rust. Must all be in the
| implementation details, I feel this is a misleading title if so.
| tripplyons wrote:
| I want to see some comparisons with other python libraries like
| numpy, jax, and numba.
| dark__paladin wrote:
| Everything about Mojo is suspicious to me. Maybe I'm paranoid,
| but Modular has made wild performance claims in the past without
| releasing much information in regard to implementation [citation
| needed], plus leaning so far into the AI stuff smells of a
| marketing-first project IMO.
| chrislattner wrote:
| I think you're being paranoid here :-). I encourage you to
| download mojo and try it out. This code is all OSS, so go nuts
| validating it yourself. If you'd like to know how mojo works
| there is a lot of information on the Modular blog:
|
| https://www.modular.com/blog
|
| e.g. these might be interesting:
|
| https://www.modular.com/blog/mojo-llvm-2023
| https://www.modular.com/blog/what-is-loop-unrolling-how-you-...
|
| If you still have doubts, you could join the 20,000+ people in
| discord chatting about Mojo stuff:
| https://discord.com/invite/modular
|
| -Chris
| andy99 wrote:
| The performance claims felt cherry picked which I found
| offputting. It seems like the reality is that it makes some
| kinds of optimizations easier, which has value in a space like
| ML where people don't want to focus on optimization.
|
| I think your suspicion may also come from it not being open
| source which is also a non-starter for me. My hope is if they
| have some good ideas that can be copied into open source
| projects or it could be open sourced itself.
| fulafel wrote:
| Any theories why the compiler didn't manage to use SIMD without
| the manual SIMD code?
| chrislattner wrote:
| LLVM has an autovectorizer which is quite good, but such tech
| is limited because (eg) it can't change memory layout.
|
| Speaking as someone who has spent more than 20 years writing
| compilers (e.g. LLVM, MLIR, etc), my opinion is that
| autovectorizers are a class of tech that are best applied to
| get speedups on legacy code bases. If you care about
| performance a lot, you shouldn't use them IMO - they are
| unpredictable and have performance cliffs.
|
| -Chris
| Croisonetto wrote:
| The article sheds light on Mojo's potential, but with every such
| article, I'm cautious not to get overly hyped. Many key factors
| will come into play; long-term support and community growth will
| be crucial for its adoption. Additionally, I'm curious about the
| learning curve for Python developers looking to switch or
| integrate Mojo into their workflows. Still looking forward to all
| new information about Mojo's development and its source code
| getting published someday soon
| spoder wrote:
| Surely the Mojo implementation doesn't miss something like maybe
| error handling?
| Isomorpheus wrote:
| Since Chris is lurking: will Mojo on GPUs be more like using Jax
| (relying on compiler), Triton (more control, but abstracted), or
| more like CUDA (close to maximal control)? Combination? Nvidia
| and AMD support out of box?
| chrislattner wrote:
| Modular is enabling all of the above for different audiences.
| MAX provides an operator-graph level abstraction like PyTorch
| or JAX have, and we expect a bunch of high level libraries like
| nn.module to get built out over time by the community. You can
| also go directly to the GPU with a classical CUDA-like
| programming model for maximal control.
|
| In between we have something we're cooking that I think will be
| pretty interesting for GPU kernel authors, but it isn't public
| yet. :-)
|
| The nice thing about this is that it is one system that scales,
| instead of a bunch of different/inconsistent tech built by
| different teams over many years, held together with duct tape.
| Simple and consistent makes it much easier to do the kinds of
| research and experimentation that power AI ecosystem.
| Isomorpheus wrote:
| Thanks for the reply. Sounds exciting, looking forward to the
| future of Modular!
___________________________________________________________________
(page generated 2024-02-07 23:02 UTC)