Running Simulations Faster on Multi-Processor or 64-Bit PCs via GEMPACK
AbstractMany modern Windows PCs now have two or more processors. These PCs cost little more than a PC with a single processor. If you are solving a model accurately using GEMPACK, you will usually extrapolate from 2 or 3 multi-step calculations (for example, from Gragg 2-step, 4-step and 6-step calculations). The separate multi-step calculations are independent of each other. For example, if you are doing Gragg 2,4,6-step calculations, the 6-step calculation can be done independently of the 4-step calculation. If you wish to solve a model by extrapolating from 2 or 3 multi-step calculations, you can now ask GEMPACK to carry out one or two of these multi-step calculations in parallel. In this way you may be able to solve the model significantly more quickly than previously. Suppose, for example, you are solving using Gragg 2,4,6-step calculations. If you have two processors, you can ask the main program to carry out the 2-step and 4-step calculations. And you can ask the main program to run (on the other processor) a separate job which carries out the 6-step calculation. When that 6-step calculation is finished, the main program will read the results from the 6-step calculation and then combine these results with the results of the 2-step and 4-step calculations to do the extrapolation and produce the usual results. We refer to the main program as the "master" and to the run which carries out the 6-step calculation in parallel as "the servant". Since the 6-step calculation probably only takes as long as the 2-step followed by the 4-step, this will approximately halve the total elapsed time required to solve the model. If you have more than two processors, you can ask the master to run two servant programs. When you run two or three calculations in parallel (one master and one or two servants), each program requires about the same amount of memory. If your model takes about 500MB of memory to solve normally, you will need about 1000MB to run one servant or about 1500MB to run two servants. If you don't have this much memory, the servants and/or the master will be running in virtual memory (which is very slow). The new 64-bit processors (combined with a 64-bit version of Windows) are interesting in this context since they are able to address more than 2GB of memory. [2 gigabytes of memory is effectively the maximum which can be addressed by any program under 32-bit Windows XP and Windows 2000.] The version of GEMPACK which allows master/servant solving is available as a beta test version for customers from organisations which have a multi-user Source-Code Version of GEMPACK with expiring annual licences.
Download InfoIf you experience problems downloading a file, check if you have the proper application to view it first. In case of further problems read the IDEAS help page. Note that these files are not on the IDEAS site. Please be patient as the files may be large.
Bibliographic InfoPaper provided by Victoria University, Centre of Policy Studies/IMPACT Centre in its series Centre of Policy Studies/IMPACT Centre Working Papers with number c15.
Date of creation: Apr 2006
Date of revision:
GEMPACK software; Multi-Processor;
Find related papers by JEL classification:
- C68 - Mathematical and Quantitative Methods - - Mathematical Methods; Programming Models; Mathematical and Simulation Modeling - - - Computable General Equilibrium Models
- C63 - Mathematical and Quantitative Methods - - Mathematical Methods; Programming Models; Mathematical and Simulation Modeling - - - Computational Techniques
This paper has been announced in the following NEP Reports:
- NEP-ALL-2006-08-12 (All new papers)
You can help add them by filling out this form.
For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: (Mark Horridge).
If references are entirely missing, you can add them using this form.