21-765. Introduction
to
Parallel Computing and Scientific Computation
DOCUMENTATION AND BIBLIOGRAPHY
Software documentation that can be volatile and changes often is mentioned early in the list. Textbooks are listed at the bottom.
V1. Linux Manual Pages
accessed by "apropos <keyword>" to get a list of commands,
and then "man <command>", or "xman" under X-Windows. The
command "info" gives a emacs-like interface and more complete
documentation for some packages. Software package management and
description: the "rpm" or "dpkg" command depending on the Linux
flavor. Additional package documentation inside the /usr/share/doc
directory. A Google search almost always brings in useful info.
V2. HowTos and FAQs, can be found on the main software archive sites on the Internet. Some reference links:
V3. Videos and tutorials:
T1. Brian W. Kernighan,
Dennis M. Ritchie, "The C Programming Language", PTR Prentice
Hall, 1988.
T2. David A. Wheeler, "Secure Programming for Linux and Unix HOWTO", http://www.dwheeler.com/secure-programs/, 2002.
T3. MPI Tutorials:T4. OpenMP Tutorials:
T5. Ian Foster,
"Designing and Building Parallel Programs", ACM Press, 1995.
http://www.mcs.anl.gov/dbpp/text/book.html
T6. George Em
Karniadakis, Robert M. Kirby II, "Parallel Scientific Computing in
C++ and MPI", Cambridge University Press, 2003.
T7. Bruce Eckel, Thinking in *, http://www.bruceeckel.com/
T8. Paul Horowitz, Winfield Hill, "The Art of Electronics", Cambridge University Press, 1990.
T9. David B. Kirk, Wen-mei W. Hwu, "Programming Massively Parallel Processors - A Hands-on Approach", Morgan Kaufmann Publishers, Elsevier, 2010.T10. Brett Lantz, "Machine Learning with R", Second Edition, Packt Publishing, 2015, http://www.packtpub.com