Abstract
In this chapter, we will introduce the parallel capabilities of IPython that, through applying a set of techniques, reduce execution time drastically. In a non-computational example, if one painter would spend T units of time painting a house, having N painters can reduce the total time to T/N units of time. As will be shown, two ways of scaling the computational units can be chosen: multicore or distributed computing. IPython hides the differences between them to the programmer; the same commands can be used in both. The ways of sending tasks to computing units will be introduced with the direct and balanced interfaces. Finally, an example with a database made up of millions of entries will show the advantages of parallelism.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
For a more detailed description please see http://ipyparallel.readthedocs.io/en/stable/intro.html. Last seen July 2016.
- 2.
More information on ipcluster profiles can be found at http://ipython.readthedocs.io/en/stable/.
- 3.
- 4.
Changing this behavior is beyond the scope of this chapter. You can find more details here: http://ipyparallel.readthedocs.io/en/stable/task.html#schedulers. Last seen November 2015.
- 5.
References
M. Herlihy, N. Shavit, The art of multiprocessor programming (Morgan Kaufmann, 2008)
T.K.G.B.G. Coulouris, J. Dollimore, Distributed Systems (Pearson, 2012)
Acknowledgements
This chapter was co-written by Francesc Dantí and Lluís Garrido.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2017 Springer International Publishing Switzerland
About this chapter
Cite this chapter
Igual, L., Seguí, S. (2017). Parallel Computing. In: Introduction to Data Science. Undergraduate Topics in Computer Science. Springer, Cham. https://doi.org/10.1007/978-3-319-50017-1_11
Download citation
DOI: https://doi.org/10.1007/978-3-319-50017-1_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-50016-4
Online ISBN: 978-3-319-50017-1
eBook Packages: Computer ScienceComputer Science (R0)