AI Engineer World's Fair 2026

Taming the AI Hardware Cambrian Explosion — Abdul Dakkak, Modular

Read the talk

Taming the AI Hardware Cambrian Explosion

Abdul Dakkak explains how Modular connects Mojo kernels, MAX inference and distributed deployment—and why its performance comparisons need to be read alongside their workloads, hardware and costs.

From a talk by Abdul Dakkak

At a glance

Ideas worth remembering

  • Modular connects three levels of work: Mojo implements portable device code, MAX executes and serves models, and Cloud operates distributed endpoints.

  • Mojo’s performance strategy combines portable kernel abstractions with low-level access; open kernels let developers test the claims on their own workloads.

  • MAX keeps model authoring in Python while exposing multi-GPU, multi-node and heterogeneous execution, including separate hardware for prefill and decode.

  • Time to first token, throughput and baseline-relative speedups answer different questions. Hardware price must enter the comparison before drawing a cost conclusion.

  • The subsecond image example makes the application stake concrete: faster execution shortens the wait between a changed prompt and its visual result.

More chips leave software with more choices to manage

Compute can be booked out for years while the choice of processors keeps expanding. That is the opening tension in Abdul Dakkak’s account of Modular: NVIDIA GPU generations coexist with hardware from Intel, Arm and Apple, each covering different needs. More hardware creates more possible places to run a model. It also creates a programming problem: how much software must change to use each one?

Hardware choices travel upward through the software stack. Dakkak introduces a diagram of vLLM’s NVIDIA and AMD support to illustrate that complexity; adding another hardware target adds more implementation choices to manage. Production deployments then multiply the stacks themselves, using vLLM, SGLang, TensorRT-LLM or llama.cpp. The useful question for the diagram is where hardware-specific dependencies enter an otherwise shared inference system.

Modular’s response is to rebuild the stack around a common hardware layer. This commits the company to solving several problems together: writing fast device code, executing models and operating inference across machines. A common interface alone would leave the performance work underneath unresolved.

0:130:39
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:13 · section reference included

Mojo, MAX and Cloud divide the work

The proposed stack has three layers with different jobs. Mojo supplies a Python-like systems language targeting CPUs, GPUs and other accelerators. MAX uses Mojo kernels to execute models across text, image, video and speech workloads. Modular Cloud handles deployment and distributed serving decisions: choosing hardware, routing requests, offloading the key-value cache and arranging distributed or disaggregated inference.

What depends on what? The stack below separates language and kernel implementation from model execution and endpoint operation. MAX is built on Mojo; Cloud sits above those capabilities to operate inference across machines. These are software dependencies, rather than three consecutive stages that every request must visibly traverse. Dakkak describes deployment on premises, in Modular’s cloud or in a customer’s cloud environment.

The implementation beneath a distributed endpoint

MojoSystems programming and kernels targeting CPUs, GPUs and other accelerators.
MAXModel execution and inference using Mojo kernels across several modalities.
Modular CloudEndpoint deployment and distributed operation, with access to MAX and Mojo tuning variables.
Arrows indicate that one software layer is built on the capabilities below it; they do not depict request routing.
Read the diagram as text
  • Mojo. Systems programming and kernels targeting CPUs, GPUs and other accelerators.
  • MAX. Model execution and inference using Mojo kernels across several modalities.
  • Modular Cloud. Endpoint deployment and distributed operation, with access to MAX and Mojo tuning variables.
  • MAX → Mojo: Built with Mojo kernels.
  • Modular Cloud → MAX: Operates and exposes tuning of the inference stack.
2:002:31
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

2:00 · section reference included

Portable kernels still need low-level access

Mojo occupies the systems-programming role associated with C++, Rust and CUDA C++, while presenting Python-like syntax. The ambition is familiar programming across accelerators without giving up the control needed to compete with CUDA performance. Syntax lowers the entry cost; hardware access determines how far optimization can go.

