Amazon EC2 F1 is a compute instance with field programmable gate arrays (FPGAs) that you can program to create custom hardware accelerations for your application. F1 instances are easy to program and come with everything you need to develop, simulate, debug, and compile your hardware acceleration code, including an FPGA Developer AMI and Hardware Developer Kit (HDK). Once your FPGA design is complete, you can register it as an Amazon FPGA Image (AFI), and deploy it to your F1 instance in just a few clicks. You can reuse your AFIs as many times, and across as many F1 instances as you like.
Amazon EC2 F1 instances offered in two different instance sizes that include up to eight FPGAs per instance. F1 instances include 16 nm Xilinx UltraScale Plus FPGA. Each FPGA includes local 64 GiB DDR4 ECC protected memory, with a dedicated PCIe x16 connection. Each FPGA contains approximately 2.5 million logic elements and approximately 6,800 Digital Signal Processing (DSP) engines. Just like other Amazon EC2 On Demand Instances, you only pay for what you use. There is no long-term commitments or upfront payments required. There is no charge for the FPGA Developer AMI or HDK, and you can program the FPGA on your F1 instance as many times as you like with no additional fees.
Programmable Hardware Accelerations
F1 instances make it easy to deploy hardware acceleration for your workloads using FPGAs. FPGAs are programmable integrated circuits that you can configure using software. You can use FPGAs to accelerate your applications up to 30x when compared with servers that use CPUs alone. And the FPGAs in F1 instances are reprogrammable, so you get the flexibility to update and optimize your hardware acceleration without having to redesign any hardware.
Each F1 instance includes up to eight FPGAs that are dedicated to the instance. They are not shared between instances, users, or accounts. This ensures that the full power of the FPGA is dedicated to the instance, and improves security through user and account isolation.
Reusable Amazon FPGA Image (AFI)
The design that you create to program your FPGA is called an Amazon FPGA Image (AFI). AWS provides a service to register, manage, copy, query, and delete AFIs. After an AFI is created, it can be loaded on a running F1 instance. You can load multiple AFIs on the same F1 instance, and can switch between AFIs in runtime without reboot. This lets you quickly test and run multiple hardware accelerations in rapid sequence. You can also offer your FPGA acceleration to other customers on the AWS Marketplace.
Hardware Development Kit
AWS provides a Hardware Development Kit (HDK) to help you develop your hardware accelerations quickly. The HDK includes code samples, compile scripts, debug interfaces, and many other tools that you need to develop the FPGA code for your F1 instances. You can use the HDK either in an AWS-provided AMI, or in your on-premises development environment.
FPGA Developer AMI
The FPGA Developer AMI includes a prepackaged tool development environment, with scripts and tools for simulating your FPGA design, compiling code, and building and registering your AFI. The FPGA Developer AMI includes tools for debugging and compiling your code. You can deploy the FPGA Developer AMI on an Amazon EC2 instance and quickly provision the resources you need to write and test your FPGA design.
F1 Instance Details
|Instance Type||FPGA Cards||vCPUs||Instance Memory (GiB)||SSD Storage (GB)||Enhanced Networking||EBS Optimized|
|f1.16xlarge||8||64||976||4 x 940||Yes||Yes|
For f1.16xlarge instances, the dedicated PCI-e fabric lets the FPGAs share the same memory space and communicate with each other across the fabric at up to 12 Gbps in each direction.
Using F1 instances to deploy hardware accelerations can be useful in many High Performance Computing (HPC) applications to solve complex science, engineering, and business problems that require high bandwidth, enhanced networking, and very high compute capabilities. F1 instances are particularly beneficial for applications that are time sensitive such as clinical genomics, real time video processing, and financial risk analysis.
The amount and complexity of biological data that must be processed by genomics researchers continues to grow and regularly reaches the petabyte range. Researchers and clinicians must process these data sets very quickly to meet the needs for physicians and their patients. F1 instances are an ideal solution for these time sensitive use cases.
Real Time Video Processing
High performance broadcast-quality video applications, such as image processing, video analytics, and video transcoding and compression have real time analysis requirements. F1 instances are an ideal solution to meet the requirements of these applications without compromising quality.
Big Data Search and Analytics
The volume, variety, and velocity of data analysis and search requirements in many big data applications have risen to the point where customers are looking for hardware acceleration to keep up. For those applications, customers can leverage the increased performance of F1 instances to meet their big data analytics and search requirements.