The 2 major problems for AI and HPC hardware faces in the coming years are the memory bottleneck and energy inefficiency. With all-optical computing, both problems are solved at the same time in an elegant way.
Top of the line electronic AI hardware reaches an operation to memory ratio of >200:1 (arithmetic intensity), but modern large language models often require a much lower ratio, even down to 1-5:1 for models like LLaMA. This is hard to crack for electronics, but our optical memory does not have any of these bandwidth limitations, giving out architecture an ideal 1:1 arithmetic intensity.
While performance is important, a much more pressing issue is energy. Electronic components, especially electronic wires, are very power hungry, dissipating unnecessary amounts of energy for something as simple as moving and processing a bit. Top of the line electronic tensor processing units are barely able to reach 1 TOPS-8 per Watt. Optics on the other hand, with its near lossless waveguides and components, doesn't have any problem crossing this domain at 10x-100x the efficiency, enabling new low power AI applications at the edge.
The heart of our optical computer is a chip, a photonic integrated circuit (PIC) to be precise. The beauty of these PICs is, that they can be fabricated in existing semiconductor foundries using mature nodes (90nm, 130nm and 250nm), making them very affordable. There is no technological need for a new 3nm or even Ångström-sized node foundries if you can fabricate at existing partners – and even doing so locally with supply chain security.
PICs use the refractive index difference between two materials, such as silicon nitride (SiN) and silicon oxide (SiO2), to guide the light along a path. These waveguides allow for extremely compact optical devices on a micron level, that would have required large assemblies and fiber optics in the past. Furthermore, materials like SiN allow guiding a broad range of wavelengths from the visible to the infra red near lossless.
Light beams usually don't interact with each other. This is a great feature if you want to multiplex Petabits of data using multiple wavelengths over a single waveguide, but also means that creating all-optical switches (i.e. switching one beam of light on and off with another) is extremely difficult. And we require all-optical switches to do useful optical computing. To enable this, we need a material that can support nonlinear interactions. Luckily, such materials are known and used throughout various fields of optics. But integrating them in a PIC is tricky, as they need to be able to be fabricated at a foundry. For us, so called 2D materials and III-V materials do the trick and we work together with our partner foundries to optimize them even further. They allow us to generate the optical nonlinearities we need to enable light-light interactions.
Linear components in a PIC are fairly well explored. They can range from simple beam splitters to linear math operations, such as matrix vector multiplication. The true challenge comes from mastering nonlinear photonics and devices. These enable us to create all sorts of interesting optical computing components. Be it an all-optical switch for digital processing, an analog activation function for deep learning, a feed forward stage for continuous variable measurement-based quantum computing, or all-optical memory cells. These are the key ingredients for any general-purpose optical computer.
Creating a general-purpose processor, no matter if in electronics or photonics, requires a lot of components. Without automation, this is a near impossible task nowadays, thus very large-scale integration (VLSI) was born. But as there are no optical computers yet, there has been no need for photonic VLSI for optical digital logic. So, we had to create it from scratch in house. We call our VLSI tool AtetDesigner and it is fully capable of creating a fully fledged PIC layout for optical computing from a simple layout using our RTL-to-GDSII design flow. With AtetDesigner, we simply define the function of our processor in a common hardware description language (HDL), like Verilog, and it automatically generates us the layout.
Optical computing does not follow the same design tropes as an electronic computing architecture. This has allowed us to innovate and create a unique computer architecture based on functional principles from lambda calculus to power the next generation of software. Using a custom instruction set architecture (ISA), it not only runs AI models optimally, but is fully general-purpose and can even run Doom.
Read our full paper on optical computing architecture here.
Apart from the performance and efficiency, one of the most exciting parts about optical computing is the way it combines principles from 3 different domains in a single platform. Looking at a PIC, you wouldn't know if it is running analog, digital or quantum computing, as they can all be performed in the same materials, using eerily similar components and layouts. That begs the question, why not combine all 3 domains in a single computing platform to leverage the benefits of each? This is our long-term goal of our cross-domain processing unit (XPU), the first processor to combine all these domains in a single platform seamlessly. To make this a reality, we set out to master digital control-flow first.
It is difficult enough to introduce a new computing paradigm. We opted to make our architecture compatible with existing software to enable easy adoption. Of course, to get the most out of optical computing, a few new programming techniques are required – most importantly a more functional programming approach. But you can still program in a language you are familiar with, which we ensure by providing a compiler and emulation layer that works with C++ or any other language that has a frontend for LLVM or can be compiled to SPIR-V. By integrating into existing HPC and AI acceleration environments, we ensure that you will be able to run your future workloads as efficiently and fast as possible, without the need to start from scratch.