Abstract
Parallel computing means to divide a job into several tasks and use more than one processor simultaneously to perform these tasks. Assume you have developed a new estimation method for the parameters of a complicated statistical model. After you prove the asymptotic characteristics of the method (for instance, asymptotic distribution of the estimator), you wish to perform many simulations to assure the goodness of the method for reasonable numbers of data values and for different values of parameters. You must generate simulated data, for example, 100,000 times for each length and parameter value. The total simulation work requires a huge number of random number generations and takes a long time on your PC. If you use 100 PCs in your institute to run these simulations simultaneously, you may expect that the total execution time will be 1100. This is the simple idea of parallel computing.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Amdahl, G.M.: Validity of the single-processor approach to achieving large scale computing capabilities. In AFIPS Conference Proceedings, vol. 30, pp. 483–485 (1967)
Balay, S., Buschelman, K., Gropp, W.D., Kaushik, D., Knepley, M., McInnes, L.C., Smith, B.F., Zhang, H.: PETSc home page (2001); http://www.mcs.anl.gov/petsc
Beddo, V.: Applications of parallel programming in Statistics. Ph.D. dissertation, University of California, Los Angeles (2002); http://theses.stat.ucla.edu/19/parallel_programming_beddo.pdf
Blackford, L., Choi, J., Cleary, A., D’Azevedo, E., Demmel, J., Dhillon, I., Dongarra, J., Hammarling, S., Henry, G., Petitet, A., Stanley, K., Walker, D., Whaley, R.C.: ScaLAPACK Users’ Guide. SIAM Press (1997)
Bull, J.M., Riley, G.D., Rasbash, J., Goldstein, H.: Parallel implementation of a multilevel modelling package. Comput. Stat. Data Anal. 31(4), 457–474 (1999)
Butenhof, D.R.: Programming with POSIX Threads. Addison Wesley, Reading, MA, USA (1997)
Chambers, J.M.: Programming with Data: A Guide to the S Language. Springer, Berlin (1998)
Chandra, R., Dagum, L., Kohr, D., Maydan, D., McDonald, J., Menon, R. Parallel Programming in OpenMP. Morgan Kaufman, Los Altos, CA (2001)
Christofides, A., Tanyi, B., Christofides, D., Whobrey, D., Christofides, N.: The optimal discretization of probability density functions. Comput. Stat. Data Anal. 31(4), 475–486 (1999)
Flynn, M.: Very high-speed computing systems. Proc. IEEE 54(12), 1901–1909 (1966)
Geist, A., Beguelin, A., Dongarra, J., Jiang, W., Manchek, R., Sunderam, V.S.: PVM: Parallel Virtual Machine: A Users’ Guide and Tutorial for Networked Parallel Computing. MIT Press, Cambridge, MA (1994)
Gropp, W., Lusk, E., Skjellum, A.: Using MPI: Portable Parallel Programming with the Message-Passing Interface, 2nd Edition. MIT Press, Cambridge, MA (1999a)
Gropp, W., Lusk, E., Thakur, R.: Using MPI-2: Advanced Features of the Message-Passing Interface. MIT Press, Cambridge, MA (1999b)
Gustafson, J.L.: Reevaluating amdahl’s law. Comm. ACM 31(5), 532–533 (1988)
Hardwick, J., Oehmke, R., Stout, Q.F.: A program for sequential allocation of three bermoulli populations. Comput. Stat. Data Anal. 31(4), 397–416 (1999)
Hegland, M., McIntosh, I., Turlach, B.A.: A parallel solver for generalized additive models. Comput. Stat. Data Anal. 31(4), 377–396 (1999)
High Performance Fortran Forum: HPF: The high performance fortran home page (2004); http://www.crpc.rice.edu/HPFF/.
Jones, H., Mitra, G., Parkinson, D., Spinks, T.: A parallel implementation of the maximum likelihood method in positron emission tomography image reconstruction. Comput. Stat. Data Anal. 31(4), 417–439 (1999)
Koelbel, C.H., Loveman, D.B., Schreiber, R.S., Steele, J. G.L., Zosel, M.E.: The High Performance Fortran Handbook. MIT Press, Cambridge, MA (1993)
LAM Team: LAM/MPI parallel computing (2004); http://www.lam-mpi.org/.
Li, N., Rossini, A.: RPVM: Cluster statistical computing in R. R News 1(3), 4–7 (2001); http://CRAN.R-project.org/doc/Rnews/.
Malard, J.M.: Parallel restricted maximum likelihood estimation for linear models with a dense exogenous matrix. Parall. Comput. 28(2), 343–353 (2002)
Mascagni, M.: SPRNG: A scalable library for pseudorandom number generation. In: Spanier, J. et al. (eds.) Proceedings of the Third International Conference on Monte Carlo and Quasi Monte Carlo Methods in Scientific Computing. Springer, Berlin (1999)
Message Passing Interface (MPI) Forum: Message passing interface (MPI) forum home page (2004); http://www.mpi-forum.org/.
MPICH Team: MPICH – A portable mpi implementation (2004); http://www-unix.mcs.anl.gov/mpi/mpich/.
Murphy, K., Clint, M., Perrott, R.H.: Re-engineering statistical software for efficient parallel execution. Comput. Stat. Data Anal. 31(4), 441–456 (1999)
Nakano, J., Fujiwara, T., Yamamoto, Y., Kobayashi, I.: A statistical package based on Pnuts. In: Bethlehem, J.G., van der Heijden, P.G.M. (eds.) COMPSTAT 2000 Proceedings in Computational Statistics, pp. 361–366. Physica, Wurzburg (Wien) (2000)
Oaks, S., Wong, H.: Java Threads. (2nd edn.), O’Reilly (1999)
OpenMP Architecture Review Board: OpenMP: Simple, portable, scalable SMP programming (2004); http://www.openmp.org/.
PVM Project Members: PVM: Parallel virtual machine (2004); http://www.csm.ornl.gov/pvm/pvm_home.html.
Racine, J.: Parallel distributed kernel estimation. Comput. Stat. Data Anal. 40(2), 293–302 (2002)
Rossini, A., Tierney, L., Li, N.: Simple parallel statistical computing in R. UW Biostatistics working paper series, Paper 193, University of Washington, USA (2003); http://www.bepress.com/uwbiostat/paper193.
Schervish, M.J.: Applications of parallel computation to statistical inference. J. Aner. Statist. Assoc. 83, 976–983 (1988)
Sterling, T., Salmon, J., Becker, D.J., Savarese, D.F.: How to Build a Beowulf : A Guide to the Implementation and Application of PC Clusters. MIT Press, Cambridge, MA (1999)
Swann, C.A.: Maximum likelihood estimation using parallel computing: An introduction to MPI. Comput. Econ. 19, 145–178 (2002)
Tanenbaum, A.S.: Modern Operating Systems. (2nd edn.), Prentice Hall, Netherland (2001)
Temple Lang, D.: A multi-threaded extension to a high level interactive statistical computing environment. Ph.D. dissertation, University of California, Berkeley (1997); http://cm.bell-labs.com/stat/doc/multi-threaded-S.ps.
The R Development Core Team: The R project for statistical computing (2004); http://www.r-project.org/.
Tuomi, I.: The lives and death of moore’s law. First Monday 7(11), (2002); http://firstmonday.org/issues/issue7_11/tuomi/index.html.
van de Geijin, R.A.: Using PLAPACK. MIT Press, Cambridge, MA (1997)
Yamamoto, Y., Nakano, J.: Distributed processing functions of a time series analysis system. J. Jpn. Soc. Comput. Stat. 15(1), 65–77 (2002)
Yu, H.: Rmpi: Parallel statistical computing in R. R News 2(2), 10–14 (2002); http://CRAN.R-project.org/doc/Rnews/.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Nakano, J. (2012). Parallel Computing Techniques. In: Gentle, J., Härdle, W., Mori, Y. (eds) Handbook of Computational Statistics. Springer Handbooks of Computational Statistics. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21551-3_9
Download citation
DOI: https://doi.org/10.1007/978-3-642-21551-3_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21550-6
Online ISBN: 978-3-642-21551-3
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)