Dakkak places existing approaches along three competing dimensions—usability, performance and portability:

  • CUDA and ROCm: Strong performance, with more demanding programming and hardware-specific work.
  • OpenCL: Broad portability, with compromises in usability and performance in his comparison.
  • Triton: A useful balance of portability and usability, though he characterizes its performance as roughly 70% without specifying a workload or denominator.
  • Mojo: Portable kernel abstractions combined with low-level access, so programmers can keep tuning when a higher-level abstraction stops being sufficient.

The kernels are the concrete test of that design. Dakkak reports matrix-multiplication results ahead of cuBLAS and hipBLAS, and attention kernels ahead of FlashAttention 4 and AITER. Practically all of Modular’s kernels, he says, are open source and can be benchmarked on a reader’s own machine. The recording does not establish the shapes, precisions or hardware configurations behind these kernel comparisons, so they support workload-specific performance claims rather than a universal ranking.

The language’s release status is separate from the kernels’ availability. At the time of the recording, Mojo 1.0 and API stabilization had been announced, while the release and open sourcing of Mojo itself were promised for the following months. Open kernels therefore did not yet imply an already open-source language implementation.

3:314:01
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

3:31 · section reference included

MAX brings model execution and optimization into one framework

MAX addresses the next layer of the problem. Dakkak’s criticism of PyTorch is historical: its original design predates today’s generative-inference requirements. Systems such as vLLM and SGLang supplied serving mechanisms including KV-cache management and PagedAttention, but those additions also left teams assembling more layers around the framework.

MAX combines graph compilation with eager execution that is portable across devices. Its compiler also understands Mojo programs, allowing fusion across work expressed in those programs. Fusion brings operations together in the compiled execution; the architectural point is that optimization can reach into the kernel language rather than treating it as an unrelated implementation beneath the model framework. Eager execution remains available for development and debugging.

Development, optimization and serving are intended to live in one system. Dakkak claims support for thousands of model architectures and provides OpenAI-compatible endpoints for familiar client access. The endpoint interface and the internal execution machinery solve different adoption problems: applications can keep a familiar request format while model developers work within MAX.

6:176:45
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

6:17 · section reference included

Python model definitions extend across GPUs and nodes

Model development stays in Python. Developers import modules, compose them into a model and use eager execution to debug. Dakkak points to a model-definition example as evidence that this should feel familiar to a PyTorch programmer. The useful thing to inspect is how imports and composition express the model, rather than assuming that the systems language must also become the model-authoring language.

The execution target can then expand beyond one device. MAX APIs describe models running across multiple GPUs and multiple nodes. They can also express heterogeneous placement: Dakkak’s concrete example puts prefill on hardware X and decode on hardware Y. Those are distinct phases of language-model inference, so the placement choice can follow the phase rather than forcing the entire model-serving operation onto one kind of processor. The example establishes the supported placement idea without detailing its scheduling or cross-device transfer implementation.

8:148:44
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

8:14 · section reference included

A cloud endpoint with the tuning controls exposed

Modular Cloud is described as a “glass box”: the endpoint exposes variables from MAX, Mojo and the layers between them. Cloud Lab lets users experiment with parameters and choose a point suited to a particular model and workload. That matters because deployment is already a collection of decisions about machines, routing and cache handling; a convenient endpoint does not remove the need to make those decisions well.

The basic usage path is familiar: select a model, obtain an API key and place it in an HTTP request. More specialized deployments can use dedicated endpoints, fine-tuned models or custom speculative decoders. Bring-your-own-cloud deployment provides another operating option. The claimed benefit is flexibility across both models and hardware, with cost reduction as a workload-dependent outcome of those choices.

3:019:30
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

9:30 · section reference included

Read latency, throughput and GPU cost separately

The benchmark sequence turns the architecture into measurable claims. Dakkak introduces comparisons against vLLM or SGLang configurations and then moves between language models, image generation and different GPU vendors. These are reported results from the recording; the full workload settings and measurement protocols are not established here, which limits comparisons beyond the named cases.

For Kimi K2.5, Modular reports a 5.5× improvement in time to first token relative to vLLM, alongside 1.5× throughput measured in tokens per minute per GPU on B200. These metrics answer different questions: time to first token concerns how long a user waits for output to begin, while throughput concerns how much output the hardware serves. The two multipliers should remain separate. A useful inspection of the benchmark slide would look for the conditions attached to each.

