Xilinx Speeds Testing Time, Increases Developer Productivity Using AWS
Xilinx is a provider of All Programmable FPGAs, SoCs, MPSoCs, and 3D ICs. Xilinx enables applications that are both software-defined and hardware-optimized—powering industry advancements in cloud computing, SDN/NFV, video/vision, industrial IoT, and 5G wireless.
AWS takes care of undifferentiated heavy lifting, and that helps us focus on developing innovative features and delivering great value to our customers."
Software Engineering and DevOps Director, Xilinx
Seeking Scalability and More Capacity for Software Testing
Software development is on a fast track at Xilinx. Every day, the company’s developers test a range of software applications to ensure they are bug-free and ready for customers developing field-programmable gate array (FPGA) solutions. And with each new Xilinx software release, the number of test cases and operating-system platforms grows.
But the Xilinx software team had a challenge: it was using on-premises data-center resources for regression testing, which was creating bottlenecks due to spikes in demand. “Our growth rate created scalability challenges during critical release-testing cycles,” says Ambs Kesavan, software engineering and DevOps director at Xilinx. As a result, software engineers sometimes had to wait for available resources before they could complete test cycles.
With regression tests taking up significant resources, Xilinx developers weren’t getting enough compute capacity to support their development and unit testing. This situation was starting to affect developer productivity. “Cost was an issue as well because we were paying for the compute and storage infrastructure even during non-peak times,” says Kesavan.
Why Amazon Web Services
Regression Testing Using AWS High-Performance Computing
Xilinx addressed its infrastructure-scaling problem by migrating to a high-performance computing (HPC) cluster running on Amazon Web Services (AWS). “We evaluated several cloud providers and chose AWS because it had the best tools and most mature solution,” says Kesavan.
Xilinx now runs its software-testing platform on a cluster with a mix of compute-intensive and memory-intensive Amazon Elastic Compute Cloud (Amazon EC2) instances. Xilinx uses the platform to deliver solutions to customers, including FPGA developers working on Amazon EC2 F1 instances. The F1 instances feature FPGAs that can be programmed to build custom hardware accelerations for applications.
The company uses Auto Scaling to programmatically add capacity based on the number of regression tests it needs to run at any given time. Xilinx uses Amazon DynamoDB as its primary database and various AWS storage offerings—including Amazon Simple Storage Service (Amazon S3), Amazon Elastic Block Store (Amazon EBS), and Amazon Elastic File System (Amazon EFS)—to support the company’s end-to-end automated regression-testing solution.
The company successfully migrated to AWS with no disruption to the business. “Our initial proof of concept was completed in just a few days with great support from the AWS HPC solutions team,” says Kesavan.
Improving Turnaround Time, Scalability, Productivity
By using AWS for regression testing, Xilinx improved turnaround time and predictability of test runs during peak load cycles. The company also eliminated the challenge of queue contention now that related jobs can be provided with on-demand clusters customized for their compute and memory needs. Developers now have zero wait time for compute resources, and the organization has 100 percent predictability for test results because AWS resources are available on demand. “Running on-demand, higher-capacity regression testing on AWS was key to lowering the variability of test run times,” Kesavan says. “We can now get instant access to compute and memory resources, which reduces waiting time and improves developer productivity.”
The company can also scale horizontally and vertically to meet compute demands. For example, Auto Scaling provides options to add on-demand compute nodes programmatically. In addition, Xilinx can take advantage of different Amazon EC2 instance types and several enhanced optimization capabilities—such as Amazon EBS storage-optimized instances—to improve performance. Xilinx also has more compute-resource flexibility, because it can choose the right configuration for a workflow without being locked into a specific hardware type.
By using AWS, Xilinx can now concentrate solely on creating the best possible software for its customers. Kesavan says, “AWS takes care of undifferentiated heavy lifting, and that helps us focus on developing innovative features and delivering great value to our customers."
Watch Simon Burke, Distinguished Engineer at Xilinx talk about their journey on AWS
Xilinx is a provider of All Programmable FPGAs, SoCs, MPSoCs, and 3D ICs.
Benefits of AWS
- Reduced software-test turnaround times
- 100% test-result predictability
- Increased developer productivity
AWS Services Used
Amazon Simple Storage Service (Amazon S3) is an object storage service that offers industry-leading scalability, data availability, security, and performance.
Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides secure, resizable compute capacity in the cloud.
Amazon DynamoDB is a key-value and document database that delivers single-digit millisecond performance at any scale.
AWS Auto Scaling
AWS Auto Scaling monitors your applications and automatically adjusts capacity to maintain steady, predictable performance at the lowest possible cost.
Companies of all sizes across all industries are transforming their businesses every day using AWS. Contact our experts and start your own AWS Cloud journey today.