Case Study

Blast with WaveRider

Achieving Shorter Run Times and Reduced Cost for the Basic Local Alignment Search Tool (BLAST) with Memory Machine WaveRider

A leading life sciences R&D provider manages a research portfolio that includes cancer research, genetics analysis, and other related capabilities. One of their primary computational analytics tools is the Basic Local Alignment Search Tool (BLAST), which is used to find regions of similarity across nucleotide and protein sequences. Honsunbio runs the majority of their BLAST searches on cloud computing resources.

The Problem

BLAST is a “spikey” application whose need for cloud resources such as virtual CPUs (vCPUs) and memory can vary significantly throughout a run, as shown in the first graph. The simplest solution to this is to provision application for the largest resource spikes (essentially overprovisioning).

A representative BLAST run overprovisioned for 32vCPUs and 64GB of cloud memory completes in 11 hours and 44 minutes, with a an OnDemand cost of $17.22 running on AWS. The converse of this approach – provisioning for average resource usage (under-provisioning) can reduced the AWS on-demand costs to $12.63 (about 27% less expensive) but increases run time to 18 hours and 4 minutes (a 53% increase in runtime). Running BLAST in an AWS spot instance can significantly reduce costs, but a spot evacuation would stop the job, requiring it to be re-run from the start, impacting overall productivity.

The Solution

WaveRider

The WaveRider module of Memory Machine is the answer to the “spikey” cloud workload issue. Patented AppCapsule technology provides big-memory, long-running applications with the ability to run on cloud spot instances without fear of interruption. WaveRider extends this ability by allowing applications to get just the right amount of resources when they need them, as shown in the graph below.

Workload Continuously Right Sized to Optimize Cost and Performance

WaveRider migrates cloud workloads to larger or smaller cloud computing instances automatically, maximizing performance while reducing costs by avoiding overprovisioning. The graph on the next page shows how WaveRider enables BLAST to automatically “resize” compute resources as the demands of the application change by finding larger or smaller cloud instances, and moving the application between these instances as required.

The migration between instances is fully automated and does not require user intervention. The automation is triggered through user-created rules that are built using Memory Machine’s Float GUI and command language. This enables WaveRider migrations to be tuned as necessary to optimize application cost and performance.

The Result

Significant Savings & Reduced Run Times

The chart below provides a comparison between the different scenarios (OnDemand with 32vCPUs/64GB RAM; OnDemand with 16vCPUs/16GB RAM; Memory Machine spot instance with 32vCPUs/64GB RAM; Memory Machine spot instance with 16vCPUs/32GB RAM; and Memory Machine spot instance using WaveRider). As can be seen, WaveRider provides the perfect balance between performance and cost, with a cost reduction of 93% when compared to the “large” (32vCPU, 32GB RAM) OnDemand option, but with nearly the same performance (12h 23m execution time vs 11 h 44m). For an organization running 1,000 BLAST applications per day in the cloud, using Memory Machine with WaveRider would result in a savings of $16,065 per day, or $4,173,000 per year.

Some of the Savings Used for Larger Compute Instances and Faster Completion Time

Test CasesTimeDeltaCostDelta
OnDemand (32 vCPU, 64GB)11h 44mFastest$17.22Highest cost
OnDemand (16 vCPU, 16GB)18h 4m53% slower$12.6327% less cost than 32vCPU
Memory Machine (Spot; 32 vCPU, 64GB)11h 44mFastest$1.9389% less cost than 32vCPU
Memory Machine (Spot; 16 vCPU, 32GB)18h 4m53% slower$1.4891% less cost than 32vCPU
Memory Machine with WaveRider12h 23m31% faster than 16vCPU$1.1791%-93% less cost than OnDemand

Request a Demo or Free Trial

We are happy to provide you a full demo, free trial, or access to play in a Sandbox set-up in AWS so that you can see the capabilities of the MemVerge solution. Get started for free!