The Kimi K2.5 slide separates the 5.5× P50 TTFT result from 1.5× throughput (TPM/GPU), with vLLM as the comparison and NVIDIA B200 in the configuration.Open full source frame
The Kimi K2.5 slide separates the 5.5× P50 TTFT result from 1.5× throughput (TPM/GPU), with vLLM as the comparison and NVIDIA B200 in the configuration.
Kimi-K2.5 on MAX
Modular MAX vs. vLLM

Configuration:
Kimi-K2.5
NVIDIA B200

P50 TTFT
Modular    239 ms
vLLM       1,303 ms
5.5x

Throughput (TPM/GPU)
Modular    625k
vLLM       419k
1.5x

For FLUX.2, Dakkak reports about 7× faster execution than torch.compile with Diffusers. He uses the image-generation result to emphasize that MAX covers several modalities within the same framework: text, image, audio and video generation share the stack rather than requiring a separate framework for each category.

The AMD comparison prompts an important correction. Dakkak reports a 4× improvement on MI355 systems, then warns against concluding that the 7× result is automatically the better purchase. Each speedup is relative to a baseline, and operating cost also depends on GPU price. He characterizes AMD hardware as usually about 30% cheaper than the NVIDIA equivalent. The practical comparison therefore needs delivered performance and hardware cost together; the multipliers alone do not establish total cost of ownership.

11:2111:51
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

11:21 · section reference included

Subsecond images turn speed into an interaction

Dakkak next describes Artificial Analysis independently verifying results through a partnership with Modular. For FLUX.2 dev, he reports roughly 3× the speed of the next competitor in the comparison shown. He explicitly attributes this to execution performance rather than distillation or quantization. That is a consequential distinction: the claimed gain comes from running the model more efficiently, rather than changing it through those techniques.

What does that speed let a user do? In the demonstration Dakkak describes, someone pastes prompts and images appear in under a second—often around 0.3 seconds. The observable relationship to inspect is the prompt change, the resulting image and any displayed timing. He also describes a booth demonstration that combines a prompt with a video feed and renders the result. The application consequence is shorter waiting between an input and a visual response; the recording does not establish a sustained frame rate or a complete end-to-end latency definition.

The final model comparison is Gemma 4. Dakkak reports roughly 6× the speed of SambaNova in the presented comparison, including a hardware-accelerator provider among the competitors. This remains a separate model-serving result, rather than another measurement of the image demonstration. He closes the performance sequence by saying further optimizations are still being added.

13:2213:52
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

13:22 · section reference included

The invitation is to inspect and benchmark the stack

The ending returns to what developers can inspect. Dakkak says Modular has open-sourced more than 700,000 lines of kernel code, its model definitions and MAX Serve. Those expose different parts of the implementation: kernels perform the device work, model definitions express the computation and the serving layer makes it available to applications.

For developers unfamiliar with Mojo or MAX, Modular also offers AI skills intended to help port code from familiar languages. The team’s hiring spans low-level kernel engineering through Kubernetes work, reflecting how much of the system sits between an individual device operation and a deployed service.

The practical starting point is pip install modular. Dakkak’s closing invitation is to try the software and validate the results. For a prospective user, the useful test follows the distinctions made throughout the talk: choose the actual model and hardware, measure the latency or throughput the application needs, and include hardware cost when deciding where to deploy.

15:1815:47
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

15:18 · section reference included

