IDEAS home Printed from https://ideas.repec.org/p/cop/wpaper/c15.html
   My bibliography  Save this paper

Running Simulations Faster on Multi-Processor or 64-Bit PCs via GEMPACK

Author

Listed:
  • J Mark Horridge
  • Ken Pearson

Abstract

Many 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.

Suggested Citation

  • J Mark Horridge & Ken Pearson, 2006. "Running Simulations Faster on Multi-Processor or 64-Bit PCs via GEMPACK," Centre of Policy Studies/IMPACT Centre Working Papers c15, Victoria University, Centre of Policy Studies/IMPACT Centre.
  • Handle: RePEc:cop:wpaper:c15
    as

    Download full text from publisher

    File URL: https://www.copsmodels.com/ftp/workpapr/c15.pdf
    File Function: Initial version, 2006-04
    Download Restriction: no

    File URL: https://www.copsmodels.com/elecpapr/c15.htm
    File Function: Local abstract: may link to additional material.
    Download Restriction: no
    ---><---

    Other versions of this item:

    Citations

    Citations are extracted by the CitEc Project, subscribe to its RSS feed for this item.
    as


    Cited by:

    1. van der Mensbrugghe, Dominique, 2023. "Using Python for Parallelization," GTAP Working Papers 6826, Center for Global Trade Analysis, Department of Agricultural Economics, Purdue University.
    2. Van Ha, Pham & Kompas, Tom, 2016. "Solving intertemporal CGE models in parallel using a singly bordered block diagonal ordering technique," Economic Modelling, Elsevier, vol. 52(PA), pages 3-12.
    3. van der Mensbrugghe, Dominique, 2023. "Using Python for Parallelization," GTAP Technical Papers 6826, Center for Global Trade Analysis, Department of Agricultural Economics, Purdue University.

    More about this item

    Keywords

    GEMPACK software; Multi-Processor;

    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

    Statistics

    Access and download statistics

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:cop:wpaper:c15. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: Mark Horridge (email available below). General contact details of provider: https://edirc.repec.org/data/cpmonau.html .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.