Multi-threaded Programming

From Gridkaschool
Revision as of 09:22, 29 August 2012 by Zvada (talk | contribs)

Technical specification/requirements

Introduction

Intel Threading Building Blocks (TBB) is an open-source C++ library to support the development of mulit-threaded applications which can exploit the available processing cores in modern CPUs. Therefore, various contsructs to support parallelism in applications are provided by TBB. Low-level constructs are available to partition loops to run them distributed over many CPU cores. High-level constructs like a task scheduler and a graph-based execution model allow to express dependencies and relations between computing tasks and TBB can distribute these items among the available cores.

Furthermore, C++ classes are included that guarantee a thread-safe access to containers like lists and maps. Also explicit locking constructs like mutexes are available.

The TBB library supports the Windows, Mac OS and Linux operating systems and the Visual C++, GCC and Intel compilers.


Hosts to use

UID	Host name		IP address
065	gks-212.scc.kit.edu	141.52.174.212
066	gks-213.scc.kit.edu	141.52.174.213
073	gks-214.scc.kit.edu	141.52.174.214
074	gks-215.scc.kit.edu	141.52.174.215
084	gks-216.scc.kit.edu	141.52.174.216
085	gks-217.scc.kit.edu	141.52.174.217
090	gks-218.scc.kit.edu	141.52.174.218
091	gks-219.scc.kit.edu	141.52.174.219
094	gks-220.scc.kit.edu	141.52.174.220
102	gks-221.scc.kit.edu	141.52.174.221
109	gks-222.scc.kit.edu	141.52.174.222
022	gks-223.scc.kit.edu	141.52.174.223
117	gks-224.scc.kit.edu	141.52.174.224
118	gks-225.scc.kit.edu	141.52.174.225
127	gks-226.scc.kit.edu	141.52.174.226
128	gks-227.scc.kit.edu	141.52.174.227
132	gks-228.scc.kit.edu	141.52.174.228
134	gks-229.scc.kit.edu	141.52.174.229
137	gks-230.scc.kit.edu	141.52.174.230
138	gks-231.scc.kit.edu	141.52.174.231
139	gks-232.scc.kit.edu	141.52.174.232
140	gks-233.scc.kit.edu	141.52.174.233

Tutorial Material

Reference Material