34654
34654
com
https://ebookluna.com/download/the-art-of-multiprocessor-
programming-ebook-pdf/
OR CLICK HERE
DOWLOAD EBOOK
https://ebookluna.com/product/ebook-pdf-the-art-of-access-strategies-
for-acquiring-public-records-2nd-edition/
ebookluna.com
https://ebookluna.com/product/ebook-pdf-fundamentals-perspectives-on-
the-art-and-science-of-canadian-nursing-2nd-edition/
ebookluna.com
https://ebookluna.com/product/ebook-pdf-a-history-of-roman-art-2nd-
edition/
ebookluna.com
https://ebookluna.com/download/the-human-body-in-health-and-illness-
ebook-pdf/
ebookluna.com
(eBook PDF) The Art of Electronics 3rd Edition
https://ebookluna.com/product/ebook-pdf-the-art-of-electronics-3rd-
edition/
ebookluna.com
https://ebookluna.com/product/ebook-pdf-the-art-of-leadership-6th-
edition/
ebookluna.com
https://ebookluna.com/product/ebook-pdf-the-power-of-art-3rd-edition/
ebookluna.com
https://ebookluna.com/product/ebook-pdf-fundamentals-of-c-programming-
for-information-systems-2nd-edition/
ebookluna.com
https://ebookluna.com/product/ebook-pdf-fundamentals-of-c-programming-
for-information-systems-2nd-edition-2/
ebookluna.com
The Art of
Multiprocessor
Programming
The Art of
Multiprocessor
Programming
Second Edition
Maurice Herlihy
Nir Shavit
Victor Luchangco
Michael Spear
Morgan Kaufmann is an imprint of Elsevier
50 Hampshire Street, 5th Floor, Cambridge, MA 02139, United States
Copyright © 2021 Elsevier Inc. All rights reserved.
No part of this publication may be reproduced or transmitted in any form or by any means, electronic
or mechanical, including photocopying, recording, or any information storage and retrieval system,
without permission in writing from the publisher. Details on how to seek permission, further
information about the Publisher’s permissions policies and our arrangements with organizations such
as the Copyright Clearance Center and the Copyright Licensing Agency, can be found at our website:
www.elsevier.com/permissions.
This book and the individual contributions contained in it are protected under copyright by the
Publisher (other than as may be noted herein).
Notices
Knowledge and best practice in this field are constantly changing. As new research and experience
broaden our understanding, changes in research methods, professional practices, or medical treatment
may become necessary.
Practitioners and researchers must always rely on their own experience and knowledge in evaluating
and using any information, methods, compounds, or experiments described herein. In using such
information or methods they should be mindful of their own safety and the safety of others, including
parties for whom they have a professional responsibility.
To the fullest extent of the law, neither the Publisher nor the authors, contributors, or editors, assume
any liability for any injury and/or damage to persons or property as a matter of products liability,
negligence or otherwise, or from any use or operation of any methods, products, instructions, or ideas
contained in the material herein.
ISBN: 978-0-12-415950-1
For Noun and Aliza, Shafi, Yonadav, and Lior, and for Luisa.
– N.S.
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv
Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
Suggested ways to teach the art of multiprocessor programming . . . . . . . . . . . xxi
CHAPTER 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Shared objects and synchronization . . . . . . . . . . . . . . . . . . . . 3
1.2 A fable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.2.1 Properties of a mutual exclusion protocol . . . . . . . . . . 8
1.2.2 The moral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 The producer–consumer problem . . . . . . . . . . . . . . . . . . . . . . 9
1.4 The readers–writers problem . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5 The harsh realities of parallelization . . . . . . . . . . . . . . . . . . . . 12
1.6 Parallel programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.7 Chapter notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.8 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
PART 1 Principles
CHAPTER 2 Mutual exclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1 Time and events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2 Critical sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 Two-thread solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.1 The LockOne class . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.2 The LockTwo class . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3.3 The Peterson lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4 Notes on deadlock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.5 The filter lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.6 Fairness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.7 Lamport’s Bakery algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.8 Bounded timestamps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.9 Lower bounds on the number of locations . . . . . . . . . . . . . . . 39
2.10 Chapter notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
CHAPTER 3 Concurrent objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.1 Concurrency and correctness . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.2 Sequential objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.3 Sequential consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.3.1 Sequential consistency versus real-time order . . . . . . . 55
3.3.2 Sequential consistency is nonblocking . . . . . . . . . . . . . 56
vii
viii Contents
3.3.3 Compositionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.4 Linearizability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.4.1 Linearization points . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.4.2 Linearizability versus sequential consistency . . . . . . . . 59
3.5 Quiescent consistency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.5.1 Properties of quiescent consistency . . . . . . . . . . . . . . . 60
3.6 Formal definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.6.1 Histories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.6.2 Linearizability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3.6.3 Linearizability is compositional . . . . . . . . . . . . . . . . . . 63
3.6.4 Linearizability is nonblocking . . . . . . . . . . . . . . . . . . . 63
3.7 Memory consistency models . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.8 Progress conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.8.1 Wait-freedom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.8.2 Lock-freedom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.8.3 Obstruction-freedom . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.8.4 Blocking progress conditions . . . . . . . . . . . . . . . . . . . 67
3.8.5 Characterizing progress conditions . . . . . . . . . . . . . . . 67
3.9 Remarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
3.10 Chapter notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.11 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
CHAPTER 4 Foundations of shared memory . . . . . . . . . . . . . . . . . . 75
4.1 The space of registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
4.2 Register constructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.2.1 Safe MRSW registers . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.2.2 A regular Boolean MRSW register . . . . . . . . . . . . . . . 83
4.2.3 A regular M-valued MRSW register . . . . . . . . . . . . . . 84
4.2.4 An atomic SRSW register . . . . . . . . . . . . . . . . . . . . . . 85
4.2.5 An atomic MRSW register . . . . . . . . . . . . . . . . . . . . . 87
4.2.6 An atomic MRMW register . . . . . . . . . . . . . . . . . . . . . 90
4.3 Atomic snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.3.1 An obstruction-free snapshot . . . . . . . . . . . . . . . . . . . . 92
4.3.2 A wait-free snapshot . . . . . . . . . . . . . . . . . . . . . . . . . . 93
4.3.3 Correctness arguments . . . . . . . . . . . . . . . . . . . . . . . . 97
4.4 Chapter notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
CHAPTER 5 The relative power of primitive synchronization
operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.1 Consensus numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
5.1.1 States and valence . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
5.2 Atomic registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.3 Consensus protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
5.4 FIFO queues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Contents ix
PART 2 Practice
CHAPTER 7 Spin locks and contention . . . . . . . . . . . . . . . . . . . . . . . 147
7.1 Welcome to the real world . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
7.2 Volatile fields and atomic objects . . . . . . . . . . . . . . . . . . . . . . 150
7.3 Test-and-set locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
7.4 Exponential back-off . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
7.5 Queue locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
7.5.1 Array-based locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
7.5.2 The CLH queue lock . . . . . . . . . . . . . . . . . . . . . . . . . . 159
7.5.3 The MCS queue lock . . . . . . . . . . . . . . . . . . . . . . . . . . 161
7.6 A queue lock with timeouts . . . . . . . . . . . . . . . . . . . . . . . . . . 163
7.7 Hierarchical locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
7.7.1 A hierarchical back-off lock . . . . . . . . . . . . . . . . . . . . 167
7.7.2 Cohort locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
7.7.3 A cohort lock implementation . . . . . . . . . . . . . . . . . . . 170
7.8 A composite lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
7.9 A fast path for threads running alone . . . . . . . . . . . . . . . . . . . 178
7.10 One lock to rule them all . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
7.11 Chapter notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
7.12 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
CHAPTER 8 Monitors and blocking synchronization . . . . . . . . . . . 183
8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
8.2 Monitor locks and conditions . . . . . . . . . . . . . . . . . . . . . . . . . 183
8.2.1 Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
8.2.2 The lost-wakeup problem . . . . . . . . . . . . . . . . . . . . . . 187
8.3 Readers–writers locks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
8.3.1 Simple readers–writers lock . . . . . . . . . . . . . . . . . . . . 190
8.3.2 Fair readers–writers lock . . . . . . . . . . . . . . . . . . . . . . . 192
x Contents
Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
Preface
In the decade since the first edition, this book has become a staple of undergraduate
and graduate courses at universities around the world. It has also found a home on
the bookshelves of practitioners at companies large and small. The audience for the
book has, in turn, advanced the state of the art in multiprocessor programming. In
this second edition, we aim to continue this “virtuous cycle” by providing new and
updated content. Our goal is the same as with the first edition: to provide a textbook
for a senior-level undergraduate course and a reference for practitioners.
Organization
The first part of this book covers the principles of concurrent programming, show-
ing how to think as a concurrent programmer, developing fundamental skills such
as understanding when operations “happen,” considering all possible interleavings,
and identifying impediments to progress. Like many skills—driving a car, cooking
a meal, or appreciating caviar—thinking concurrently must be cultivated, and it can
be learned with moderate effort. Readers who want to start programming right away
may skip most of this section but should still read Chapters 2 and 3, which cover the
basic ideas necessary to understand the rest of the book.
We first look at the classic mutual exclusion problem (Chapter 2). This chapter
is essential for understanding why concurrent programming is a challenge. It covers
basic concepts such as fairness and deadlock. We then ask what it means for a con-
current program to be correct (Chapter 3). We consider several alternative conditions
and the circumstances under which one might want to use each one. We examine
the properties of shared memory essential to concurrent computation (Chapter 4),
and we look at the kinds of synchronization primitives needed to implement highly
concurrent data structures (Chapters 5 and 6).
We think it is essential that anyone who wants to become truly skilled in the art
of multiprocessor programming spend time solving the problems presented in the
first part of this book. Although these problems are idealized, they distill the kind
of thinking necessary to write effective multiprocessor programs. Most importantly,
they distill the style of thinking necessary to avoid the common mistakes committed
by nearly all novice programmers when they first encounter concurrency.
The second part of the book describes the practice of concurrent programming.
For most of this part, we give examples in Java to avoid getting mired in low-level
details. However, we have expanded this edition to include discussion of some low-
level issues that are essential to understanding multiprocessor systems and how to
program them effectively. We use examples in C++ to illustrate these issues.
xv
Random documents with unrelated
content Scribd suggests to you:
joignant à l'oranger de la tubéreuse et de la rose qu'il lia par une
goutte de vanille.
Les incertitudes se dissipèrent; une petite fièvre l'agita, il fut prêt au
travail; il composa encore du thé en mélangeant de la cassie et de
l'iris, puis, sûr de lui, il se détermina à marcher de l'avant, à plaquer
une phrase fulminante dont le hautain fracas effondrerait le
chuchotement de cette astucieuse frangipane qui se faufilait encore
dans sa pièce.
Il mania l'ambre, le musc-tonkin, aux éclats terribles, le patchouli, le
plus âcre des parfums végétaux et dont le fleur, à l'état brut, dégage
un remugle de moisi et de rouille. Quoi qu'il fît, la hantise du XVIIIe
siècle l'obséda; les robes à paniers, les falbalas tournèrent devant
ses yeux; des souvenirs des «Vénus» de Boucher, tout en chair, sans
os, bourrées de coton rose, s'installèrent sur ses murs; des rappels
du roman de Thémidore, de l'exquise Rosette retroussée dans un
désespoir couleur feu, le poursuivirent. Furieux, il se leva et, afin de
se libérer, il renifla, de toutes ses forces, cette pure essence de
spika-nard, si chère aux Orientaux et si désagréable aux Européens,
à cause de son relent trop prononcé de valériane. Il demeura étourdi
sous la violence de ce choc. Comme pilées par un coup de marteau,
les filigranes de la délicate odeur disparurent; il profita de ce temps
de répit pour échapper aux siècles défunts, aux vapeurs surannées,
pour entrer, ainsi qu'il le faisait jadis, dans des œuvres moins
restreintes ou plus neuves.
Il avait autrefois aimé à se bercer d'accords en parfumerie; il usait
d'effets analogues à ceux des poètes, employait, en quelque sorte,
l'admirable ordonnance de certaines pièces de Baudelaire, telles que
«l'Irréparable» et «le Balcon», où le dernier des cinq vers qui
composent la strophe est l'écho du premier et revient, ainsi qu'un
refrain, noyer l'âme dans des infinis de mélancolie et de langueur.
Il s'égarait dans les songes qu'évoquaient pour lui ces stances
aromatiques, ramené soudain à son point de départ, au motif de sa
méditation, par le retour du thème initial, reparaissant, à des
intervalles ménagés, dans l'odorante orchestration du poème.
Actuellement, il voulut vagabonder
dans un surprenant et variable
paysage, et il débuta par une phrase,
sonore, ample, ouvrant tout d'un coup
une échappée de campagne immense.
Avec ses vaporisateurs, il injecta dans
la pièce une essence formée
d'ambroisie, de lavande de Mitcham,
de pois de senteur, de bouquet, une
essence qui, lorsqu'elle est distillée par
un artiste, mérite le nom qu'on lui
décerne, «d'extrait de pré fleuri»; puis
dans ce pré, il introduisit une précise
fusion de tubéreuse, de fleur d'oranger
et d'amande, et aussitôt d'artificiels lilas naquirent, tandis que des
tilleuls s'éventèrent, rabattant sur le sol leurs pâles émanations que
simulait l'extrait du tilia de Londres.
Ce décor posé en quelques grandes lignes, fuyant à perte de vue
sous ses yeux fermés, il insuffla une légère pluie d'essences
humaines et quasi félines, sentant la jupe, annonçant la femme
poudrée et fardée, le stéphanotis, l'ayapana, l'opopanax, le chypre,
le champaka, le sarcanthus, sur lesquels il juxtaposa un soupçon de
seringa, afin de donner dans la vie factice du maquillage qu'ils
dégageaient, un fleur naturel de rires en sueur, de joies qui se
démènent au plein soleil.
Ensuite il laissa, par un ventilateur, s'échapper ces ondes odorantes,
conservant seulement la campagne qu'il renouvela et dont il força la
dose pour l'obliger à revenir ainsi qu'une ritournelle dans ses
strophes.
Les femmes s'étaient peu à peu évanouies; la campagne était
devenue déserte; alors, sur l'horizon enchanté, des usines se
dressèrent, dont les formidables cheminées brûlaient, à leurs
sommets, comme des bols de punch.
Un souffle de fabriques, de produits chimiques, passait maintenant
dans la brise qu'il soulevait avec des éventails, et la nature exhalait
encore, dans cette purulence de l'air, ses doux effluves.
Des Esseintes maniait, échauffait entre ses doigts, une boulette de
styrax, et une très bizarre odeur montait dans la pièce, une odeur
tout à la fois répugnante et exquise, tenant de la délicieuse senteur
de la jonquille et de l'immonde puanteur de la gutta-percha et de
l'huile de houille. Il se désinfecta les mains, inséra en une boîte
hermétiquement close sa résine, et les fabriques disparurent à leur
tour. Alors, il darda parmi les vapeurs ravivées des tilleuls et des prés
quelques gouttes de new mown hay et, au milieu du site magique
momentanément dépouillé de ses lilas, des gerbes de foin
s'élevèrent, amenant une saison nouvelle, épandant leur fine
effluence dans l'été de ces senteurs.
Enfin, quand il eut assez savouré ce spectacle, il dispersa
précipitamment des parfums exotiques, épuisa ses vaporisateurs,
accéléra ses esprits concentrés, lâcha bride à tous ses baumes, et,
dans la touffeur exaspérée de la pièce, éclata une nature démente et
sublimée, forçant ses haleines, chargeant d'alcoolats en délire une
artificielle brise, une nature pas vraie et charmante, toute
paradoxale, réunissant les piments des tropiques, les souffles poivrés
du santal de la Chine et de l'hediosmia de la Jamaïque, aux odeurs
françaises du jasmin, de l'aubépine et de la verveine, poussant, en
dépit des saisons et des climats, des arbres d'essences diverses, des
fleurs aux couleurs et aux fragrances les plus opposées, créant par
la fonte et le heurt de tous ces tons, un parfum général, innommé,
imprévu, étrange, dans lequel reparaissait, comme un obstiné
refrain, la phrase décorative du commencement, l'odeur du grand
pré, éventé par les lilas et les tilleuls.
Tout à coup une douleur aiguë le perça; il lui sembla qu'un
vilebrequin lui forait les tempes. Il ouvrit les yeux, se retrouva au
milieu de son cabinet de toilette, assis devant sa table; péniblement,
il marcha, abasourdi, vers la croisée qu'il entrebâilla. Une bouffée
d'air rasséréna l'étouffante atmosphère qui l'enveloppait; il se
promena, de long en large, pour raffermir ses jambes, alla et vint,
regardant le plafond où des crabes et des algues poudrées de sel,
s'enlevaient en relief sur un fond grenu aussi blond que le sable
d'une plage; un décor pareil revêtait les plinthes, bordant les
cloisons tapissées de crêpe Japonais vert d'eau, un peu chiffonné,
simulant le friselis d'une rivière que le vent ride et, dans ce léger
courant, nageait le pétale d'une rose autour duquel tournoyait une
nuée de petits poissons dessinés en deux traits d'encre.
Mais ses paupières demeuraient lourdes; il cessa d'arpenter le court
espace compris entre le baptistère et la baignoire, et il s'appuya sur
la rampe de la fenêtre; son étourdissement cessa; il reboucha
soigneusement les fioles, et il mit à profit cette occasion pour
remédier au désordre de ses maquillages. Il n'y avait point touché
depuis son arrivée à Fontenay, et il s'étonna presque, maintenant,
de revoir cette collection naguère visitée par tant de femmes. Les
uns sur les autres, des flacons et des pots s'entassaient. Ici, une
boîte en porcelaine, de la famille verte, contenait le schnouda, cette
merveilleuse crème blanche qui, une fois étendue sur les joues,
passe, sous l'influence de l'air, au rose tendre, puis à un incarnat si
réel qu'il procure l'illusion vraiment exacte d'une peau colorée de
sang; là, des laques, incrustés de burgau, renfermaient de l'or
Japonais et du vert d'Athènes, couleur d'aile de cantharide, des ors
et des verts qui se transmuent en une pourpre profonde dès qu'on
les mouille; près de pots pleins de pâte d'aveline, de serkis du
harem, d'émulsines au lys de kachemyr, de lotion d'eau de fraise et
de sureau pour le teint, et près de petites bouteilles remplies de
solutions d'encre de Chine et d'eau de rose à l'usage des yeux, des
instruments en ivoire, en nacre, en acier, en argent, s'étalaient
éparpillés avec des brosses en luzerne pour les gencives: des pinces,
des ciseaux, des strigiles, des estompes, des crêpons et des
houppes, des gratte-dos, des mouches et des limes.
Il manipulait tout cet attirail, autrefois acheté sur les instances d'une
maîtresse qui se pâmait sous l'influence de certains aromates et de
certains baumes, une femme, détraquée et nerveuse, aimant à faire
macérer la pointe de ses seins dans les senteurs, mais n'éprouvant, en
somme, une délicieuse et accablante extase, que lorsqu'on lui ratissait
la tête avec un peigne ou qu'elle pouvait humer, au milieu des
caresses, l'odeur de la suie, du plâtre des maisons en construction,
par les temps de pluie, ou de la poussière mouchetée par de grosses
gouttes d'orage, pendant l'été.
Il rumina ces souvenirs, et une après-midi écoulée, à Pantin, par
désœuvrement, par curiosité, en compagnie de cette femme, chez
l'une de ses sœurs, lui revint, remuant en lui un monde oublié de
vieilles idées et d'anciens parfums; tandis que les deux femmes
jacassaient et se montraient leurs robes, il s'était approché de la
fenêtre et, au travers des vitres poudreuses, il avait vu la rue pleine
de boue s'étendre et entendu ses pavés bruire sous le coup répété
des galoches battant les mares.
Cette scène déjà lointaine se présenta subitement, avec une vivacité
singulière. Pantin était là, devant lui, animé, vivant, dans cette eau
verte et comme morte de la glace margée de lune où ses yeux
inconscients plongeaient; une hallucination l'emporta loin de
Fontenay; le miroir lui répercuta en même temps que la rue les
réflexions qu'elle avait autrefois fait naître et, abîmé dans un songe, il
se répéta cette ingénieuse, mélancolique et consolante antienne qu'il
avait jadis notée dès son retour dans Paris:
—Oui, le temps des grandes pluies est venu; voilà que les gargouilles
dégobillent, en chantant sous les trottoirs, et que les fumiers marinent
dans des flaques qui emplissent de leur café au lait les bols creusés
dans le macadam; partout, pour l'humble passant, les rince-pieds
fonctionnent.
Sous le ciel bas, dans l'air mou, les murs des maisons ont des sueurs
noires et leurs soupiraux fétident; la dégoûtation de l'existence
s'accentue et le spleen écrase; les semailles d'ordures que chacun a
dans l'âme éclosent; des besoins de sales ribotes agitent les gens
austères et, dans le cerveau des gens considérés, des désirs de
forçats vont naître.
Et pourtant je me chauffe devant un grand feu, et d'une corbeille de
fleurs épanouies sur la table se dégage une exhalaison de benjoin, de
géranium et de vétyver qui remplit la chambre. En plein mois de
novembre, à Pantin, rue de Paris, le printemps persiste et voici que je
ris, à part moi, des familles craintives qui, afin d'éviter les approches
du froid, fuient à toute vapeur vers Antibes ou vers Cannes.
L'inclémente nature n'est pour rien dans cet extraordinaire
phénomène; c'est à l'industrie seule, il faut bien le dire, que Pantin est
redevable de cette saison factice.
En effet, ces fleurs sont en taffetas, montée sur du fil d'archal, et la
senteur printanière filtre par les joints de la fenêtre, exhalée des
usines du voisinage, des parfumeries de Pinaud et de Saint-James.
Pour les artisans usés par les durs labeurs des ateliers, pour les petits
employés trop souvent pères, l'illusion d'un peu de bon air est, grâce
à ces commerçants, possible.
Puis de ce fabuleux subterfuge d'une campagne, une médication
intelligente peut sortir; les viveurs poitrinaires qu'on exporte dans le
Midi, meurent, achevés par la rupture de leurs habitudes, par la
nostalgie des excès parisiens qui les ont vaincus. Ici, sous un faux
climat, aidé par des bouches de poêles, les souvenirs libertins
renaîtront, très doux, avec les languissantes émanations féminines
évaporées par les fabriques. Au mortel ennui de la vie provinciale, le
médecin peut, par cette supercherie, substituer platoniquement, pour
son malade, l'atmosphère des boudoirs de Paris, des filles. Le plus
souvent, il suffira, pour consommer la cure, que le sujet ait
l'imagination un peu fertile.
Tout cela n'empêche pas, fit-il, arraché à ses réflexions par une
défaillance de tout son corps, qu'il va falloir me défier de ces délicieux
et abominables exercices qui m'écrasent. Il soupira:—Allons, encore
des plaisirs à modérer, des précautions à prendre; et il se réfugia dans
son cabinet de travail, pensant échapper plus facilement ainsi à la
hantise de ces parfums.
Il ouvrit la croisée toute large, heureux de prendre un bain d'air; mais,
soudain, il lui parut que la brise soufflait un vague montant d'essence
de bergamote avec laquelle se coalisait de l'esprit de jasmin, de cassie
et de l'eau de rose. Il haleta, se demandant s'il n'était point
décidément sous le joug d'une de ces possessions qu'on exorcisait au
moyen âge. L'odeur changea et se transforma, tout en persistant. Une
indécise senteur de teinture de tolu, de baume du Pérou, de safran,
soudés par quelques gouttes d'ambre et de musc, s'élevait maintenant
du village couché au bas de la côte, et, subitement, la métamorphose
s'opéra, ces bribes éparses se relièrent et, à nouveau, la frangipane,
dont son odorat avait perçu les éléments et préparé l'analyse, fusa de
la vallée de Fontenay jusqu'au fort, assaillant ses narines excédées,
ébranlant encore ses nerfs rompus, le jetant dans une telle
prostration, qu'il s'affaissa évanoui, presque mourant, sur la barre
d'appui de la fenêtre.
XI
D urant les jours qui suivirent son retour, des Esseintes considéra
ses livres et, à la pensée qu'il aurait pu se séparer d'eux pendant
longtemps, il goûta une satisfaction aussi effective que celle dont il
eût joui s'il les avait retrouvés, après une sérieuse absence. Sous
l'impulsion de ce sentiment, ces objets lui semblèrent nouveaux, car il
perçut en eux des beautés oubliées depuis l'époque où il les avait
acquis.
Tout, volumes, bibelots, meubles, prit à ses yeux un charme
particulier; son lit lui parut plus moelleux, en comparaison de la
couchette qu'il aurait occupée à Londres; le discret et silencieux
service de ses domestiques l'enchanta, fatigué qu'il était, par la
pensée, de la loquacité bruyante des garçons d'hôtel; l'organisation
méthodique de sa vie lui fit l'effet d'être plus enviable, depuis que le
hasard des pérégrinations devenait possible.
Il se retrempa dans ce bain de l'habitude auquel d'artificiels regrets
insinuaient une qualité plus roborative et plus tonique.
Mais ses volumes le préoccupèrent principalement. Il les examina, les
rangea à nouveau sur les rayons, vérifiant si, depuis son arrivée à
Fontenay, les chaleurs et les pluies n'avaient point endommagé leurs
reliures et piqué leurs papiers rares.
Il commença par remuer toute sa bibliothèque latine, puis il disposa
dans un nouvel ordre les ouvrages spéciaux d'Archélaus, d'Albert le
Grand, de Lulle, d'Arnaud de Villanova traitant de kabbale et de
sciences occultes; enfin il compulsa, un à un, ses livres modernes, et
joyeusement il constata que tous étaient demeurés, au sec, intacts.
Cette collection lui avait coûté de considérables sommes; il n'admettait
pas, en effet, que les auteurs qu'il choyait fussent, dans sa
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
ebookluna.com