17. Conflicting Visions of the Future
Keywords: perfbook_html

#
17. Conflicting Visions of the Future

This chapter presents some conflicting visions of the future of parallel programming. It is not clear which of these will come to pass, in fact, it is not clear that any of them will. They are nevertheless important because each vision has its devoted adherents, and if enough people believe in something fervently enough, you will need to deal with that thing's existence in the form of its influence on the thoughts, words, and deeds of its adherents. Besides which, it is entirely possible that one or more of these visions will actually come to pass.

Therefore, the following sections give an overview of transactional memory, shared-memory parallel functional programming, and process-based parallel functional programming.

Subsections

- 17.1 Transactional Memory
  - 17.1.1 I/O Operations
  - 17.1.2 RPC Operations
  - 17.1.3 Memory-Mapping Operations
  - 17.1.4 Multithreaded Transactions
  - 17.1.5 Extra-Transactional Accesses
  - 17.1.6 Time Delays
  - 17.1.7 Locking
  - 17.1.8 Reader-Writer Locking
  - 17.1.9 Persistence
  - 17.1.10 Dynamic Linking and Loading
  - 17.1.11 Debugging
  - 17.1.12 The exec() System Call
  - 17.1.13 RCU
  - 17.1.14 Discussion
- 17.2 Shared-Memory Parallel Functional Programming
- 17.3 Process-Based Parallel Functional Programming