000 03127naaaa2200433uu 4500
003 BUT
005 20230327090558.0
006 m o d
007 cr|mn|---annan
008 201901s2017 enka |||||o ||| eng|| d
020 _a9780262036290
040 _aoapen
_coapen
041 0 _aeng
080 _a004.43
100 1 _aViswanath, Divakar
_4auth
245 1 0 _aScientific Programming and Computer Architecture
260 _aCambridge
_bThe MIT Press
_c2017
300 _a1 electronic resource (624 p.)
336 _atext
_btxt
_2rdacontent
337 _acomputer
_bc
_2rdamedia
338 _aonline resource
_bcr
_2rdacarrier
490 1 _aScientific and Engineering Computation
506 0 _aOpen Access
_2star
_fUnrestricted online access
520 _aA 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 _aCreative Commons
_fby-nc-nd/4.0
_2cc
546 _aEnglish
650 0 _aПрограммирование
_91403
653 _aЯзыки программирования
653 _aПрограммирование приложений
653 _aВысокопроизводительные вычисления
653 _aИнформатика
653 _aC
653 _aС++
830 _94508
_aScientific and Engineering Computation
856 4 0 _awww.oapen.org
_uhttps://library.oapen.org/bitstream/id/2816e391-306f-433e-b296-80cd2afcfd44/Scientific Programming and Computer Architecture.pdf
_70
_zDownload
856 4 0 _awww.oapen.org
_uhttp://library.oapen.org/handle/20.500.12657/26041
_70
_zDescription
909 _c255
_dRobiyakhon Olimjonova
942 _2udc
_cEE
999 _c6108
_d6108