Unlock your hardware design with software that provides generality and usability for AI developers.
Modular's software stack will take care of all upstream integrations with AI frameworks, graph optimizations, and more, so you can focus on the differentiating features of your hardware. Own your code generation, performance and feature set. It's still early, but we're excited about the future.
Integrating with the Modular stack gets you:
01.
Effortlessly extend your customer reach to all popular AI frameworks.
02.
Autofusion and graph optimizations boost your hardware performance.
03.
We support the ever-changing AI ecosystem, including the long-tail of operators and models.
04.
You own your performance and can utilize the full capabilities of your hardware.
05.
Your hardware “just works” often with only a few weeks of development.
Integration is simple
Modular handles framework support and end-user tooling
Modular handles the ever-changing world of AI frameworks, models, and operators, providing you with a single cross-framework integration point for your hardware stack.
Full framework, model,
and op support
- Integration with TensorFlow, PyTorch, plus variants like ONNX and TorchScript
- Full generality of models, including dynamic shapes, sparsity, custom ops, etc.
- Thousands of long-tail operators needed for compatibility
Compiler transformations
and developer tooling
- Kernel fusion and other performance optimizations
- Automatic graph partitioning for distributed inference
- Standardized and hackable tools
Plug your hardware in at the graph or code generation level
Bring your own code gen backend for CPU, GPU, or DSPs, and everything just works. For CGRA, FPGA, or other exotic hardware, start with our standardized operator set and extend the system to your needs.
Focus your effort on ML operators you care about
- Modular provides a library of customizable kernels and microkernels written in Mojo 🔥
- Focus on the subset of the problem for your hardware
- Everything else just works — we provide fallback legacy long-tail kernels for compatibility
Extend the system
as needed
- Add new Mojo 🔥 kernels if you don’t find what you’re looking for, and enable your customers to the same
- Use Mojo 🔥 to directly inject MLIR, C/C++ or assembly code as needed
- Leverage standardized operators and tools to write high-level graph transformations