Scientific Programming and Computer Architecture

A variety of programming models relevant to scientists explained, with an emphasis on how programming constructs map to parts of the computer.What makes computer programs fast or slow? To answer this question, we have to get behind the abstractions of programming languages and look at how a computer...

Full description

Saved in:
Bibliographic Details
Main Author: Viswanath, Divakar (auth)
Format: Electronic Book Chapter
Language:English
Published: Cambridge The MIT Press 2017
Series:Scientific and Engineering Computation
Subjects:
Online Access:OAPEN Library: download the publication
OAPEN Library: description of the publication
Tags: Add Tag
No Tags, Be the first to tag this record!

MARC

LEADER 00000naaaa2200000uu 4500
001 oapen_2024_20_500_12657_26041
005 20190117
003 oapen
006 m o d
007 cr|mn|---annan
008 20190117s2017 xx |||||o ||| 0|eng d
020 |a 9780262036290 
040 |a oapen  |c oapen 
041 0 |a eng 
042 |a dc 
072 7 |a UMS  |2 bicssc 
072 7 |a UY  |2 bicssc 
072 7 |a UYZM  |2 bicssc 
100 1 |a Viswanath, Divakar  |4 auth 
245 1 0 |a Scientific Programming and Computer Architecture 
260 |a Cambridge  |b The MIT Press  |c 2017 
300 |a 1 electronic resource (624 p.) 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
490 1 |a Scientific and Engineering Computation 
506 0 |a Open Access  |2 star  |f Unrestricted online access 
520 |a A variety of programming models relevant to scientists explained, with an emphasis on how programming constructs map to parts of the computer.What makes computer programs fast or slow? To answer this question, we have to get behind the abstractions of programming languages and look at how a computer really works. This book examines and explains a variety of scientific programming models (programming models relevant to scientists) with an emphasis on how programming constructs map to different parts of the computer's architecture. Two themes emerge: program speed and program modularity. Throughout this book, the premise is to "get under the hood," and the discussion is tied to specific programs. The book digs into linkers, compilers, operating systems, and computer architecture to understand how the different parts of the computer interact with programs. It begins with a review of C/C++ and explanations of how libraries, linkers, and Makefiles work. Programming models covered include Pthreads, OpenMP, MPI, TCP/IP, and CUDA.The emphasis on how computers work leads the reader into computer architecture and occasionally into the operating system kernel. The operating system studied is Linux, the preferred platform for scientific computing. Linux is also open source, which allows users to peer into its inner workings. A brief appendix provides a useful table of machines used to time programs. The book's website (https://github.com/divakarvi/bk-spca) has all the programs described in the book as well as a link to the html text. 
540 |a Creative Commons  |f by-nc-nd/4.0  |2 cc  |4 http://creativecommons.org/licenses/by-nc-nd/4.0 
546 |a English 
650 7 |a Mobile & handheld device programming / Apps programming  |2 bicssc 
650 7 |a Computer science  |2 bicssc 
650 7 |a Information architecture  |2 bicssc 
653 |a C 
653 |a C++ 
653 |a programming languages 
653 |a processor 
653 |a memory 
653 |a network 
653 |a high performance computing 
653 |a computer science 
653 |a engineering 
653 |a super computing 
856 4 0 |a www.oapen.org  |u https://library.oapen.org/bitstream/id/2816e391-306f-433e-b296-80cd2afcfd44/Scientific Programming and Computer Architecture.pdf  |7 0  |z OAPEN Library: download the publication 
856 4 0 |a www.oapen.org  |u http://library.oapen.org/handle/20.500.12657/26041  |7 0  |z OAPEN Library: description of the publication