Running a travel forecasting model frequently takes many hours, sometimes days. Cube Cluster, can dramatically cut model run times by distributing run processes across multiple computing nodes, where a computing node consists of a single computer processor, in one or in multiple PCs.
Cube Cluster implemented with Cube Voyager allows you to distribute the workload of selected Voyager programs across multiple computing nodes. Each computing node is a single computer processor, therefore assembling your own computer cluster is possible by:
There are two forms of distributed processing that can be implemented in Cube Voyager:
This type of distributed processing works by breaking up zone-based processing within a single Cube Voyager program into groups of zones. These groups are run at the same time on multiple computing nodes. (The benefits of this type of Cube Cluster implementation are highlighted below). For example, when running a mode choice model, Cube Cluster might process origin zones 1–100 on one PC and origin zones 101–200 on a second PC.
This type of distributed processing works by breaking up two or more independent blocks of one or more Cube Voyager programs and distributing them to multiple computing nodes to run simultaneously. When implementing this process, the user needs to carefully design it such that the distributed blocks and the mainline process are logically independent of each other. Cube’s Application Manager flow chart view of the model provides a great tool for identifying the model steps that can be distributed using MDP.
You will experience significant drops in run time with Cube Cluster. For example:
Image 1 – Example of Highway Assignment speed test
Image 2 – Example of reduction in runtime for a matrix program looping across several operations
Image 3 – Runtime tests with Cube Cluster
Image 4 – Runtime in hours by number of cores for the Nashville case study (test in Cube Cloud)
Cube Cluster is truly a huge advance in travel forecasting. Cube Cluster greatly reduces run times, increasing a modeler’s ability to respond quickly to management and client demands and to efficiently run and test many more scenarios. Cube Cluster has no scaling restrictions. You could take a model system and run it across 100 processors, perhaps reducing run times to several minutes!
With Cube Cluster, you configure your Cube Voyager model to run on clustered Cube Voyager instances across the available processors in the PCs in your network. For example, if connected through a standard office Ethernet network, you might configure Cube Cluster to run your model across several of the existing office PCs. Cube Cluster can even run the model across the processors on a single dual-core PC.
The distributed processing approach requires one multiprocessor computer or a network of computers.
Once you start a model run, Cube Cluster distributes the process across the configured processors and executes the model. Cube Cluster stores the resulting data and print files on the primary PC for analysis and mapping.