Reconfigure.io

Program FPGAs with Go

Reconfigure.io brings the power of hardware-acceleration technology to the cloud ecosystem. Code in Go, and easily build, test and deploy to FPGAs in the cloud.

Join us - at the vanguard of this pioneering change.



Read more about our journey on our blog

What are people using Reconfigure.io for?

Reconfigure.io’s FPGA technology breaks CPU-bound barriers while maintaining a low cost. Parallel processing is essential to high-performance programs and services. Reconfigure.io makes it easy to harness the parallelism inherent in FPGA technology.

We open the door to parallel computing; you can use Go to create business-specific programs that perform multiple operations in parallel, on a single server.

High throughput data analysis

High throughput data analysis - IoT data handling, infrastructure management, betting and bidding

FPGAs are perfectly suited to performing highly repetitive tasks on vast amounts of data. This is essential as we're managing more and more of our lives through the internet, from the infrastructure of our businesses, to gaming and gambling, right down to switching on the kettle. Reconfigure.io provides easy access to cost-effective parallel computing with no need for expensive, hard-to-source hardware engineering skills.

AI and Machine Learning

AI/Machine learning

Just as the human brain processes vast amounts of data simultaneously, the same must be possible for neural networks and machine learning algorithms. Unavoidable overheads associated with modern CPUs mean hardware acceleration is essential in these fields. With Reconfigure.io you can use the popular Go language to program and reprogram cloud-based FPGAs to meet this need.

Security in depth

Security - intruder prevention, detection and encryption

Security is an essential part of any web-based endeavor, from preventing and detecting intruders to encrypting your customer's data. All this requires the management of many, many data streams at the same time - monitoring access points and encryption for multiple customers, simultaneously. Our simple, user-friendly cloud management system gives you a simple route to using FPGA-based parallel computing to speed up and increase your security provision.

What would you do?
a

What would you do?

Up until now, putting FPGA's to work has been out of reach of most organizations—they have required significant R&D budgets and engineering teams with Verilog or VHDL expertise. Reconfigure.io's platform allows you to deploy to FPGA hardware without writing a line of Verilog—our state-of-the-art compiler renders Go into FPGA-compatible hardware descriptions. Everyone, from single-person startups to established companies, can now put FPGA's to work.

Why Reconfigure.io?

Reprogrammability

Once up and running, your program can be altered at any time in line with your project's changing requirements.

Cloud Management

Reconfigure.io’s build and deployment service is accessible entirely within the cloud.

Familiar tooling

Use a streamlined subset of the Go language to program remote FPGA hardware accelerators in a familiar cloud-based build/deployment environment. There is no requirement to learn an HDL to use our FPGAs.

Why FPGA?

Speed

Speed

FPGAs provide significant speed enhancements (10–100x) over the same code running on traditional CPUs. While FPGAs run at a slow speed relative to modern CPUs, they complete many, many tasks at the same time resulting in a dramatic overall speed increase.

Cost

Cost

FPGAs allow you to increase speed while reducing hardware requirements leading to cost savings. Hardware consolidation is made possible because one FPGA can simultaneously perform the tasks of many servers.

Parallelism

Parallelism

The flexibility and configurability of the FPGA gives you a cost-effective opportunity to bring high-powered parallel computing to your specific application.

Why do we use Go?

Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. It was released in 2009 and is now the 10th most popular language used worldwide.

The Go language has a number of features that are ideally suited to writing code in which many functions run in parallel:


  • Goroutines are functions that can run concurrently with other functions.
  • Channels are pipelines through which Goroutines can communicate and synchronize their operation.
  • Select statements help organize the process of switching between channels, and give programmers the ability to control when parallel operations can run.
  • Reconfigure.io then seamlessly transforms your Go code to run on the parallel architecture of the FPGA.

Sign up, it’s free!

We're now accepting applications to our alpha phase – the most interesting use cases will be granted access first!