IncrediBuild Integration Interfaces

IncrediBuild Integration Interfaces

Note:

Overview

The IncrediBuild interfaces are the means to tell IncrediBuild how to integrate with your software or script file. IncrediBuild allows you to utilize all idle cores existing in your network on machines that have IncrediBuild agents installed on them to execute many tasks in parallel, and as a result accelerates your software performance.

IncrediBuild interfaces are intended for the following:

IncrediBuild provides three Interfaces for three possible ways of feeding Tasks into the IncrediBuild execution queue.

The following table summarizes the interfaces that you can use in order to have IncrediBuild distribute your tasks, and as a result accelerate its performance.

Interface Description
Submission Allows the execution of explicit commands using IncrediBuild. Parameters can determine whether IncrediBuild will execute these commands on remote machines and/or in a parallel manner. This interface is typically used in batch files, scripts, or commands executed from within an application.
Automatic Interception Allows IncrediBuild to distribute any process executed by any program without changing the program’s code, by simply assembling a list of process names that once executed should be automatically distributed by IncrediBuild. .
XML Provides the highest level of control over the process flow via an XML script file: job executions, tasks, and their dependencies.
Interface Combination Another approach, which involves a combination of Submission and Automatic Interception interfaces.

Each of these processes is described in detail in the subsequent sections of this chapter.

Note:

How to Choose the Ideal Interface 

Before you decide which approach is best for your usage, you need to be aware of the following aspects of the task execution that you want to accelerate using IncrediBuild:

Once you are familiar with the three interface options and understand how they apply to your application, you can make changes only to scripts and tools that you wrote, in order to make their tasks run in a more parallel manner. For a third-party tool, you can use IncrediBuild to try forcing many of its tasks to run in parallel on all the cores existing in the network, instead of running only on local cores, thus significantly improving performance. This is also relevant if the third-party tool has a command line enabling you to run from it many commands in parallel. 

Note:

The following sections describing the interfaces in detail will guide you in making such decisions and implementing them in an optimal manner.