Autoregressive modeling for capacity planning in High Performance Computing Workflow-as-a-Service (WFaaS) clouds…

As an undergraduate and graduate school student, I spent the majority of my time studying digital signal processing algorithms. As a result, over my engineering career, I often find myself couching problems in the context of whether a good filtering algorithm can be of use. I hate getting rusty using my Fast Fourier Transform (FFT) skills! 🙂  However, in this blog, I think that pulling out my Linear Predictive Coding & Autoregressive modeling past time may prove to be an interesting topic for the discussion of capacity planning for cloud computing service models.

I’m now moving into the next phase of truly understanding the computational model and behavior for High Performance Computing (HPC) Workflow-as-a-Service (WFaaS) architectures.  I think that this is an interesting problem, because if we can understand the dynamics of HPC WFaaS models, then we should be able to optimize cloud capacity planning, especially for oversubscription events. In other words, what I would like to know is an a priori knowledge of exactly what computational resources will be needed based upon a posteriori events, i.e. we seek to minimize the “error” between estimated needed processing resources and instantaneous processing demand. This is a classic forward linear prediction problem. Aaaah, filtering! YESSSS!!

Not much I can add to this!

This blog will take some time in developing the premise, but if you stay with it, I think we’ll reach some interesting conclusions.

So, here goes…

Traffic/packet patterns in IP/LAN networks & processing demand workloads?

Over the past fifteen (15) years, traffic patterns in IP & LAN networks has been well researched. The most recent research had to extend into the characterization of Voice-over-IP and Video-over-IP services, i.e. isochronous traffic patterns. The question that I pose here is this: do processing demands for HPC WFaaS models have any statistical correlations to various types of data communication network traffic patterns?

Since data communication traffic is generated from software applications running on a processor somewhere in a network, it seems intuitive that within the context of certain classes of software applications, there must be a correlation between network traffic and software processing workloads. Where these correlations exist, applications of autoregressive models used in optimizing network traffic, should be applicable to optimal capacity planning for the processing demands for HPC WFaaS architectures. As of the writing of this blog post, investigation of these correlations between aggregated WFaaS software application processing demand and the burst traffic patterns in data communications is the operative research in question.

Examination of processing demand patterns in an HPC WFaaS

Complex engineering workflows that are dominated by computer-aided software applications often have processing demand patterns that are dependent upon the type of software application that is being used at any specific phase of a workflow. This is particularly true of an HPC semiconductor design-to-release-manufacturing WFaaS. As HPC application requests are often defined through long processing durations and large memory footprints, it makes sense to distinguish an HPC request from what could be considered a “transactional” request that is representative of highly interactive processing dialogue between a user and a host system.

Let’s assume that a workflow consists of five (5) separate software applications: A, B, C, D, and E. Further, let’s assume that we assign four (4) operational performance metrics for each application, namely, (1) memory footprint (including paging), (2) processing duration, (3) I/O (storage & network) activity, and (4) processing profile (floating/fixed point, database, algorithmic, etc.). Each HPC application request could then be assigned an “application weight,” e.g. Ax, Bx, Cx, Dx, Ex, where x is a positive rank derived from the application’s four operational performance metrics. If each of the five (5) software applications exhibit distinct operational profiles based upon the four (4) performance metrics, then as more users are serviced by the WFaaS, we can begin to visualize an aggregated stream of processing demand as defined by application performance metrics.

Let’s stay with the data communication reference model for a moment. We can think of a computing cloud of Virtual Machines (VM) as a buffer of fixed resources or credits. In round robin/fair queuing algorithms, buffer credit schemes can “filter” or shape traffic patterns in synchronous hardware bus protocols. The PCI Express (PCIe) standard is one such example. As VMs within a cloud can be randomly released and allocated, for the purpose of abstracting this problem, it doesn’t matter if the resource buffer is configured as FIFO or LIFO. As VMs are allocated and released, the processor buffer resources increase or decrease dynamically, in exactly the same manner as tokens or credits are allocated and spent in a PCIe system architecture.

(1) Let’s now aggregate the individual streams of processing demand requests from a pool of HPC user requests into a singular time series of requests to be serviced. As a second alternative, we could (2) aggregate HPC requests in exactly the same manner as the time series of the S&P500, which is an aggregate time series formed from the sum of the 500 individual stocks that comprise the S&P500, i.e. at any time sample, sum or translate all HPC requests into a single measurement. I’m still thinking about the underlying spectral implications between these two time series definitions.

Deviations from normal capacity loads for detection of Denial-of-Service (DoS) attacks?

So this brings up another topic relevant to the concept of a “resilient cloud”.

  • Can we use our autoregressive models to detect anomalous or deviant workload patterns masked DoS attacks?
  • What parameters or metrics passed between Virtual Machines (VMs) in a computing cloud could be used as part of a consensus algorithm to create alerts for suspected DoS attacks?

More to come…

Autoregressive model and forward linear prediction

Overview of computation of forward linear prediction taps.

M/M/1 Queues

Standard queue applicability to WFaaS workloads.

References:

Notes on Digital Signal Processing: Practical Recipes for Design, Analysis, and Implementation, C. Britton Rorabaugh, Prentice Hall, 2010, ISBN-10: 0-13-158334-4.

Methods and Applications of Statistics in Business, Finance, and Management Science, N. Balakrishnan, John Wiley & Sons, 2010, ISBN: 978-0-470-40510-9.

About J. Marc Edwards
Involved Parent Electrical/Software Engineer MBA, University of North Carolina at Chapel Hill MSEE, Georgia Institute of Technology BSEE, Clemson University

Leave a comment