Read the complete timestamped transcript
  1. 0:13

    Uh, so let's get started. Uh, hi, my name is Abdul. Uh, uh, I'm from Modular. Uh, today I'm gonna be talking about what Modular is and what value it brings to you. So as you probably know, today there is a huge crunch, uh, for compute, and there's, like, no alleviation in sight. A lot of these things are booked for the next few years.

  2. 0:39

    But there's also a kind of... As a result, you have an explosion of hardware. We call it like a Cambrian explosion. You have NVIDIA providing, you know, a few generations of GPUs, the Intels, the ARMs, the Apples, everything, uh, i-is, is present. They all have some niches, uh, that they cover, but the problem is that you have to ask is: How do you program all of these, uh, systems?

  3. 1:06

    Now, if you look at the current software as it is today, um, it's kind of a mess as well, and that's because a lot of these hardware choices bubble up from the d-- you know, from down under, uh, into upwards into the stack. So this is a diagram showing how, uh, vLLM supports both NVIDIA and, uh, AMD. If you add extra hardware, the, the, the diagram becomes even more difficult. Now, today, folks actually,

  4. 1:36

    uh, deploy not only using vLLM, but also SGLang, TRT-LLM, uh, llama.cpp, et cetera. So at Modular, we thought, "Well, this is kind of a huge mess. Let's re-architect the, the, uh, the stack from the ground up and let's build a unifying layer, uh, that unifies all the hardware, so everything runs on our stack."

  5. 2:00

    To realize this, you have to actually go back to first principles and build a complete software stack with portability, performance, and programmability in mind. So at the bottom-most level, we've developed Mojo, a heterogeneous programming language that's targeted towards AI, uh, as well as general purpose programming, uh, as well. It's kind of Pythonic in style, so folks that actually know Python today pretty much know ninety percent of Mojo.

  6. 2:31

    Uh, so we've built that language, and that targets both, uh, CPUs, GPUs, as well as other accelerators. On top of that, we leverage Mojo to build Max, our, uh, inference engine. Uh, so that provides you with, uh, AI inference for both-- for a bunch of different modalities like image, video, speech, as well as text. We've built all our kernels underneath the hood t- that are built on top of Mojo. Finally, today's AI

  7. 3:01

    inference is distributed, so you actually need a cloud solution as well. Uh, you need to pick which hardware to deploy your model on, how to route, uh, different user requests to different, uh, machines, how to do KV cache offloading and, and, and distributed inference and disaggregated inference, uh, to be able to serve the model at the speed and the cost that the folks expect. So putting it all together, we built the modular platform that's fully programmable,

  8. 3:31

    it's hardware abstracted, it's, it's SOTA perf, uh, and then it actually can be deployed both on-prem as well as o-on our cloud as well. So it could be... If you have a cloud, uh, uh, setup, you can actually download the modular cloud and, and deploy it there. So let me kind of dig into each one a-at a time, each part of the stack. So the first is Mojo. Uh, so Mojo, as I mentioned, is a Pythonic system programming language. It's not

  9. 4:01

    unlike C++ Rust or CUDA C++. The thing is what it enables is, uh, programmability a-across different accelerators. It's blazing fast. It's-- Again, it actually competes with CUDA in terms of performance. Uh, and you can think of it as the best way to program CPUs and GPUs within a Python-like programming language. In terms of how we think about Mojo, uh, you know, you can

  10. 4:32

    think about there's t-three different quadrants: usability, performance, and portability. ROCm and CUDA-- uh, and CUDA gives you massive performance, but they sacrifice on both usability and programmability. A lot of folks use agents to actually program these system nowadays. OpenCL back in, you know, a few years ago was popular. It gives you great portability, but it sacrificed on performance and usability. Triton is-- uh, has a good sweet spot that gives you seventy percent of the perf, uh,

  11. 5:02

    but it gives you portability and usability. And Mojo is, is trying to kind of fill the niche of the sweet spot, where it's the best of both worlds. It gives you the abstraction to allow you to write portable kernels and, and, uh, and usable kernels while giving you also the low-level access, uh, to get the maximum performance. We've actually open sourced, uh, practically all of our kernels, so you can actually test this stuff. You can benchmark it on your own machine. Uh, we have

  12. 5:32

    state-of-the-art kernels on NVIDIA, AMD, and other hardware. So to tell you what state-of-the-art is, it means that our matrix multiplication is faster than the cuBLAS, the hipBLAS, everything out there, and it's not by one percent, in some cases by two percent. We have the fastest attention, uh, kernel out there, faster than FlashAttention 4, uh, as well as, like, the AITER and things like that.

  13. 5:59

    Uh, one thing that we've announced, uh, a month ago or so is Mojo 1.0, the stabilization of our APIs. Uh, and we're gonna be releasing Mojo one point O in the next few months, and we're also open sourcing Mojo, uh, in the next few months as well.

  14. 6:17

    Sitting on top of Mojo is Max. So Max is trying to kind of solve a few of the, uh, assumptions that were made, uh, back in the day for PyTorch. PyTorch is about ten years old. It, it was not really designed for the GenAI inference of today. As a result, you have, like, vLLM and SGLang that stepped into the void to give you things like KV cache, PagedAttention, and, and things like that.

  15. 6:45

    And... But all of that kind of, kind of complicated the entire PyTorch ecosystem. A lot of folks don't really, uh, use PyTorch as is. They're resorting to these layers on top.

  16. 6:58

    So think of a new approach, and we call that the Max Framework. So again, it's built from the ground up, uh, with the best technologies, with the best state-of-the-art graph compilers. Uh, the eager mode execution is portable across devices. It understands your Mojo programs to do novel fusion, uh, and it gives you the maximum performance and deployability that you're otherwise not able to do in, in, in regular PyTorch.

  17. 7:26

    So compared to other stacks, uh, this is a single stack that allows you to serve, develop the model, as well as optimize everything in one cohesive, uh, system.

  18. 7:40

    It-- Within Max, we support thousands and thousands of models, in fact, thousands of architectures, uh, everything from Gemma Four to Mis-- uh, MiniMax Three to GLM. Um, so any model that you think about is, is practically supported in, uh, in, in, uh, in Max, and it has the same interface that you'd expect, uh, from what is standard today. So we also provide A-- OpenAI endpoints that you can use, uh, within

  19. 8:10

    the stack.

  20. 8:14

    If you're familiar with, like, PyTorch programming, uh, the figure on the right would... or the left will not be, like, massive departure of your mental model. Uh, you can build a model as you expect. You know, you can import modules. The, uh, programming language for developing models is Python, so that's familiar to folks. Uh, and you can compose, uh, things as, as you, as you, as you, um, as you build them. We also support, like, the eager

  21. 8:44

    execution to enable debugging as well.

  22. 8:49

    Now, the other thing that one has to realize is modern LLMs, uh, are run on across different GPUs and in many cases, multiple nodes. So also Max, the Max APIs provide you with a way to, uh, program multi-GPU system ac-- as well as multi-node systems from within the API, so that the model is natively supported across, uh, different GPUs and different nodes as well.

  23. 9:19

    And this can also be heterogeneous, so there's nothing to stop you from saying the prefill is on hardware X and the decode is on hardware Y.

  24. 9:30

    Finally, layered on top of all of this is the Modular Cloud. So as I mentioned, uh, today's AI inference is distributed. It runs on many, many different machines. Uh, it's heterogeneous. So we provide the Modular Cloud, which is a performance native... You know, we think of it as a glass box because you can actually tinker with all the variables, uh, that are available for you in both Max, Mojo, and everything in between, uh, within

  25. 10:00

    your endpoints. So it provides, it provides endpoint deployment as well as bring your own cloud deployment as well. We also have a Modular Cloud Lab that allows you to experiment with all these different parameters and pick the best point in the parameter frontier that you have for that model or based on your workload as well.

  26. 10:22

    Uh, so in terms of, like, the UI, uh, if you're familiar with, like, any, uh, cloud provider, I mean, it's, it should be pretty familiar. You just go to the website. You click on which model t-- you wanna run. You get an AP-- uh, an, uh, API key, and then you plug that in, uh, to your HTTP request, and, uh, you can run it. You can have dedicated endpoints as well as we can serve your own custom model. Uh, you know, in many cases, folks have fine-tuned

  27. 10:51

    models or models with their own custom speculative decoders. Uh, we could do all of that, uh, for you as well. Now, why do you care about all of this, right? It's a lot of tech. Uh, why do folks care? Well, it's because you can actually, uh, accomplish more things, uh, through the system, right? So you can actually decrease cost. You can get greater flexibility because you can actually use different hardware. You're not beholden

  28. 11:21

    to one hardware provider. Uh, you get portability. You can use multiple different models, uh, et cetera. So how does perf look like? Well, we benchmarked a lot of these. Uh, and this is, like, against, uh, state-of-the-art, you know, the best combination of vLLM or SGLang. In a bunch of cases, these are-- these benchmarks are independently verified as well. So in terms of Kimi K point two-- uh, Kimi K two point five, we're five point five faster on

  29. 11:51

    TTFT, uh, compared to vLLM. We can also get one point five X throughput improvements, so the token per minute on per GPU is one point five X faster, uh, on B200 than it is on vLLM.

  30. 12:11

    In terms of FLUX.2, and I, I encourage folks to actually visit the booth. It's behind this curtain. Uh, there's a nice demo of FLUX.2. Uh, we're about seven X faster, uh, compared to torch.compile with Diffusers. So again, Max supports different modalities within the same framework, so you don't have to use an omni variant of a, of a piece of software or anything like that. We support both video generation, audio generation, image generation, as well as text generation.

  31. 12:43

    Uh, we also support, you know, things on AMD where you can get a TCO benefit as well, where we're four X faster than the equivalent, uh, on, um, on, on the MI355 systems. Actually, you know, some of this is not a fair comparison because, you know, some folks might say, "Oh, seven X is much larger than four X," but this is... You cannot do that comparison very easily. Uh, that you can- you have to factor in the

  32. 13:12

    cost, uh, per, uh, GPU, and AMD is usually thirty percent cheaper than, uh, the NVIDIA equivalent.

  33. 13:22

    Uh, Artificial Analysis, actually, we've been partnering with them, uh, and we've been... And they've independently been verifying our results. Uh, this is our results, like, as of, uh, today. Uh, we're about three X faster than the next competitor, uh, on the Flux two dev model as well. And this is not playing tricks of distillation and, you know, quantization or anything like that. This is just raw speed because we're- can leverage the hardware from the ground up and make

  34. 13:52

    sure that, uh, we're getting the max, uh, the max perf benefit from the model.

  35. 14:00

    And you can actually go to Artificial Analysis today and see, and see these results. Now, what does that mean to folks? Again, it means you can open up applications that are otherwise kind of not possible because of slow inference. So this is actually, uh, a kind of a live demo. It's just somebody's pasting in the prompts. Uh, but the generation is, is accurate. So you can generate things in subsecon- generate images in

  36. 14:30

    subsecond, uh, perf. In many cases, these are point three seconds. Again, you can go to the booth. There's a nice demo where, uh, you can give a prompt, and then it reads the video feed and then renders it as well.

  37. 14:48

    Uh, the other one data point is Gemma four. So Gemma four was a, a recent model that was just introduced about a month ago, a month and a half ago. Uh, again, we're quite faster than other-- any other competition out there. Uh, so, uh, you know, uh, m- many cases actually, some of these are, uh, hardware companies. You know, SambaNova is a hardware accelerator, uh, where, you know, let's say six X faster than that,

  38. 15:18

    and in general, we're much, much faster than others. And by the way, we're... For, uh, all these cases, we're just starting. There's more optimizations that we're landing, uh, uh, as, as, as time goes on. So we're never, never stopping to improving these things. So we have a bunch of, uh, places where you can get involved. You can join our open source community. So a lot of our code is open source. We have over seven hundred thousand lines of kernel code that we've open source. We've over- open

  39. 15:47

    source all of our model definitions, all of our Max serve. Um, we have AI skills. So if you're not familiar with Mojo or Max, you can actually use the AI skills to port, uh, from languages that you're familiar with into Mojo or Max. You can also join us. We're hiring. So there's pamphlets on the booth where we're hiring for a variety of different positions. So as I-- you probably know, we, we hire from

  40. 16:17

    low-level kernel engineers to high-level folks that work on Kubernetes and everything in between. You can actually try all of this. So this is not, uh, demo-ware or slide-ware. You can pip install modular right now if you want to and try all of this stuff, and I welcome everybody to validate these results. So with that, I kind of... That's it, and, uh... But I'm open to questions if folks have it, and I'll also be on the booth, uh, for the next few hours as

  41. 16:47

    well.