CycleCloud 6 feature: Azure Resource Manager support

This post is one of several in a series describing features introduced in CycleCloud 6, which we released on November 8. Microsoft introduced the Azure Resource Manager (ARM) to speed the process of large deployments. It treats groups of resources as a single unit, allowing Big Compute clusters to be rapidly scaled up and down in response to current needs. That is the core of our philosophy, so we added ARM support to CycleCloud 6. CycleCloud manages the complexity for you: resource groups and scale sets are dynamically created. All you need to do is provide your credentials: Coming to SC16? Stop by booth #3621 for a...

Efficient use of entropy in cloud environments

Secure communication requires entropy — unpredictable input to the encryption algorithms that convert your message into what seems like a string of gibberish. Entropy is particularly important when generating keypairs, encrypting filesystems, and encrypting communication between processes. Computers use a variety of inputs to provide entropy: network jitter, keyboard and mouse input, purpose-built hardware, and so on. Frequently drawing from the pool of entropy can reduce it to the point where communications are blocked waiting for sufficient entropy. Generally speaking, entropy has two aspects: quality (i.e. how random is the value you get?) and the amount available. The quality of entropy can be increased by seeding it from a quality source of entropy. Higher quality entropy makes better initialization vectors for the Linux Pseudo Random Number Generator (LinuxPRNG). The Ubuntu project offers a publicly-available entropy server. The quantity of entropy (i.e. the value of /proc/sys/kernel/random/entropy_avail) is only increased over time. It is worth noting here Virtual Machines in the cloud are not quite “normal” computers in regards to entropy. Cloud instances lack many of the inputs that a physical machine would have, since they don’t have keyboard and mice attached, and the hypervisor buffers away much of the random jitter of internal hardware. Further, the Xen (Amazon Web Service), KVM (Google Cloud), and HyperV (Microsoft Azure) hypervisors virtualize hardware access to varying degrees which can result in diminished entropy. You need to be aware of the entropy available on your instances and how your code affects that. When writing code, it’s important to minimize the calls to /dev/random for entropy as it blocks until sufficient entropy is available. /dev/urandom...

Cloud providers offer newer, better GPUs

Ever since there’s been a public cloud, people have been interested in running jobs on public cloud graphics processing units (GPUs). Amazon Web Services (AWS) became the first to offer this as an option when they announced their first GPU instance type six years ago. GPUs offer considerable performance improvements for some of the most demanding computational workloads. Originally designed to improve the performance of 3D rendering for games, GPUs found a use in big compute due to their ability to perform operations over a set of data rapidly and with a much greater core count than traditional central processing units (CPUs). Workloads that can use a GPU can see a performance improve up to 10-100 times. Two years later, AWS announced an upgraded GPU instance type: the g2 family. AWS does not publish exact capacity or usage numbers, but it’s reasonable to believe that the cg1 instances were sufficiently successful from a business perspective to add the g2s. GPUs are not cheap, so cloud providers won’t keep spending money on them without return. We know that some of our customers were quick to make use of GPU clusters in CycleCloud. But there was a segment of the market that still wasn’t being served. The GPUs in the cg1 and g2 instance families were great for so-called “single precision” floating point operations, but had poor performance for “double precision” operations. Single precision is faster, and is often sufficient for many calculations, particularly graphics rendering and other visualization needs. Computation that requires a higher degree of numerical precision, particularly if exponential calculations are made, need double precision. The GPUs that...

Cycle Computing accepted into Microsoft Accelerator

Last week, Microsoft announced Cycle Computing as one of 10 companies accepted into the latest group of its Accelerator program. The Microsoft Accelerator program is designed to help late-stage startups ramp up their whole organization: sales pipeline development, CEO coaching, finance, human resources, and marketing. Founded about 10 years ago, Cycle Computing has been growing strongly as use of cloud computing has grown. With cloud moving from “Why would you?” to “Why wouldn’t you?” Cycle Computing’s growth has been accelerating. Being part of this program will open even more doors. “We’re very excited to be a part of the Microsoft Accelerator program,” said CEO Jason Stowe. “In the past decade we’ve developed an incredible product that has helped companies in a variety of industries innovate faster than ever before. The resources provided by Microsoft will enable us to continue to expand our efforts.” Participation in the Microsoft Accelerator program won’t just help our business processes grow, it will help improve our product as well. CTO Rob Futrick says, “Working with Microsoft will give us access to resources we’ll use to not only improve our Azure support, but do additional testing and auditing of CycleCloud itself. This will benefit all of our customers, no matter which cloud service providers they...

Using Tags for Tracking Cloud Resources

When Amazon announced that the limit for tags on resources was increased from 10 to 50, a great cheer went up from the masses. In the same way that you’ll always own slightly more stuff than you can fit in your house, many cloud users find they wanted more tags than were available. Tags are custom labels that can be assigned to cloud resources. While they don’t have a functional effect (except for in Google Compute Platform, see below), they can be very powerful for reporting and automation. For example, some customers have a single corporate account and apply resources based on department, user, project, et cetera for chargeback. Some customers also use labels in automated tools. For example, you can tag instances with a “backup” attribute and have a script that polls those instances to create snapshots of permanent volumes on a daily basis. Or perhaps you have an account for testing and you don’t want users to accidentally leave instances running forever. You can automatically terminate long-running instances that don’t have a “keepalive” tag set. In Amazon Elastic Compute Cloud (EC2) and Microsoft Azure, tags are key-value pairs. CycleCloud supports adding tags to instances and volumes a simple syntax:       tags.Application = my application       tags.CustomValue = 57       tags.Custom Text = Hello world Tags in Google Compute Platform The term “tag” has a different meaning in Google Compute Platform. A “tag” is an attribute places on an instance that is used to apply network or firewall settings. Other resources do not have tags. CycleCloud supports adding tags to GCP instances...

See the HPC in Cloud Educational Series videos

As the interest in HPC in the Cloud grows, Cycle Computing, in conjunction with Amazon Web Services, Avere, Google, and Microsoft Azure, presented the HPC in the Cloud Educational Series at SC15 this year. This series delivered a set of in-depth discussions on key topics around leveraging Public Clouds for large computation and big data analytics.   The series was well received and we have made the presentations available for viewing. If you saw the series at SC, you may want another chance to review the material. If you missed it, this is a great chance to hear from the experts. Please take a look and let us know what you think.   The series is available here and includes the following:   Why wouldn’t you use public cloud for HPC – Rob Futrick, Cycle Computing — As part of the HPC in the Cloud Educational Series, Rob Futrick, CTO of Cycle  Computing discusses the benefits and challenges of moving big data and HPC workloads to the public cloud.   HPC Cloud Data Mgmt – Jeff Layton, Amazon Web Services — As part of the HPC in the Cloud Educational Series, Jeff Layout, HPC Principal Architect at Amazon Web Services, explains concepts and options around using storage in the AWS Cloud.   Microsoft Azure for Engineering Analysis and Simulation – Tejas Karmarkar, Microsoft Azure — As part of the HPC in the Cloud Educational Series, Tejas Karmarkar, Senior Program Manager, Microsoft Azure, presents techniques for doing engineering analysis and simulation within the Microsoft Azure cloud.   Broad Institute use of Pre-Emptible VMs – Marcos Novaes, Google Cloud Platform – As part of the HPC in...