With this practical book, you will attain a solid understanding of threads and will discover how to put this powerful mode of programming to work in real-world applications.The primary advantage of threaded programming is that it enables your applications to accomplish more than one task at the same time by using the number-crunching power of multiprocessor parallelism and by automatically exploiting I/O concurrency in your code, even on a single processor machine. The result: applications that are faster, more responsive to users, and often easier to maintain. Threaded programming is particularly well suited to network programming where it helps alleviate the bottleneck of slow network I/O.This book offers an in-depth description of the IEEE operating system interface standard, POSIXAE (Portable Operating System Interface) threads, commonly called Pthreads. Written for experienced C programmers, but assuming no previous knowledge of threads, the book explains basic concepts such as asynchronous programming, the lifecycle of a thread, and synchronization. You then move to more advanced topics such as attributes objects, thread-specific data, and realtime scheduling. An entire chapter is devoted to "real code," with a look at barriers, read/write locks, the work queue manager, and how to utilize existing libraries. In addition, the book tackles one of the thorniest problems faced by thread programmers-debugging-with valuable suggestions on how to avoid code errors and performance problems from the outset.Numerous annotated examples are used to illustrate real-world concepts. A Pthreads mini-reference and a look at future standardization are also included.
Cited By
- Chang L, Gener S, Mack J, Suluhan H, Akoglu A and Chakrabarti C (2024). Coarse-Grained Task Parallelization by Dynamic Profiling for Heterogeneous SoC-Based Embedded System, ACM Transactions on Embedded Computing Systems, 24:1, (1-32), Online publication date: 31-Jan-2025.
- Yang B, Wei H, Zhu W, Zhang Y, Liu W and Xue W Full lifecycle data analysis on a large-scale and leadership supercomputer Proceedings of the 2024 USENIX Conference on Usenix Annual Technical Conference, (917-933)
- Wang R and Zhang Y (2024). Accelerating spliced alignment of long RNA sequencing reads using parallel maximal exact match retrieval, Computers in Biology and Medicine, 175:C, Online publication date: 1-Jun-2024.
- Cheng J, Josipović L, Wickerson J and Constantinides G (2023). Parallelising Control Flow in Dynamic-scheduling High-level Synthesis, ACM Transactions on Reconfigurable Technology and Systems, 16:4, (1-32), Online publication date: 31-Dec-2024.
- Luo Q, Huang J, Li J and Du Z DFCPP Runtime Library for Dataflow Programming Proceedings of the 52nd International Conference on Parallel Processing Workshops, (145-152)
- Sultana N, Zhu H, Zhong K, Zheng Z, Mao R, Chauhan D, Carrasquillo S, Zhao J, Shi L, Vasilakis N and Loo B Towards Practical Application-level Support for Privilege Separation Proceedings of the 38th Annual Computer Security Applications Conference, (71-87)
- Kamni S, Ouhammou Y, Grolleau E, Bertout A and Hattenberger G A Reverse Design Framework for Modifiable-off-the-Shelf Embedded Systems: Application to Open-Source Autopilots Model and Data Engineering, (133-146)
- Moreno J, Garzón E, Fernández J and Martínez-Sánchez A (2022). HPC enables efficient 3D membrane segmentation in electron tomography, The Journal of Supercomputing, 78:17, (19097-19113), Online publication date: 1-Nov-2022.
- Jammer T, Hück A, Lehr J, Protze J, Schwitanski S and Bischof C Towards a Hybrid MPI Correctness Benchmark Suite Proceedings of the 29th European MPI Users' Group Meeting, (46-56)
- Ozen G and Wolfe M Performant portable OpenMP Proceedings of the 31st ACM SIGPLAN International Conference on Compiler Construction, (156-168)
- Janjic V, Brown C and Barwell A (2021). Restoration of Legacy Parallelism: Transforming Pthreads into Farm and Pipeline Patterns, International Journal of Parallel Programming, 49:6, (886-910), Online publication date: 1-Dec-2021.
- Medeiros T, Berned G, Navarro A, Rossi F, Luizelli M, Brandalero M, Hübner M, Beck A and Lorenzon A (2021). Aging-Aware Parallel Execution, IEEE Embedded Systems Letters, 13:3, (122-125), Online publication date: 1-Sep-2021.
- Cabral F, Anacona-Mosquera O, Sampaio R, Teodoro G, Llanos C and Jacobi R (2021). Optimized execution of morphological reconstruction in large medical images on embedded devices, Journal of Real-Time Image Processing, 18:3, (779-791), Online publication date: 1-Jun-2021.
- Proficz J (2020). Process arrival pattern aware algorithms for acceleration of scatter and gather operations, Cluster Computing, 23:4, (2735-2751), Online publication date: 1-Dec-2020.
- Bilbao S, Perry J, Graham P, Gray A, Kavoussanakis K, Delap G, Mudd T, Sassoon G, Wishart T and Young S (2020). Large-Scale Physical Modeling Synthesis, Parallel Computing, and Musical Experimentation, Computer Music Journal, 43:2-3, (31-47), Online publication date: 1-Jun-2020.
- Zhou H, Gracia J and Schneider R MPI Collectives for Multi-core Clusters Workshop Proceedings of the 48th International Conference on Parallel Processing, (1-10)
- Silva J, Hernández L, Varela N, Pineda Lezama O, Cabrera J, León Castro B, Redondo Bilbao O and Pérez Coronel L Intelligent and Distributed Data Warehouse for Student’s Academic Performance Analysis Advances in Neural Networks – ISNN 2019, (190-199)
- Munguía L, Oxberry G, Rajan D and Shinano Y (2019). Parallel PIPS-SBB, Computational Optimization and Applications, 73:2, (575-601), Online publication date: 1-Jun-2019.
- Li J, Liu X, Jiang L, Liu B, Yang Z and Hu X An Intelligent Deadlock Locating Scheme for Multithreaded Programs Proceedings of the 2019 3rd International Conference on Intelligent Systems, Metaheuristics & Swarm Intelligence, (14-18)
- Grass T, Carlson T, Rico A, Ceballos G, Ayguade E, Casas M and Moreto M (2019). Sampled Simulation of Task-Based Programs, IEEE Transactions on Computers, 68:2, (255-269), Online publication date: 1-Feb-2019.
- Jararweh Y, Al-Ayyoub M, Fakirah M, Alawneh L and Gupta B (2019). Improving the performance of the needleman-wunsch algorithm using parallelization and vectorization techniques, Multimedia Tools and Applications, 78:4, (3961-3977), Online publication date: 1-Feb-2019.
- Lee C, Nam C and Park J (2019). Domain Decomposition Methods Using Dual Conversion for the Total Variation Minimization with $$L^1$$L1 Fidelity Term, Journal of Scientific Computing, 78:2, (951-970), Online publication date: 1-Feb-2019.
- Santos R, Rodriguez N and Ierusalimschy R Revisiting monitors Proceedings of the XXII Brazilian Symposium on Programming Languages, (75-82)
- Pfrommer J, Ebner A, Ravikumar S and Karunakaran B Open Source OPC UA PubSub Over TSN for Realtime Industrial Communication 2018 IEEE 23rd International Conference on Emerging Technologies and Factory Automation (ETFA), (1087-1090)
- Schafmeister C and Wood A Clasp Common Lisp Implementation and Optimization Proceedings of the 11th European Lisp Symposium on European Lisp Symposium, (59-64)
- Bernabé G, Hernández R and Acacio M (2018). Parallel implementations of the 3D fast wavelet transform on a Raspberry Pi 2 cluster, The Journal of Supercomputing, 74:4, (1765-1778), Online publication date: 1-Apr-2018.
- Zanella R, Porta F, Ruggiero V and Zanetti M (2018). Serial and parallel approaches for image segmentation by numerical minimization of a second-order functional, Applied Mathematics and Computation, 318:C, (153-175), Online publication date: 1-Feb-2018.
- Ortega G, Filatovas E, Garzón E and Casado L (2017). Non-dominated sorting procedure for Pareto dominance ranking on multicore CPU and/or GPU, Journal of Global Optimization, 69:3, (607-627), Online publication date: 1-Nov-2017.
- Qayum M, Badawy A and Cook J DyAdHyTM Proceedings of the International Symposium on Memory Systems, (327-336)
- S. Alves E, Cordeiro L and L. Filho E (2017). A method to localize faults in concurrent C programs, Journal of Systems and Software, 132:C, (336-352), Online publication date: 1-Oct-2017.
- Youkana I, Cousty J, Saouli R and Akil M (2017). Parallelization Strategy for Elementary Morphological Operators on Graphs, Journal of Mathematical Imaging and Vision, 59:1, (136-160), Online publication date: 1-Sep-2017.
- Torreno O and Trelles O (2017). Two level parallelism and I/O reduction in genome comparisons, Cluster Computing, 20:3, (1925-1936), Online publication date: 1-Sep-2017.
- Evans N, Olivier S, Barrett R and Stelle G Scheduling Chapel Tasks with Qthreads on Manycore Proceedings of the 7th International Workshop on Runtime and Operating Systems for Supercomputers ROSS 2017, (1-8)
- Gutierrez-Alcoba A, Ortega G, Hendrix E and Garca I (2017). Accelerating an algorithm for perishable inventory control on heterogeneous platforms, Journal of Parallel and Distributed Computing, 104:C, (12-18), Online publication date: 1-Jun-2017.
- Komosinski M and Ulatowski S (2017). Multithreaded computing in evolutionary design and in artificial life simulations, The Journal of Supercomputing, 73:5, (2214-2228), Online publication date: 1-May-2017.
- Hsu T, Brügner H, Roy I, Keeton K and Eugster P NVthreads Proceedings of the Twelfth European Conference on Computer Systems, (468-482)
- Laug P, Guibault F and Borouchaki H (2017). Parallel meshing of surfaces represented by collections of connected regions, Advances in Engineering Software, 103:C, (13-20), Online publication date: 1-Jan-2017.
- Torun M, Yilmaz O and Akansu A (2016). FPGA, GPU, and CPU implementations of Jacobi algorithm for eigenanalysis, Journal of Parallel and Distributed Computing, 96:C, (172-180), Online publication date: 1-Oct-2016.
- Caheny P, Casas M, Moretó M, Gloaguen H, Saintes M, Ayguadé E, Labarta J and Valero M Reducing Cache Coherence Traffic with Hierarchical Directory Cache and NUMA-Aware Runtime Scheduling Proceedings of the 2016 International Conference on Parallel Architectures and Compilation, (275-286)
- Huang J, Prabhu P, Jablin T, Ghosh S, Apostolakis S, Lee J and August D Speculatively Exploiting Cross-Invocation Parallelism Proceedings of the 2016 International Conference on Parallel Architectures and Compilation, (207-221)
- Roy P, Liu X and Song S SMT-Aware Instantaneous Footprint Optimization Proceedings of the 25th ACM International Symposium on High-Performance Parallel and Distributed Computing, (267-279)
- Hansen G, Xavier P, Mish S, Voth T, Heinstein M and Glass M (2016). An MPI+$$X$$X implementation of contact global search using Kokkos, Engineering with Computers, 32:2, (295-311), Online publication date: 1-Apr-2016.
- Chasapis D, Casas M, Moretó M, Vidal R, Ayguadé E, Labarta J and Valero M (2015). PARSECSs, ACM Transactions on Architecture and Code Optimization, 12:4, (1-22), Online publication date: 7-Jan-2016.
- Marcus A and Parameswaran A (2015). Crowdsourced Data Management, Foundations and Trends in Databases, 6:1-2, (1-161), Online publication date: 22-Dec-2015.
- Liu X and Wu B ScaAnalyzer Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, (1-12)
- Puffitsch W Fernando Proceedings of the 13th International Workshop on Java Technologies for Real-time and Embedded Systems, (1-9)
- Kasikci B, Schubert B, Pereira C, Pokam G and Candea G Failure sketching Proceedings of the 25th Symposium on Operating Systems Principles, (344-360)
- Lorenzon A, Cera M and Schneider Beck A (2015). Performance and Energy Evaluation of Different Multi-Threading Interfaces in Embedded and General Purpose Systems, Journal of Signal Processing Systems, 80:3, (295-307), Online publication date: 1-Sep-2015.
- Kerrison S and Eder K (2015). Energy Modeling of Software for a Hardware Multithreaded Embedded Microprocessor, ACM Transactions on Embedded Computing Systems, 14:3, (1-25), Online publication date: 21-May-2015.
- Yen-Ting Yu , Geng-He Lin , Jiang I and Chiang C (2015). Machine-Learning-Based Hotspot Detection Using Topological Classification and Critical Feature Extraction, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 34:3, (460-470), Online publication date: 1-Mar-2015.
- Marzulo L, Alves T, França F and Costa V (2014). Couillard, Parallel Computing, 40:10, (661-680), Online publication date: 1-Dec-2014.
- Müller S, Alonso G, Amara A and Csillaghy A Pydron Proceedings of the 11th USENIX conference on Operating Systems Design and Implementation, (645-659)
- Olukotun K, Hammond L and Willey M Author's retrospective for ACM International Conference on Supercomputing 25th Anniversary Volume, (51-53)
- Liu A, Liu J and Uehara T Secure streaming forensic data transmission for trusted cloud Proceedings of the 2nd international workshop on Security and forensics in communication systems, (3-10)
- Jongmans S, Halle S and Arbab F Automata-Based Optimization of Interaction Protocols for Scalable Multicore Platforms Proceedings of the 16th IFIP WG 6.1 International Conference on Coordination Models and Languages - Volume 8459, (65-82)
- Xu R, Tian X, Yan Y, Chandrasekaran S and Chapman B Reduction Operations in Parallel Loops for GPGPUs Proceedings of Programming Models and Applications on Multicores and Manycores, (10-20)
- Xu R, Tian X, Yan Y, Chandrasekaran S and Chapman B Reduction Operations in Parallel Loops for GPGPUs Proceedings of Programming Models and Applications on Multicores and Manycores, (10-20)
- Hung W and Garg V (2013). AutoSynch, ACM SIGPLAN Notices, 48:6, (253-262), Online publication date: 23-Jun-2013.
- Hung W and Garg V AutoSynch Proceedings of the 34th ACM SIGPLAN Conference on Programming Language Design and Implementation, (253-262)
- Ghoting A, Gunnels J, Kambadur P, Pednault E and Squillante M (2013). Trends and outlook for the massive-scale analytics stack, IBM Journal of Research and Development, 57:3-4, (2-2), Online publication date: 1-May-2013.
- Ojail M, David R, Lhuillier Y and Guerre A ARTM Proceedings of the Conference on Design, Automation and Test in Europe, (1510-1515)
- Choi H and Burgstaller B Non-blocking parallel subset construction on shared-memory multicore architectures Proceedings of the Eleventh Australasian Symposium on Parallel and Distributed Computing - Volume 140, (13-20)
- Le D, Chin W and Teo Y Variable permissions for concurrency verification Proceedings of the 14th international conference on Formal Engineering Methods: formal methods and software engineering, (5-21)
- McKenney P Beyond expert-only parallel programming? Proceedings of the 2012 ACM workshop on Relaxing synchronization for multicore and manycore scalability, (25-32)
- Bistarelli S and Santini F Securely accessing shared resources with concurrent constraint programming Proceedings of the 10th international conference on Software Engineering and Formal Methods, (308-322)
- Huang Y, Cui Z, Chen L, Zhang W, Bao Y and Chen M HaLock Proceedings of the 21st international conference on Parallel architectures and compilation techniques, (253-262)
- Chen Q, Guo M and Huang Z CATS Proceedings of the 26th ACM international conference on Supercomputing, (163-172)
- Terechko A, Hoogerbrugge J, Alkadi G, Guntur S, Lahiri A, Duranton M, Wüst C, Christie P, Nackaerts A and Kumar A (2012). Balancing Programmability and Silicon Efficiency of Heterogeneous Multicore Architectures, ACM Transactions on Embedded Computing Systems, 11S:1, (1-32), Online publication date: 1-Jun-2012.
- Bistarelli S, Campli P and Santini F A secure coordination of agents with nonmonotonic soft Concurrent Constraint Programming Proceedings of the 27th Annual ACM Symposium on Applied Computing, (1551-1553)
- Radojković P, Girbal S, Grasset A, Quiñones E, Yehia S and Cazorla F (2012). On the evaluation of the impact of shared resources in multithreaded COTS processors in time-critical environments, ACM Transactions on Architecture and Code Optimization, 8:4, (1-25), Online publication date: 1-Jan-2012.
- Gopalakrishnan G, Kirby R, Siegel S, Thakur R, Gropp W, Lusk E, De Supinski B, Schulz M and Bronevetsky G (2011). Formal analysis of MPI-based parallel programs, Communications of the ACM, 54:12, (82-91), Online publication date: 1-Dec-2011.
- Jannesari A, Westphal-Furuya M and Tichy W Dynamic data race detection for correlated variables Proceedings of the 11th international conference on Algorithms and architectures for parallel processing - Volume Part I, (14-26)
- Torres W, Pinto G, Fernandes B, Oliveira J, Ximenes F and Castor F Are Java programmers transitioning to multicore? Proceedings of the compilation of the co-located workshops on DSM'11, TMC'11, AGERE! 2011, AOOPES'11, NEAT'11, & VMIL'11, (123-128)
- Smith A and Kulkarni P Localizing globals and statics to make C programs thread-safe Proceedings of the 14th international conference on Compilers, architectures and synthesis for embedded systems, (205-214)
- Müldner T, Fry C, Corbin T and Miziołek J Parallelization of an XML data compressor on multi-cores Proceedings of the 9th international conference on Parallel Processing and Applied Mathematics - Volume Part II, (101-110)
- Viry P Parallel and distributed programming extensions for mainstream languages based on pi-calculus Proceedings of the 30th annual ACM SIGACT-SIGOPS symposium on Principles of distributed computing, (343-344)
- Auhagen S, Bergstrom L, Fluet M and Reppy J Garbage collection for multicore NUMA machines Proceedings of the 2011 ACM SIGPLAN Workshop on Memory Systems Performance and Correctness, (51-57)
- Prabhu P, Ghosh S, Zhang Y, Johnson N and August D Commutative set Proceedings of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, (1-11)
- Prabhu P, Ghosh S, Zhang Y, Johnson N and August D (2011). Commutative set, ACM SIGPLAN Notices, 46:6, (1-11), Online publication date: 4-Jun-2011.
- Schuessler O and Loyola D Parallel training of artificial neural networks using multithreaded and multicore CPUs Proceedings of the 10th international conference on Adaptive and natural computing algorithms - Volume Part I, (70-79)
- Hobor A and Gherghina C Barriers in concurrent separation logic Proceedings of the 20th European conference on Programming languages and systems: part of the joint European conferences on theory and practice of software, (276-296)
- Kestor G, Karakostas V, Unsal O, Cristal A, Hur I and Valero M RMS-TM: a comprehensive benchmark suite for transactional memory systems Proceedings of the 2nd ACM/SPEC International Conference on Performance engineering, (335-346)
- Mara H, Krömker S, Jakob S and Breuckmann B GigaMesh and gilgamesh Proceedings of the 11th International conference on Virtual Reality, Archaeology and Cultural Heritage, (131-138)
- Vandierendonck H, Rul S and De Bosschere K The Paralax infrastructure Proceedings of the 19th international conference on Parallel architectures and compilation techniques, (389-400)
- Li J, Wang S, Hsu P, Chen P and Lee J A multi-core software API for embedded MPSoC environments Proceedings of the Second Russia-Taiwan conference on Methods and tools of parallel programming multicomputers, (40-50)
- Howison M, Bethel E and Childs H MPI-hybrid parallelism for volume rendering on large, multi-core systems Proceedings of the 10th Eurographics conference on Parallel Graphics and Visualization, (1-10)
- Tallent N, Mellor-Crummey J and Porterfield A (2010). Analyzing lock contention in multithreaded applications, ACM SIGPLAN Notices, 45:5, (269-280), Online publication date: 1-May-2010.
- Yang L, Yu L, Tang J, Wang L, Zhao J and Li X Enabling multi-core based monitoring and fault tolerance in C++/Java Proceedings of the 3rd International Workshop on Multicore Software Engineering, (32-39)
- Brady E and Hammond K (2010). Correct-by-Construction Concurrency: Using Dependent Types to Verify Implementations of Effectful Resource Usage Protocols, Fundamenta Informaticae, 102:2, (145-176), Online publication date: 1-Apr-2010.
- Van Nieuwpoort R, Wrzesińska G, Jacobs C and Bal H (2010). Satin, ACM Transactions on Programming Languages and Systems, 32:3, (1-39), Online publication date: 1-Mar-2010.
- Tallent N, Mellor-Crummey J and Porterfield A Analyzing lock contention in multithreaded applications Proceedings of the 15th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, (269-280)
- Peusaari J, Ikonen J and Porras J Distribution Issues in Real-Time Interactive Simulation Proceedings of the 2009 13th IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications, (227-230)
- Wolffe G and Trefftz C (2009). Teaching parallel computing, Journal of Computing Sciences in Colleges, 25:1, (21-28), Online publication date: 1-Oct-2009.
- Backes W and Wetzel S Parallel Lattice Basis Reduction Using a Multi-threaded Schnorr-Euchner LLL Algorithm Proceedings of the 15th International Euro-Par Conference on Parallel Processing, (960-973)
- Izzo D, Rucinski M and Ampatzis C Parallel global optimisation meta-heuristics using an asynchronous island-model Proceedings of the Eleventh conference on Congress on Evolutionary Computation, (2301-2308)
- Tallent N and Mellor-Crummey J (2009). Effective performance measurement and analysis of multithreaded applications, ACM SIGPLAN Notices, 44:4, (229-240), Online publication date: 14-Feb-2009.
- Tallent N and Mellor-Crummey J Effective performance measurement and analysis of multithreaded applications Proceedings of the 14th ACM SIGPLAN symposium on Principles and practice of parallel programming, (229-240)
- Adams M and Kwon M Vulnerabilities of the real-time transport (RTP) protocol for voice over IP (VoIP) traffic Proceedings of the 6th IEEE Conference on Consumer Communications and Networking Conference, (958-962)
- Krischer R and Buhr P Asynchronous exception propagation in blocked tasks Proceedings of the 4th international workshop on Exception handling, (8-15)
- Bachmann P Deferred cancellation Proceedings of the 15th Conference on Pattern Languages of Programs, (1-17)
- Brodman J, Fraguela B, Garzarán M and Padua D Design Issues in Parallel Array Languages for Shared Memory Proceedings of the 8th international workshop on Embedded Computer Systems: Architectures, Modeling, and Simulation, (208-217)
- Ezekiel J and Lüttgen G (2008). Measuring and Evaluating Parallel State-Space Exploration Algorithms, Electronic Notes in Theoretical Computer Science (ENTCS), 198:1, (47-61), Online publication date: 1-Feb-2008.
- Moura P, Crocker P and Nunes P High-level multi-threading programming in logtalk Proceedings of the 10th international conference on Practical aspects of declarative languages, (265-281)
- White D and Lüttgen G (2008). Embedded systems programming, EURASIP Journal on Embedded Systems, 2008, (1-17), Online publication date: 1-Jan-2008.
- Zumbusch G A container-iterator parallel programming model Proceedings of the 7th international conference on Parallel processing and applied mathematics, (1130-1139)
- Huang J, Jiao X, Fujimoto R and Zha H DAG-guided parallel asynchronous variational integrators with super-elements Proceedings of the 2007 Summer Computer Simulation Conference, (691-697)
- Tremblay G, Malenfant B, Salah A and Zentilli P (2007). Introducing students to professional software construction, ACM SIGCSE Bulletin, 39:3, (176-180), Online publication date: 25-Jun-2007.
- Tremblay G, Malenfant B, Salah A and Zentilli P Introducing students to professional software construction Proceedings of the 12th annual SIGCSE conference on Innovation and technology in computer science education, (176-180)
- Stroustrup B Evolving a language in and for the real world Proceedings of the third ACM SIGPLAN conference on History of programming languages, (4-1-4-59)
- Mateescu G Overcoming the processor communication overhead in MPI applications Proceedings of the 2007 spring simulation multiconference - Volume 2, (375-378)
- Antony J, Janes P and Rendell A Exploring thread and memory placement on NUMA architectures Proceedings of the 13th international conference on High Performance Computing, (338-352)
- McCartney W and Sridhar N Abstractions for safe concurrent programming in networked embedded systems Proceedings of the 4th international conference on Embedded networked sensor systems, (167-180)
- Hankins R, Chinya G, Collins J, Wang P, Rakvic R, Wang H and Shen J Multiple Instruction Stream Processor Proceedings of the 33rd annual international symposium on Computer Architecture, (114-127)
- Barton C, Casçaval C, Almási G, Zheng Y, Farreras M, Chatterje S and Amaral J Shared memory programming for large scale machines Proceedings of the 27th ACM SIGPLAN Conference on Programming Language Design and Implementation, (108-117)
- Barton C, Casçaval C, Almási G, Zheng Y, Farreras M, Chatterje S and Amaral J (2006). Shared memory programming for large scale machines, ACM SIGPLAN Notices, 41:6, (108-117), Online publication date: 11-Jun-2006.
- Hankins R, Chinya G, Collins J, Wang P, Rakvic R, Wang H and Shen J (2006). Multiple Instruction Stream Processor, ACM SIGARCH Computer Architecture News, 34:2, (114-127), Online publication date: 1-May-2006.
- Melatti I, Palmer R, Sawaya G, Yang Y, Kirby R and Gopalakrishnan G Parallel and distributed model checking in eddy Proceedings of the 13th international conference on Model Checking Software, (108-125)
- Korch M and Rauber T (2006). Optimizing locality and scalability of embedded Runge--Kutta solvers using block-based pipelining, Journal of Parallel and Distributed Computing, 66:3, (444-468), Online publication date: 1-Mar-2006.
- Buhr P and Harji A (2005). Implicit-signal monitors, ACM Transactions on Programming Languages and Systems, 27:6, (1270-1343), Online publication date: 1-Nov-2005.
- Huang M and Bode B A Performance Comparison of Tree and Ring Topologies in Distributed Systems Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Workshop 13 - Volume 14
- Blaar H, Lange T, Winter R and Karnstedt M Possibilities to Solve the Clique Problem by Thread Parallelism using Task Pools Proceedings of the 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS'05) - Workshop 5 - Volume 06
- Duller A, Towner D, Panesar G, Gray A and Robbins W picoArray Technology Proceedings of the conference on Design, Automation and Test in Europe - Volume 3, (106-111)
- Keller J and Gravinghoff A (2005). Thread-Based Virtual Duplex Systems in Embedded Environments, IEEE Micro, 25:2, (60-69), Online publication date: 1-Mar-2005.
- Hoffmann R, Korch M and Rauber T Performance Evaluation of Task Pools Based on Hardware Synchronization Proceedings of the 2004 ACM/IEEE conference on Supercomputing
- Zhang G, Silvera R and Archambault R Structure and algorithm for implementing OpenMP workshares Proceedings of the 5th international conference on OpenMP Applications and Tools: shared Memory Parallel Programming with OpenMP, (110-120)
- Sood N and Wieland F Simulation of airports/aviation systems Proceedings of the 35th conference on Winter simulation: driving innovation, (1650-1655)
- Grossman D (2003). Type-safe multithreading in cyclone, ACM SIGPLAN Notices, 38:3, (13-25), Online publication date: 18-Mar-2003.
- Grossman D Type-safe multithreading in cyclone Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementation, (13-25)
- Sung M, Kim S, Park S, Chang N and Shin H (2002). Comparative performance evaluation of Java threads for embedded applications, Information Processing Letters, 84:4, (221-225), Online publication date: 30-Nov-2002.
- Williams N An Implementation of Scheduler Activations on the NetBSD Operating System Proceedings of the FREENIX Track: 2002 USENIX Annual Technical Conference, (99-108)
- Roychoudhury A and Mitra T Specifying multithreaded Java semantics for program verification Proceedings of the 24th International Conference on Software Engineering, (489-499)
- Blaar H, Legeler M and Rauber T Efficiency of Thread-Parallel Java Programs from Scientific Computing Proceedings of the 16th International Parallel and Distributed Processing Symposium
- Eleftheriou M, Chatterjee S and Moreira J A C++ Implementation of the Co-Array Programming Model for Blue Gene/L Proceedings of the 16th International Parallel and Distributed Processing Symposium
- Luk C Tolerating memory latency through software-controlled pre-execution in simultaneous multithreading processors Proceedings of the 28th annual international symposium on Computer architecture, (40-51)
- Luk C (2001). Tolerating memory latency through software-controlled pre-execution in simultaneous multithreading processors, ACM SIGARCH Computer Architecture News, 29:2, (40-51), Online publication date: 1-May-2001.
- Kirchberg M and Schewe K A comparison of multi-level concurrency control protocols Proceedings of the 12th Australasian database conference, (153-160)
- Buhr P, Harji A, Lim P and Chen J (2000). Object-oriented real-time concurrency, ACM SIGPLAN Notices, 35:10, (29-46), Online publication date: 1-Oct-2000.
- Buhr P, Harji A, Lim P and Chen J Object-oriented real-time concurrency Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (29-46)
- Bethel W (2000). Visualization Dot Com, IEEE Computer Graphics and Applications, 20:3, (17-20), Online publication date: 1-May-2000.
- Ling Y, Mullen T and Lin X (2000). Analysis of optimal thread pool size, ACM SIGOPS Operating Systems Review, 34:2, (42-55), Online publication date: 1-Apr-2000.
- Agesen O, Detlefs D, Garthwaite A, Knippel R, Ramakrishna Y and White D (1999). An efficient meta-lock for implementing ubiquitous synchronization, ACM SIGPLAN Notices, 34:10, (207-222), Online publication date: 1-Oct-1999.
- Agesen O, Detlefs D, Garthwaite A, Knippel R, Ramakrishna Y and White D An efficient meta-lock for implementing ubiquitous synchronization Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, (207-222)
- Boissonnat J, Cazals F, Da F, Devillers O, Pion S, Rebufat F, Teillaud M and Yvinec M Programming with CGAL Proceedings of the fifteenth annual symposium on Computational geometry, (421-422)
- Humphrey M and Stankovic J (1999). Predictable Threads for Dynamic, Hard Real-Time Environments, IEEE Transactions on Parallel and Distributed Systems, 10:3, (281-296), Online publication date: 1-Mar-1999.
- Kwak H, Lee B, Hurson A, Yoon S and Hahn W (1999). Effects of Multithreading on Cache Performance, IEEE Transactions on Computers, 48:2, (176-184), Online publication date: 1-Feb-1999.
- Lu H, Hu Y and Zwaenepoel W OpenMP on networks of workstations Proceedings of the 1998 ACM/IEEE conference on Supercomputing, (1-15)
Index Terms
- Programming with POSIX threads