 |
A Thread Performance Comparison - Compares Windows NT and Solaris on a symmetric multiprocessor machine.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Application-Level Abstractions for Lock-Free Data Sharing - Describes lock-free data sharing, otherwise known as "wait-free data sharing" as an alternative to the use of locks.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Apply Critical Sections Consistently - Critical sections are the One True Tool for guaranteeing mutual exclusion on shared variables. Like most tools, these must be applied consistently, and with the intended meanings.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Await && Locks - An expressive C++ thread synchronization library.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Bibliography on Threads and Multithreading - Part of the Computer Science Bibliography Collection.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
comp.programming.threads FAQ - Bil Lewis's collection of frequently asked questions.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
comp.programming.threads FAQ - Frequently asked questions (by Bryan O'Sullivan).
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Concurrency with Erlang - To avoid problems with shared state working with multiple threads, Vinoski recommends a programming language like Erlang rather than C++ or Java.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Concurrent Programming: Principles and Practice - http://www.aw-bc.com/catalog/academic/product/0,1144,0805300864,00.html This book provides an in-depth overview of underlying principles as well as practical techniques that can be used to design concurrent programs. (Greg Andrews)
Status Code: 302 - Location: http://www.pearsonhighered.com/educator/academic/product/0,,0805300864,00%2ben-USS_01DBC.h... Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Foundations of Multithreaded, Parallel, and Distributed Programming - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html This book teaches the fundamental concepts of multithreaded, parallel and distributed computing. Emphasizes how to solve problems, with correctness the primary concern and performance an important, but secondary, concern. (Gregory R. Andrews)
Status Code: 302 - Location: http://www.pearsonhighered.com/educator/academic/product/0,,0201357526,00%2ben-USS_01DBC.h... Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Fundamentals of Multithreading - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Technical article, covering Amdahl's Law, latencies and bandwidth, on-chip multiprocessing, Jackson technology, and simultaneous multithreading. (SystemLogic.net)
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Generic Synchronization Policies in C++ - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Most uses of synchronization code in multi-threaded applications fall into a small number of high-level ?usage patterns?, or what can be called generic synchronization policies (GSPs). This paper illustrates how the use of such GSPs simplify the writing of thread-safe classes. In addition, this paper presents a C++ class library that implements commonly-used GSPs.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Introduction to Priority Inversion - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Gives an introduction to priority inversion and shows a pair of techniques to avoid them.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
It's (Not) All Been Done - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Every decade or so there is a major revolution in the way software is developed. But, unlike the object and web revolutions, the concurrency revolution can be seen coming.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Lock-Free Code: A False Sense of Security - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Writing lock-free code can confound anyone-even expert programmers, as Herb shows in this article.
Status Code: 404 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Lock-free Interprocess Communication - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Interprocess communication is an essential component of modern software engineering. Often, lock-free IPC is accomplished via special processor commands. This article propose a communication type that requires only atomic writing of processor word from processor cache into main memory and atomic processor word reading from main memory into the processor register or processor cache.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Maximize Locality, Minimize Contention - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Explains why in the concurrent world, locality is a first-order issue that trumps most other performance considerations. Now locality is no longer just about fitting well into cache and RAM, but to avoid scalability busters by keeping tightly coupled data physically close together and separately used data far, far apart.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Multi-threaded Debugging Techniques - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Describes a number of general purpose debugging techniques for multi-threaded applications.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Portable Thread Synchronization using C++ - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Provides example C++ classes implementing a series of synchronization objects useful for building portable (Solaris and Win32) multithreaded applications.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Priority Inheritance Protocols - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Use of synchronization mechanisms like semaphores, monitors, and critical regions can lead to uncontrolled priority inversion.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Protothreads - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Very lightweight stackless threads; give linear code execution for event-driven systems, designed to use little memory; library is pure C, no platform-specific Assembly; usable with or without OS. Open source, BSD-type license.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
RT++ - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Higher order threads for C++; tutorial and reference manual.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Software and the Concurrency Revolution - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Focuses on the implications of concurrency for software and its consequences for both programming languages and programmers. (Herb Sutter and James Larus)
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
State Threads Library - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Small application library for writing fast, highly scalable Internet programs on Unix-like platforms. Open source, MPL or GPL.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Survey of Threads - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Comparing Solaris, Linux, and Windows NT threads.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Sutter Speaks: A Conversation with the Concurrency Whisperer - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Multi- and many-core chips are entering the mainstream ? and one of the first software development authorities to take note was C++ expert Herb Sutter. Thanks to his practical insights, a new generation may grok concurrency sooner than previously thought possible.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Sutter Speaks: The Future of Concurrency - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html What does the future hold for concurrency? What will happen to the tools and techniques around concurrent programming? In part two of our series, concurrency guru Herb Sutter talks about these issues and what developers need to be reading to understand concurrency.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html The biggest sea change in software development since the OO revolution is knocking at the door, and its name is Concurrency.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
The Many Faces of Deadlock - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Explains that deadlock can happen whenever there is a blocking (or waiting) cycle among concurrent tasks.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
The Pillars of Concurrency - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html This article makes the case that a consistent mental model is needed to talk about concurrency.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
The Problem with Threads - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Argues that for concurrent programming to become mainstream, threads must be discarded as a programming model. Nondeterminism should be judiciously and carefully introduced where needed, and it should be explicit in programs.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Thread Implementation Table - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Dave Butenhof's comparison of thread implementations.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
Use Lock Hierarchies to Avoid Deadlock - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Explains how to use lock hierarchies to avoid deadlock by assigning each shared resource a level that corresponds to its architectural layer.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
volatile - Multithreaded Programmer's Best Friend - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html Discusses the usage of the volatile keyword in multithreaded C++ programs.
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |
 |
ZThreads - http://www.aw-bc.com/catalog/academic/product/0,1144,0201357526,00.html An advanced object-oriented, cross-platform C++ threading and synchronization library. [GPL]
Status Code: 200 Edit listing [dmoz.org] - Report dead link [dmoz.org] - Edit Category [dmoz.org] |