References

Home page Models Systems Tools IT staff References

Agent-Based Models by Nigel Gilbert

A short readable introduction to agent based models. Published by SAGE Publications. ISBN 978-4129-4964-4.

CUDA by Example: An Introduction to General-Purpose GPU Programming by Jason Sanders and Edward Kandrot

A very readable introduction to using CUDA to program GPUs. Published by Addison-Wesley. ISBN-13: 978-0-13-138-768-3. ISBN-10: 0-13-138-768-5.

There is a web page for the book. It has a link for downloading the source code files for the example code used in the book. Once downloaded, the main directory for the examples has a README.txt which has some useful information. Some of the examples (all but the simplest "Hello, World" type of examples) use the GLUT framework, which must be installed before those examples can be built and run.

CUDA C Programming Guide

The authoritative book on programming CUDA. Installed with the CUDA SDK (into /usr/local/cuda/doc). Here is a local copy. Also available from the CUDA SDK dowload page, from the documentation link for each operating system, which can be reached from this page. Used as a reference by other sources. Has more detail than CUDA by Example, Introduction to CUDA so it is a useful complement to those references.

CUDA C Best Practices Guide

Detailed information on safe programming and on optimizations for getting the most performance on a GPU. Installed with the CUDA SDK (into /usr/local/cuda/doc). Here is a local copy. Also available from the CUDA SDK dowload page, from the documentation link for each operating system, which can be reached from this page.

CUDA Toolkit Reference Manual

A reference manual to the CUDA API, the API referenced in CUDA by Example, CUDA C Best Practices Guide, and CUDA Toolkit Reference Manual. Installed with the CUDA SDK (into /usr/local/cuda/doc). Here is a local copy. Also available from the CUDA SDK dowload page, from the documentation link for each operating system, which can be reached from this page.

Data Visualization, Principles and Practice by Alexandru C. Telea

A text on data visualization techniques. It describes algorithms in general. It is not specific to any graphics library, programming language or operating system. Published by A. K. Peters, ISBN-13: 978-1-56881-306-6.

GNU Make by Stallman, et. al.

An open source book on GNU make. Available at GNU Make Manual. Here is a local copy.

How The Immune System Works by Lauren Sompayrac

A short readable introduction to the human immune system. Very useful for someone with little or no biology background. Published by Wiley-Blackwell. ISBN-10: 140516221X. ISBN-13: 978-1405162210

Introduction to CUDA

A series of online lectures from the VSCSE. This is the web page for the online lectures, but you have to be registered to access it (registration is free). The presenter is Joshua A. Anderson, who is a staff research scientist at the University of Michigan Dept. of Chemical Engineering.

Here are local copies of the lectures. The videos won't play in the Ubuntu default video player, Totem. There is probably a codec that can be installed so they will play in Totem. You can also install VLC which will play them.

OpenGL Programming Guide by Shreiner, et. al.

The definitive guide to programming OpenGL. Often referred to as the OpenGL red book because of its red cover. Published by Addison-Wesley. ISBN-10: 0-321-48100-3. ISBN-13: 978-0-321-48100-9.

Programming Massively Parallel Processors: A Hands-on Approach By David B. Kirk and Wen-mei W. Hwu

Published by Elsevier. ISBN: 978-0-12-381472-2.

A book on programming techniques for writing highly parallel programs. Geared toward programming GPUs using CUDA, but the techniques also apply to other parallel programming systems, such as openMP and MPI.

Version Control with Subversion by Ben Collins-Sussman, et. al.

An introduction to using Subversion. Published by CreateSpace. ISBN-10: 1441437762. ISBN-13: 978-1441437761 There is also a free online version. This book describes using svn with the command line program, not a GUI version. Chapters 1 and 2 are especially useful for getting started using svn, even if you intend to use a GUI svn client, because it describes basic svn concepts, and also because the command line program is often useful and sometimes necessary.

A Comparison of Three Methods for Selecting Values of Input Variables in the Analysis of Output from a Computer Code by M. D. McKay et. al.

Published in Technometrics, Vol. 21, No. 2 (May, 1979), pp. 239-245. Published by American Statistical Association and American Society for Quality. Available onlint at the JSTOR site, stable URL: http://www.jstor.org/stable/1268522 . This is an article that describes the LHS (Latin Hypercube Sampling) algorithm. We have a copy available here.