M16 Architecture · In development

Compute doesn’t have to think in two states.

Gressus is building analog and multi-state hardware for a field that’s spent sixty years assuming binary was the best or only option. Our first product is an AI accelerator running on M16 architecture: sixteen distinct physical states per "stit", not two.

Why not binary

Two states was always a compromise, not a law of computing

Binary won because it was easy to build reliably at scale, not because it was the best way to represent the world. Here's the same paragraph, encoded two ways so you can see the difference for yourself!

The binary case

The arithmetic for neural networks and computational fluid dynamics starts by reasoning in continuous space and time, but binary converts those continuous concepts into discrete values to solve them on a computer. Every weight, velocity, and pressure term can be an array of values, not a switch. Binary hardware can only represent those options by stacking bits, so every multiply spends cycles carrying, rounding, and re-normalizing before the next operation can even begin. The precision you actually need gets rebuilt one bit at a time, at real cost in hardware, time, and energy.

Same paragraph, as binary
01010100 01101000 01100101 00100000 01100001 01110010 01101001 01110100 01101000 01101101 01100101 01110100 01101001 01100011 00100000 01100110 01101111 01110010 00100000 01101110 01100101 01110101 01110010 01100001 01101100 00100000 01101110 01100101 01110100 01110111 01101111 01110010 01101011 01110011 00100000 01100001 01101110 01100100 00100000 01100011 01101111 01101101 01110000 01110101 01110100 01100001 01110100 01101001 01101111 01101110 01100001 01101100 00100000 01100110 01101100 01110101 01101001 01100100 00100000 01100100 01111001 01101110 01100001 01101101 01101001 01100011 01110011 00100000 01110011 01110100 01100001 01110010 01110100 01110011 00100000 01100010 01111001 00100000 01110010 01100101 01100001 01110011 01101111 01101110 01101001 01101110 01100111 00100000 01101001 01101110 00100000 01100011 01101111 01101110 01110100 01101001 01101110 01110101 01101111 01110101 01110011 00100000 01110011 01110000 01100001 01100011 01100101 00100000 01100001 01101110 01100100 00100000 01110100 01101001 01101101 01100101 00101100 00100000 01100010 01110101 01110100 00100000 01100010 01101001 01101110 01100001 01110010 01111001 00100000 01100011 01101111 01101110 01110110 01100101 01110010 01110100 01110011 00100000 01110100 01101000 01101111 01110011 01100101 00100000 01100011 01101111 01101110 01110100 01101001 01101110 01110101 01101111 01110101 01110011 00100000 01100011 01101111 01101110 01100011 01100101 01110000 01110100 01110011 00100000 01101001 01101110 01110100 01101111 00100000 01100100 01101001 01110011 01100011 01110010 01100101 01110100 01100101 00100000 01110110 01100001 01101100 01110101 01100101 01110011 00100000 01110100 01101111 00100000 01110011 01101111 01101100 01110110 01100101 00100000 01110100 01101000 01100101 01101101 00100000 01101111 01101110 00100000 01100001 00100000 01100011 01101111 01101101 01110000 01110101 01110100 01100101 01110010 00101110 00100000 01000101 01110110 01100101 01110010 01111001 00100000 01110111 01100101 01101001 01100111 01101000 01110100 00101100 00100000 01110110 01100101 01101100 01101111 01100011 01101001 01110100 01111001 00101100 00100000 01100001 01101110 01100100 00100000 01110000 01110010 01100101 01110011 01110011 01110101 01110010 01100101 00100000 01110100 01100101 01110010 01101101 00100000 01100011 01100001 01101110 00100000 01100010 01100101 00100000 01100001 01101110 00100000 01100001 01110010 01110010 01100001 01111001 00100000 01101111 01100110 00100000 01110110 01100001 01101100 01110101 01100101 01110011 00101100 00100000 01101110 01101111 01110100 00100000 01100001 00100000 01110011 01110111 01101001 01110100 01100011 01101000 00101110 00100000 01000010 01101001 01101110 01100001 01110010 01111001 00100000 01101000 01100001 01110010 01100100 01110111 01100001 01110010 01100101 00100000 01100011 01100001 01101110 00100000 01101111 01101110 01101100 01111001 00100000 01110010 01100101 01110000 01110010 01100101 01110011 01100101 01101110 01110100 00100000 01110100 01101000 01101111 01110011 01100101 00100000 01101111 01110000 01110100 01101001 01101111 01101110 01110011 00100000 01100010 01111001 00100000 01110011 01110100 01100001 01100011 01101011 01101001 01101110 01100111 00100000 01100010 01101001 01110100 01110011 00101100 00100000 01110011 01101111 00100000 01100101 01110110 01100101 01110010 01111001 00100000 01101101 01110101 01101100 01110100 01101001 01110000 01101100 01111001 00100000 01110011 01110000 01100101 01101110 01100100 01110011 00100000 01100011 01111001 01100011 01101100 01100101 01110011 00100000 01100011 01100001 01110010 01110010 01111001 01101001 01101110 01100111 00101100 00100000 01110010 01101111 01110101 01101110 01100100 01101001 01101110 01100111 00101100 00100000 01100001 01101110 01100100 00100000 01110010 01100101 00101101 01101110 01101111 01110010 01101101 01100001 01101100 01101001 01111010 01101001 01101110 01100111 00100000 01100010 01100101 01100110 01101111 01110010 01100101 00100000 01110100 01101000 01100101 00100000 01101110 01100101 01111000 01110100 00100000 01101111 01110000 01100101 01110010 01100001 01110100 01101001 01101111 01101110 00100000 01100011 01100001 01101110 00100000 01100101 01110110 01100101 01101110 00100000 01100010 01100101 01100111 01101001 01101110 00101110 00100000 01010100 01101000 01100101 00100000 01110000 01110010 01100101 01100011 01101001 01110011 01101001 01101111 01101110 00100000 01111001 01101111 01110101 00100000 01100001 01100011 01110100 01110101 01100001 01101100 01101100 01111001 00100000 01101110 01100101 01100101 01100100 00100000 01100111 01100101 01110100 01110011 00100000 01110010 01100101 01100010 01110101 01101001 01101100 01110100 00100000 01101111 01101110 01100101 00100000 01100010 01101001 01110100 00100000 01100001 01110100 00100000 01100001 00100000 01110100 01101001 01101101 01100101 00101100 00100000 01100001 01110100 00100000 01110010 01100101 01100001 01101100 00100000 01100011 01101111 01110011 01110100 00100000 01101001 01101110 00100000 01101000 01100001 01110010 01100100 01110111 01100001 01110010 01100101 00101100 00100000 01110100 01101001 01101101 01100101 00101100 00100000 01100001 01101110 01100100 00100000 01100101 01101110 01100101 01110010 01100111 01111001 00101110

584 UTF-8 bytes × 8 binary digits each = 4,672 total digits. Every byte costs 4× fewer physical units on M16 than on binary.

Zoom out further: Unicode defines 1,112,064 possible characters. Naming any single one of them takes 21 binary digits — or just 6 M16 states.

Try it yourself

Type anything — see what it costs to represent

01000111 01110010 01100101 01110011 01110011 01110101 01110011

7 UTF-8 bytes → 56 binary digits

The M16 stit

Sixteen modes, one physical unit

Where a transistor settles into one of two states, an M16 stit holds one of sixteen. This increases the amount of data per interconnect significantly, speeding up computation. It’s a different way of building the same underlying idea, and it’s the foundation everything else at Gressus is built on.

Read the technical overview →
Who we are

Two People, One Goal, Zero Compromise

We believe in the power of people and that creativity and perseverance in the face of adversity is the driving force of innovation. This ideology drove us to pursue multi-state computing in a world that is built around binary. We believe in pivots when needed, and as we are a lean team, we are all ears to advice and feedback, and we know we won't get everything right but, we are headstrong in our vision of a world where technology betters the lives of humanity across the globe, not just in "desirable" markets.

Learn from others and build better from what others have learned.

Meet the team