What Types of Processing Does a Grid Support?

Multi-User Workload Balancing

Most organizations have many SAS users performing a variety of query, reporting, and modeling tasks and competing for the same resources. SAS Grid Manager can help bring order to this environment by providing capabilities such as the following:
  • specifying which jobs get priority
  • deciding the share of computing resources used by each job
  • controlling the number of jobs that are executing at any one time
In practice, SAS Grid Manager submits work to the grid middleware, which acts as a gatekeeper for the jobs submitted to servers. As jobs are submitted, the middleware (such as Platform LSF) doles them out to grid nodes, preventing any one machine from being overloaded. If more jobs are submitted than can be run at once, the grid middleware submits as many jobs as can be run. The middleware then holds the rest in a queue until resources are free. The grid middleware can also use job priority to determine whether a job is run immediately or held in a queue.
The application user notices little or no difference when working with a grid. For example, users can define a key sequence to submit a job to a grid rather than running it on their local workstation. Batch jobs can be run using wrapper code that adds the commands needed to run the job in the grid. SAS Enterprise Guide applications can be set up to automatically insert the code needed to submit the job to the grid.

Parallel Workload Balancing

Some SAS programs consist of subtasks that are independent units of work and can be distributed across a grid and executed in parallel. You can use SAS syntax to identify the parallel units of work in these programs, and then use SAS Grid Manager to distribute the programs across the grid. Using parallel workload balancing can substantially accelerate the entire application.
Applications such as SAS Data Integration Studio, SAS Risk Dimensions, and SAS Enterprise Miner are often used for iterative processing. In this type of processing, the same analysis is applied to different subsets of data or different analysis is applied to a single subset of data. Using SAS Grid Manager can improve the efficiency of these processes, because the iterations can be assigned to different grid nodes. Because the jobs run in parallel, the analysis completes more quickly and with less strain on computing resources.

Distributed Enterprise Scheduling

The Schedule Manager plug-in for SAS Management Console provides the ability to schedule user-written SAS programs as well as jobs from numerous SAS applications. You can schedule the jobs and programs to run when specified time or file events occur. If jobs are scheduled using the scheduling capabilities provided by Platform Suite for SAS, the jobs can be processed on a grid without any change to the scheduling process. This capability provides further control over use of computing resources, because you can use the scheduling capability to control when a job runs and the SAS Grid Manager capability to determine which computing resource processes the job.

SAS Applications That Support Grid Processing

The following table lists the SAS applications that currently support grid processing and the type of processing that each supports.
Grid Support in SAS Applications
SAS Application
Multi-User Workload Balancing
Parallel Workload Balancing
Distributed Enterprise Scheduling
Any SAS program
yes
yes, with modifications
yes
SAS Enterprise Guide
yes, with modifications
SAS Data Integration Studio
yes
yes
yes
SAS Enterprise Miner
yes
yes
SAS Risk Dimensions
yes
yes, with modifications
SAS Web Report Studio
yes
SAS Marketing Automation
yes
SAS Marketing Optimization
yes
SAS JMP/Genomics
yes
SAS Demand Forecasting for Retail
yes
SAS products or solutions that use workspace server load balancing
yes
SAS stored processes
yes, with limitations
yes, with limitations
For a current list of SAS applications that support grid processing, see http://support.sas.com/rnd/scalability/grid/index.html.