100% found this document useful (6 votes)
214 views

Get Programming Massively Parallel Processors 4th Edition Wen-Mei W. Hwu PDF ebook with Full Chapters Now

Parallel

Uploaded by

miarabinkym8
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (6 votes)
214 views

Get Programming Massively Parallel Processors 4th Edition Wen-Mei W. Hwu PDF ebook with Full Chapters Now

Parallel

Uploaded by

miarabinkym8
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

Get ebook downloads in full at ebookmeta.

com

Programming Massively Parallel Processors 4th


Edition Wen-Mei W. Hwu

https://ebookmeta.com/product/programming-massively-
parallel-processors-4th-edition-wen-mei-w-hwu/

OR CLICK BUTTON

DOWNLOAD NOW

Explore and download more ebook at https://ebookmeta.com


Recommended digital products (PDF, EPUB, MOBI) that
you can download immediately if you are interested.

Parallel Programming And Optimization With Intel Xeon Phi


Coprocessors Handbook On The Development And Optimization
Of Parallel Applications For Intel Xeon Processors And
Intel Xeon Phi Coprocessors 2nd Edition Andrey Vladimirov
https://ebookmeta.com/product/parallel-programming-and-optimization-
with-intel-xeon-phi-coprocessors-handbook-on-the-development-and-
optimization-of-parallel-applications-for-intel-xeon-processors-and-
intel-xeon-phi-coprocessors-2/
ebookmeta.com

An Introduction to Parallel Programming 2nd Edition Peter


Pacheco

https://ebookmeta.com/product/an-introduction-to-parallel-
programming-2nd-edition-peter-pacheco/

ebookmeta.com

An Introduction to Parallel Programming Pacheco Peter S


Malensek Matthew

https://ebookmeta.com/product/an-introduction-to-parallel-programming-
pacheco-peter-s-malensek-matthew/

ebookmeta.com

Experiencing Speech A Skills Based Panlingual Approach to


Actor Training _ A Beginner s Guide to Knight Thompson
Speechwork 1st Edition Andrea Caban
https://ebookmeta.com/product/experiencing-speech-a-skills-based-
panlingual-approach-to-actor-training-_-a-beginner-s-guide-to-knight-
thompson-speechwork-1st-edition-andrea-caban/
ebookmeta.com
Legendary Dungeon Seed The Mage s Academy Vol 2 3rd
Edition Marc Robert

https://ebookmeta.com/product/legendary-dungeon-seed-the-mage-s-
academy-vol-2-3rd-edition-marc-robert/

ebookmeta.com

Flaunt Carmichael Family 4 1st Edition Adriana Locke

https://ebookmeta.com/product/flaunt-carmichael-family-4-1st-edition-
adriana-locke/

ebookmeta.com

Football Revolution The Rise of the Spread Offense and How


It Transformed College Football 1st Edition Bart Wright

https://ebookmeta.com/product/football-revolution-the-rise-of-the-
spread-offense-and-how-it-transformed-college-football-1st-edition-
bart-wright/
ebookmeta.com

The Law (in Plain English) for Small Business 5th Edition
Leonard D. Duboff

https://ebookmeta.com/product/the-law-in-plain-english-for-small-
business-5th-edition-leonard-d-duboff/

ebookmeta.com

MT6186M RF Design Notice Mediatek Inc.

https://ebookmeta.com/product/mt6186m-rf-design-notice-mediatek-inc/

ebookmeta.com
Below Freezing Elegy for the Melting Planet 1st Edition
Donald Anderson Aritha Van Herk

https://ebookmeta.com/product/below-freezing-elegy-for-the-melting-
planet-1st-edition-donald-anderson-aritha-van-herk/

ebookmeta.com
Programming Massively
Parallel Processors
A Hands-on Approach
Programming Massively
Parallel Processors
A Hands-on Approach
Fourth Edition

Wen-mei W. Hwu
University of Illinois at Urbana-Champaign and NVIDIA,
Champaign, IL, United States

David B. Kirk
Formerly NVIDIA, United States

Izzat El Hajj
American University of Beirut, Beirut, Lebanon
Morgan Kaufmann is an imprint of Elsevier
50 Hampshire Street, 5th Floor, Cambridge, MA 02139, United States
Copyright © 2023 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-323-91231-0

For Information on all Morgan Kaufmann publications


visit our website at https://www.elsevier.com/books-and-journals

Publisher: Katey Birtcher


Acquisitions Editor: Stephen R. Merken
Editorial Project Manager: Naomi Robertson
Production Project Manager: Kiruthika Govindaraju
Cover Designer: Bridget Hoette
Typeset by MPS Limited, Chennai, India
To Sabrina, Amanda, Bryan, and Carissa
To Caroline, Rose, and Leo
To Mona, Amal, and Ali
for enduring our absence while working on the course
and the book—once again!
Contents
Foreword ..................................................................................................................xv
Preface .................................................................................................................. xvii
Acknowledgments .............................................................................................. xxvii
CHAPTER 1 Introduction ................................................................... 1
1.1 Heterogeneous parallel computing ................................................3
1.2 Why more speed or parallelism? ...................................................7
1.3 Speeding up real applications ........................................................9
1.4 Challenges in parallel programming............................................11
1.5 Related parallel programming interfaces.....................................13
1.6 Overarching goals ........................................................................14
1.7 Organization of the book .............................................................15
References.................................................................................... 19

Part I Fundamental Concepts


CHAPTER 2 Heterogeneous data parallel computing.................... 23
With special contribution from David Luebke
2.1 Data parallelism............................................................................23
2.2 CUDA C program structure .........................................................27
2.3 A vector addition kernel ..............................................................28
2.4 Device global memory and data transfer.....................................31
2.5 Kernel functions and threading....................................................35
2.6 Calling kernel functions ...............................................................40
2.7 Compilation ..................................................................................42
2.8 Summary.......................................................................................43
Exercises ...................................................................................... 44
References.................................................................................... 46

CHAPTER 3 Multidimensional grids and data ............................... 47


3.1 Multidimensional grid organization.............................................47
3.2 Mapping threads to multidimensional data .................................51
3.3 Image blur: a more complex kernel.............................................58
3.4 Matrix multiplication ...................................................................62
3.5 Summary.......................................................................................66
Exercises ...................................................................................... 67

vii
viii Contents

CHAPTER 4 Compute architecture and scheduling ....................... 69


4.1 Architecture of a modern GPU ....................................................70
4.2 Block scheduling ..........................................................................70
4.3 Synchronization and transparent scalability ................................71
4.4 Warps and SIMD hardware .........................................................74
4.5 Control divergence .......................................................................79
4.6 Warp scheduling and latency tolerance .......................................83
4.7 Resource partitioning and occupancy ..........................................85
4.8 Querying device properties ..........................................................87
4.9 Summary.......................................................................................90
Exercises ...................................................................................... 90
References.................................................................................... 92

CHAPTER 5 Memory architecture and data locality ..................... 93


5.1 Importance of memory access efficiency ....................................94
5.2 CUDA memory types...................................................................96
5.3 Tiling for reduced memory traffic .............................................103
5.4 A tiled matrix multiplication kernel ..........................................107
5.5 Boundary checks ........................................................................112
5.6 Impact of memory usage on occupancy ....................................115
5.7 Summary.....................................................................................118
Exercises .................................................................................... 119

CHAPTER 6 Performance considerations .................................... 123


6.1 Memory coalescing ....................................................................124
6.2 Hiding memory latency..............................................................133
6.3 Thread coarsening ......................................................................138
6.4 A checklist of optimizations ......................................................141
6.5 Knowing your computation’s bottleneck...................................145
6.6 Summary.....................................................................................146
Exercises .................................................................................... 146
References.................................................................................. 147

Part II Parallel Patterns


CHAPTER 7 Convolution
An introduction to constant memory and caching ...............151
7.1 Background.................................................................................152
7.2 Parallel convolution: a basic algorithm .....................................156
7.3 Constant memory and caching...................................................159
Contents ix

7.4 Tiled convolution with halo cells ..............................................163


7.5 Tiled convolution using caches for halo cells ...........................168
7.6 Summary.....................................................................................170
Exercises .................................................................................... 171

CHAPTER 8 Stencil ....................................................................... 173


8.1 Background.................................................................................174
8.2 Parallel stencil: a basic algorithm..............................................178
8.3 Shared memory tiling for stencil sweep ....................................179
8.4 Thread coarsening ......................................................................183
8.5 Register tiling .............................................................................186
8.6 Summary.....................................................................................188
Exercises .................................................................................... 188

CHAPTER 9 Parallel histogram .................................................... 191


9.1 Background.................................................................................192
9.2 Atomic operations and a basic histogram kernel ......................194
9.3 Latency and throughput of atomic operations...........................198
9.4 Privatization................................................................................200
9.5 Coarsening ..................................................................................203
9.6 Aggregation ................................................................................206
9.7 Summary.....................................................................................208
Exercises .................................................................................... 209
References.................................................................................. 210

CHAPTER 10 Reduction
And minimizing divergence .....................................................211
10.1 Background.................................................................................211
10.2 Reduction trees...........................................................................213
10.3 A simple reduction kernel..........................................................217
10.4 Minimizing control divergence..................................................219
10.5 Minimizing memory divergence................................................223
10.6 Minimizing global memory accesses.........................................225
10.7 Hierarchical reduction for arbitrary input length ......................226
10.8 Thread coarsening for reduced overhead...................................228
10.9 Summary.....................................................................................231
Exercises .................................................................................... 232
x Contents

CHAPTER 11 Prefix sum (scan)


An introduction to work efficiency in
parallel algorithms ....................................................................235
With special contributions from Li-Wen Chang,
Juan Gómez-Luna and John Owens
11.1 Background.................................................................................236
11.2 Parallel scan with the Kogge-Stone algorithm ..........................238
11.3 Speed and work efficiency consideration..................................244
11.4 Parallel scan with the Brent-Kung algorithm ............................246
11.5 Coarsening for even more work efficiency ...............................251
11.6 Segmented parallel scan for arbitrary-length inputs .................253
11.7 Single-pass scan for memory access efficiency ........................256
11.8 Summary.....................................................................................259
Exercises .................................................................................... 260
References.................................................................................. 261

CHAPTER 12 Merge
An introduction to dynamic input data identification..........263
With special contributions from Li-Wen Chang and
Jie Lv
12.1 Background.................................................................................263
12.2 A sequential merge algorithm....................................................265
12.3 A parallelization approach .........................................................266
12.4 Co-rank function implementation ..............................................268
12.5 A basic parallel merge kernel ....................................................273
12.6 A tiled merge kernel to improve coalescing .............................275
12.7 A circular buffer merge kernel ..................................................282
12.8 Thread coarsening for merge .....................................................288
12.9 Summary.....................................................................................288
Exercises .................................................................................... 289
References.................................................................................. 289

Part III Advanced Patterns and Applications


CHAPTER 13 Sorting ....................................................................... 293
With special contributions from Michael Garland
13.1 Background.................................................................................294
13.2 Radix sort ...................................................................................295
Contents xi

13.3 Parallel radix sort .......................................................................296


13.4 Optimizing for memory coalescing ...........................................300
13.5 Choice of radix value .................................................................302
13.6 Thread coarsening to improve coalescing .................................305
13.7 Parallel merge sort .....................................................................306
13.8 Other parallel sort methods........................................................308
13.9 Summary.....................................................................................309
Exercises .................................................................................... 310
References.................................................................................. 310

CHAPTER 14 Sparse matrix computation....................................... 311


14.1 Background.................................................................................312
14.2 A simple SpMV kernel with the COO format ..........................314
14.3 Grouping row nonzeros with the CSR format...........................317
14.4 Improving memory coalescing with the ELL format................320
14.5 Regulating padding with the hybrid ELL-COO format ............324
14.6 Reducing control divergence with the JDS format ...................325
14.7 Summary.....................................................................................328
Exercises .................................................................................... 329
References.................................................................................. 329

CHAPTER 15 Graph traversal.......................................................... 331


With special contributions from John Owens and
Juan Gómez-Luna
15.1 Background.................................................................................332
15.2 Breadth-first search ....................................................................335
15.3 Vertex-centric parallelization of breadth-first search................338
15.4 Edge-centric parallelization of breadth-first search ..................343
15.5 Improving efficiency with frontiers...........................................345
15.6 Reducing contention with privatization.....................................348
15.7 Other optimizations ....................................................................350
15.8 Summary.....................................................................................352
Exercises .................................................................................... 353
References.................................................................................. 354

CHAPTER 16 Deep learning............................................................ 355


With special contributions from Carl Pearson and
Boris Ginsburg
16.1 Background.................................................................................356
16.2 Convolutional neural networks ..................................................366
xii Contents

16.3 Convolutional layer: a CUDA inference kernel ........................376


16.4 Formulating a convolutional layer as GEMM...........................379
16.5 CUDNN library ..........................................................................385
16.6 Summary.....................................................................................387
Exercises .................................................................................... 388
References.................................................................................. 388

CHAPTER 17 Iterative magnetic resonance imaging


reconstruction ........................................................... 391
17.1 Background.................................................................................391
17.2 Iterative reconstruction...............................................................394
17.3 Computing FHD..........................................................................396
17.4 Summary.....................................................................................412
Exercises .................................................................................... 413
References.................................................................................. 414

CHAPTER 18 Electrostatic potential map ...................................... 415


With special contributions from John Stone
18.1 Background.................................................................................415
18.2 Scatter versus gather in kernel design .......................................417
18.3 Thread coarsening ......................................................................422
18.4 Memory coalescing ....................................................................424
18.5 Cutoff binning for data size scalability .....................................425
18.6 Summary.....................................................................................430
Exercises .................................................................................... 431
References.................................................................................. 431

CHAPTER 19 Parallel programming and computational


thinking ..................................................................... 433
19.1 Goals of parallel computing.......................................................433
19.2 Algorithm selection ....................................................................436
19.3 Problem decomposition..............................................................440
19.4 Computational thinking..............................................................444
19.5 Summary.....................................................................................446
References.................................................................................. 446
Contents xiii

Part IV Advanced Practices


CHAPTER 20 Programming a heterogeneous computing cluster
An introduction to CUDA streams ..........................................449
With special contributions from Isaac Gelado and
Javier Cabezas
20.1 Background.................................................................................449
20.2 A running example.....................................................................450
20.3 Message passing interface basics...............................................452
20.4 Message passing interface point-to-point communication ........455
20.5 Overlapping computation and communication..........................462
20.6 Message passing interface collective communication...............470
20.7 CUDA aware message passing interface...................................471
20.8 Summary.....................................................................................472
Exercises .................................................................................... 472
References.................................................................................. 473

CHAPTER 21 CUDA dynamic parallelism ....................................... 475


With special contributions from Juan Gómez-Luna
21.1 Background.................................................................................476
21.2 Dynamic parallelism overview ..................................................478
21.3 An example: Bezier curves ........................................................481
21.4 A recursive example: quadtrees.................................................484
21.5 Important considerations ............................................................490
21.6 Summary.....................................................................................492
Exercises .................................................................................... 493
A21.1 Support code for quadtree example ............................... 495
References.................................................................................. 497

CHAPTER 22 Advanced practices and future evolution ................ 499


With special contributions from Isaac Gelado and
Mark Harris
22.1 Model of host/device interaction ...............................................500
22.2 Kernel execution control............................................................505
22.3 Memory bandwidth and compute throughput ...........................508
22.4 Programming environment.........................................................510
22.5 Future outlook ............................................................................513
References.................................................................................. 513
xiv Contents

CHAPTER 23 Conclusion and outlook ............................................ 515


23.1 Goals revisited............................................................................515
23.2 Future outlook ............................................................................516

Appendix A: Numerical considerations ................................................................519


Index ......................................................................................................................537
Foreword
Written by two exceptional computer scientists and pioneers of GPU computing,
Wen-mei and David’s Programming Massively Parallel Processors, Fourth
Edition, by Wen-mei W. Hwu, David B. Kirk, and Izzat El Hajj continues to
make an invaluable contribution to the creation of a new computing model.
GPU computing has become an essential instrument of modern science. This
book will teach you how to use this instrument and give you a superpower tool to
solve the most challenging problems. GPU computing will become a time
machine that lets you see the future, a spaceship that takes you to new worlds
that are now within reach.
Computing performance is needed to solve many of the world’s most impact-
ful problems. From the beginning of the history of computers, architects sought
parallel computing techniques to boost performance. A hundredfold increase is
equivalent to a decade of CPU advancements that relied on sequential processing.
Despite the great benefits of parallel computing, creating a new computing model
with a virtuous cycle of users, developers, vendors, and distributors has been a
daunting chicken-and-egg problem.
After nearly three decades, NVIDIA GPU computing is pervasive, and mil-
lions of developers have learned parallel programming, many from earlier editions
of this book.
GPU computing is affecting every field of science and industry, even com-
puter science itself. The processing speed of GPUs has enabled deep learning
models to learn from data and to perform intelligent tasks, starting a wave of
invention from autonomous vehicles and robotics to synthetic biology. The era of
AI is underway.
AI is even learning physics and opening the possibility of simulating the
Earth’s climate a millionfold faster than has ever been possible. NVIDIA is build-
ing a GPU supercomputer called Earth-2, a digital twin of the Earth, and partner-
ing with the world’s scientific community to predict the impact of today’s actions
on our climate decades from now.
A life science researcher once said to me, “Because of your GPU, I can do my
life’s work in my lifetime.” So whether you are advancing AI or doing ground-
breaking science, I hope that GPU computing will help you do your life’s work.

Jensen Huang
NVIDIA, Santa Clara, CA, United States

xv
Preface
We are proud to introduce to you the fourth edition of Programming Massively
Parallel Processors: A Hands-on Approach.
Mass market computing systems that combine multicore CPUs and many-
thread GPUs have brought terascale computing to laptops and exascale computing
to clusters. Armed with such computing power, we are at the dawn of the wide-
spread use of computational experiments in the science, engineering, medical, and
business disciplines. We are also witnessing the wide adoption of GPU computing
in key industry vertical markets, such as finance, e-commerce, oil and gas, and
manufacturing. Breakthroughs in these disciplines will be achieved by using
computational experiments that are of unprecedented levels of scale, accuracy,
safety, controllability, and observability. This book provides a critical ingredient
for this vision: teaching parallel programming to millions of graduate and under-
graduate students so that computational thinking and parallel programming skills
will become as pervasive as calculus skills.
The primary target audience of this book consists of graduate and undergradu-
ate students in all science and engineering disciplines in which computational
thinking and parallel programming skills are needed to achieve breakthroughs.
The book has also been used successfully by industry professional developers
who need to refresh their parallel computing skills and keep up to date with ever-
increasing speed of technology evolution. These professional developers work in
fields such as machine learning, network security, autonomous vehicles, computa-
tional financing, data analytics, cognitive computing, mechanical engineering,
civil engineering, electrical engineering, bioengineering, physics, chemistry,
astronomy, and geography, and they use computation to advance their fields.
Thus these developers are both experts in their domains and programmers. The
book takes the approach of teaching parallel programming by building up an intu-
itive understanding of the techniques. We assume that the reader has at least
some basic C programming experience. We use CUDA C, a parallel programming
environment that is supported on NVIDIA GPUs. There are more than 1 billion
of these processors in the hands of consumers and professionals, and more than
400,000 programmers are actively using CUDA. The applications that you will
develop as part of your learning experience will be runnable by a very large user
community.
Since the third edition came out in 2016, we have received numerous com-
ments from our readers and instructors. Many of them told us about the existing
features they value. Others gave us ideas about how we should expand the book’s
contents to make it even more valuable. Furthermore, the hardware and software
for heterogeneous parallel computing have advanced tremendously since 2016. In
the hardware arena, three more generations of GPU computing architectures,
namely, Volta, Turing, and Ampere, have been introduced since the third edition.

xvii
Other documents randomly have
different content
The Project Gutenberg eBook of In the swim
This ebook is for the use of anyone anywhere in the United
States and most other parts of the world at no cost and with
almost no restrictions whatsoever. You may copy it, give it away
or re-use it under the terms of the Project Gutenberg License
included with this ebook or online at www.gutenberg.org. If you
are not located in the United States, you will have to check the
laws of the country where you are located before using this
eBook.

Title: In the swim


A story of currents and under-currents in gayest New
York

Author: Richard Savage

Release date: September 29, 2023 [eBook #71751]

Language: English

Original publication: Chicago: Rand, McNally & Company, 1898

Credits: Sonya Schermann, David Wilson and the Online


Distributed Proofreading Team at https://www.pgdp.net
(This file was produced from images generously made
available by The Internet Archive)

*** START OF THE PROJECT GUTENBERG EBOOK IN THE SWIM


***
IN THE SWIM.
IN THE SWIM

A Story of
Currents and Under-Currents
in Gayest New York.

By
Richard Henry Savage

Chicago and New York:


Rand, McNally & Company,
Publishers.
Copyright, 1898, by Richard Henry Savage.
All Rights Reserved.
CONTENTS.

BOOK I.
A RISING STAR.
Chapter. Pages
I— “Young
. . Lochinvar
. . . has . .Come
. . out. of. the. West,”
. . . . 5–23
II— The. Drift
. of . a. Day
. in. New
. . York
. City,
. . . . . . . 24–43
III— A Frank
. . Disclosure,
. . . . . . . . . . . . . . 44–67
IV— “Wyman
. . and . . Vreeland”
. . . Swing
. . the. Street,
. . . . . . 68–88
V— Toward
. . the . Zenith,
. . . . . . . . . . . . . 89–110

BOOK II.
WITH THE CURRENT.

VI— In the
. .“Elmleaf”
. . .Bachelor
. . .Apartments,
. . . . . . . . 111–131
VII— “Plunger”
. . .Vreeland’s
. . . Gay
. . Life,
. “Under
. . .the. Rose,”
. . . 132–151
VIII— Miss
. Romaine
. . . Garland,
. . . Stenographer,
. . . . . . . . . 152–170
IX— Senator
. . Alynton’s
. . . Colleague,
. . . . . . . . . . . 171–188
X— An Interview at Lakemere. Some Ingenious
Mechanism.
. . . . “Whose
. . . Picture
. . is . That?”
. . . . . . 189–209

BOOK III.
ON A LEE SHORE.
XI— Miss Marble’s Waterloo! A Lost Lamb! Her Vacant
Chair. Senator Garston’s Disclosure. Sara
Conyers’ Mission. Miss Garland’s Dishonorable
Discharge.
. . . . A .Defiance
. . .to the
. .Death.
. . “Robbed!”
. . . . 210–234
XII— Mine
. and
. .Countermine,
. . . . . . . . . . . . . 235–257
XIII— A Wedding
. . . in. High. .Life,
. . . . . . . . . . 258–279
XIV— For. the. Child’s
. . Sake!
. . . . . . . . . . . . 280–315
XV— In the
. .Dark. Waters,
. . . . . . . . . . . . . 316–361
I N T H E S W I M.
BOOK I—A Rising Star.

CHAPTER I.

“YOUNG LOCHINVAR HAS COME OUT OF THE WEST.”

There was an expression of sullen discontent upon the handsome


features of Mr. Harold Vreeland (gentleman unattached), as the
inbound Hudson River train dashed along under the castled cliffs of
Rhinebeck.
The afternoon was fair—the river of all rivers glittered gaily in the
sun, and a dreamy peace rested on field and stream. But, the peace
of this June afternoon of ’95 entered not into the young wayfarer’s
soul.
The five years which the traveler from nowhere in particular had
thrown away in the far wilds of the sporadic West had not yet robbed
his chiseled features of the good looks which he had borne away
from old Nassau.
And, though his glittering blue eye had been trained to a habitual
impassiveness by much frontier poker, he had always abjured that
Rocky Mountain whisky which “biteth like an adder.”
As he restlessly sought the smoking-car, after a vain struggle with
the all too-evident immorality of a saucy French novel, several
quickly thrilled spinsters followed his retreating form with warm
glances of furtive admiration and half-suppressed sighs.
Vreeland’s stalwart figure was clearly reminiscent of well-played
football and long straining at the oar. His well-set head was bravely
carried, his eye was searching and even audaciously daring in its
social explorations.
At twenty-seven he had not lost the fascination of his soft and
perfectly modulated voice nor the winning insinuation of his too
frequent smile. The chin was far too softly molded for an ascetic, and
an expression of lurking insincerity flickered in the pleasure-loving
curves of his handsome mouth.
But, shapely and glowing with manly vigor, he was a very “proper
man-at-arms” in the battle of life, his sweeping cavalry mustache
lending an air of decision to his sun-burned features.
Though he was perfectly dressed up to the memories of his never-
forgotten “varsity” grade, the “wanderjahre” had given to him a little
of that easy swing which is the gift of wandering on boundless
prairies, long nights spent al fresco under the glittering dome of
stars, and a close commune with the sighing pines of the West.
The shade of bitterness deepened upon his moody face as he noted
a three-masted steam yacht swinging along up the river, with the
elastic quivering throb of her quadruple compounded engines. This
queenly vessel bore the private signal of one American citizen
whose personal finances beggar the resources of many modern
kings.
“Those are the cold-hearted fellows who rule America now with a rod
of iron—the new money kings,” he growled. “Royal by the clink of the
dollar, sovereign by the magic wand of monopoly, impregnable with
the adamantine armor of trusts!”
And then, a lively hatred of the social grandees luxuriously grouped
aft on that splendid yacht crept into his embittered soul.
He could see the Venetian awning which covered the clustered fair-
faced patrician women from the fierce sun, which rudely burns by
day.
And he knew, too, by distant rumors of that superb luxury in which
the American women of the creed of the Golden Calf passed their
happy days in a splendid and serene indolence, only lit up now and
then with gleams of the passion play of high life.
“It’s no use to fight those fellows,” mused Vreeland, as he carefully
trimmed a cigar. “They have come to stay, and I must try and fall into
the train of some one of them.”
He looked back at all those unprofitable years spent beyond the
rugged Rockies. There was a sense of shame and resentment as he
recalled the shabby career of his talented father.
“Thank God, I am now alone in the world, ‘with no one nigh to
hender!’” he bitterly reflected, unconsciously quoting Lowell’s “Zekle
and Huldy.”
The train had rushed on past Poughkeepsie, and the parade music
from West Point floated sweetly across the cool river as the train
halted at Garrison’s for a few moments, before he had morosely
reviewed all the dismal events which brought him a lonely stranger
back to New York.
Erastus Vreeland, a lawyer of no mean accomplishment, had
destined his only son for the bar.
The elder Vreeland was a human spider, who had finally gravitated
downward into the exercise of only the meaner craft of his much-
abused profession.
For long years, in his little office on William Street he had legally
carried on the intrigues of a daring band of clients who rightly should
have ornamented the Academy of Belles-Lettres of New York at Sing
Sing.
During the life of his hoodwinked wife, Vreeland père led a double
existence of more or less moral turpitude, and, at last, a shameless
and successful coup of rascality aroused the ire of a great financial
company.
It was his “notice to quit,” and after the death of his wife, Erastus
Vreeland “swung round the distant circle,” often followed by the
déclassé lawyer.
Omaha, Leadville, Salt Lake, Los Angeles, and other Western cities
finally knew his fox-like cunning and gradually weakening grip.
A political affray, the result of a heated election in Montana, had
been the occasion of the elder Vreeland’s sudden taking off.
And so, the man who had never learned the homely adage that
“corruption wins not more than honesty,” slept far away from his
fathers on the rocky hillsides of Helena, in wild Montana. It was a
miserable summation of failures.
The hegira of the father had left the son stranded in life at the start
upon his finishing the four years at Princeton which had made him
an expert in all the manly arts save any definite plan of money-
getting.
A still self-deceiving man, Erastus Vreeland had hopefully invited his
son to share the suggested exile, and thus, the plan of the law
course for the junior was perforce abandoned. It had not been long
till father and son drifted coldly apart.
The mean, shabby moral nature of the demoralized elder could not
long impose upon the quick-witted youth. The slights of the bench,
the slurs of the bar, the wasp-like thrusts of a bold frontier press, all
proved that the “trail of the serpent” followed on after the talented
weakling whose professional honor was never proof against gold or
gain secured from either side.
And so, with only a hypocritical pretense of a certain lingering
friendly feeling, the two men had finally parted, dividing a few
hundred dollars which were the remains of a retainer in a case,
which deftly went wrong on its trial, sold out, to the benefit of lawyer
Vreeland’s adversary. Then came the bloody finale—and, and—exit
Vreeland pater!
Harold Vreeland sighed in disgust as he recalled the five lost years
of his golden youthful promise.
“It’s all rot,” he muttered, “this idea that the loafer life of the far West
gives either scope, strength, or courage to any man. It is all mere
barbarism, and only a windy discounting of a future which never
comes. A long, bootless struggle with the meaner conditions of life.”
He recalled his varied experiences as notary public, deputy county
clerk, cashier of a shoddy bank—a concern which “folded its Arabian
tents” in six months.
Real estate dealer he had been in several aspiring “boom towns,”
and also, secretary of many frontier “wind” corporations, whose
beautifully engraved stock certificates were now either carried
around in the pocketbooks of dupes or else stuck up in Western
saloons, to the huge edification of the ungodly.
This strange wandering life had made him a fox in cunning, though
not as yet a ravening wolf, for there was little to prey upon in those
dreary distant Occidental preserves. But, his fangs were well
sharpened for the fray.
He realized, as the lights of Haverstraw gleamed out “beyond the
swelling tide,” that he was as yet without any definite plan of
operations.
A singular incident, illustrative of the roughly good-humored social
code of the wild West had caused him to seek the city of Manhattan.
The political clique which had coolly plotted the murder of his crafty
father, with a last generous twinge of conscience, had sent all the
private papers of the defunct lawyer over to his son, who was
listlessly engaged at the time in endeavoring, on a net cash capital of
a hundred and fifty dollars, to float a ten million dollar corporation, in
order to utilize certain waste energy of those foaming falls of the
Spokane River, which have so long caused both the salmon and the
Indians a great deal of unnecessary trouble.
And then, young Vreeland wearily explored those ashes of life—the
“papers in the case” of the defunct.
The unwelcome discovery of many evidences of his father’s shame
and the revealing of all that secret life which had sent his patient
mother to the shadowy bourne of heartbroken wives, was somewhat
mitigated by the discovery of a paid-up policy of ten thousand dollars
in the great “Acqueduct Life Insurance of New York City.”
There was, as usual, some strings and filaments hanging out loosely
knotted up, and it had been a labor of months, involving a
correspondence of some acerbity, for him to obtain letters of
administration, close up his father’s “estate,” and depart to Gotham
to receive a check for seven thousand dollars in full settlement of the
claim.
On the road over from Spokane, Mr. Harold Vreeland had carefully
counted all his ships. He had even gone over all his own abortive
attempts at opening any useful career, and so, on this summer
evening, he gloomily felt how poorly prepared he was to fight the
battle of life against the keen competition and increasing pressure of
his peers in New York City.
“If I had only my father’s profession, I would have a chance to get in
among these fellows, and I would soon have my share of the gate
money,” he growled.
“But to take a place in the line of mere drudges, to sink down into the
death in life of a hall room and a cheap boarding-house. Once
planted there, I am there forever. And I have not a friend in the whole
world!”
His mental harvest had only been one of husks, and he keenly felt
the absence of any definite calling pour accrocher.
Suddenly his eye caught the gleam of a sunset upon a dozen
drifting, glittering white sails on the river.
They all seemed to float on serenely, borne along upon the broad
tide, with no visible man’s hand to guide.
“I will drift a while,” he murmured. “I have a few thousand dollars.
Something will surely turn up. If it does not,” he resolutely said,
“then, I will turn it up myself.”
“There are women here, too—women with hearts of flame, and who
are to be won. I was a fool ever to go out to the frontier. Perhaps—”
And his mind reverted to a lucky college chum who had married a
woman nearly two generations older than himself, but a well-
preserved Madame “Midas.”
“By Jove! anything is better than this beastly poverty,” he mused.
“Even that.”
“This is no era for poor men. Poverty is the only crime nowadays.”
His cynicism was broken off by the approach of two men, who rose
to rejoin friends in the train as it dashed along toward the Bronx
River.
As they came up the smoking-car, Vreeland easily recognized Fred
Hathorn, the stroke of the college crew in which he had once won
hard-fought honors for the orange.
There was no mistaking the easy luxury which exhaled from Mr. Fred
Hathorn of the great firm of Hathorn and Potter, bankers and brokers
of dingy Wall Street, a man who had already arrived!
The first crucial glance of rapid inspection was not lost on Vreeland,
as Hathorn, in an easy way cried: “Hello, Hod Vreeland! What brings
you over here?”
With a perfunctory politeness, Mr. James Potter halted and calmly
acknowledged Hathorn’s listless introduction.
The little blonde man-about-town, however, gazed longingly ahead at
the car where certain fair dames now awaited their escorts.
Jimmy Potter was born to “no end of easy money,” and so his
dashing senior partner’s genius for finance was strongly buttressed
by the whirlwind of cash which clustered around Jimmy Potter’s
lucky head.
All sorts of financial bees seemed to swarm around Potter and
quietly settle in his hive.
“What’s the use of making a row?” he often remarked. “Sit still, and
what you want in life will come to you.” Mr. James Potter of New York
was an Epicurean disciple.
The blood mounted to Vreeland’s forehead as he noted all the
deprecating courtesy of Hathorn’s welcome.
“Damn him! I’ll give him a bit of a bluff,” he quickly decided, under
the inspiration of some bold, familiar spirit.
There was an air of quiet comfort in the careless response of
Vreeland.
“I have just fallen into a good bit of money by my father’s death, and
so have come on here to enjoy myself. I may spend a couple of
years abroad.”
Vreeland then blessed that daring, familiar spirit which so saucily
suggested his “cheeky” retort, as the man who had been his chum
and fellow of several Greek letter societies stopped short. “Wait for
me at the station, old fellow. We are bothered yet with some ladies.
They leave at the station. Then we will dine later at the club and talk
over old times a bit. You’ll come, too, won’t you, Potter?”
Jimmy Potter carelessly nodded an assent from sheer laziness, and
then the two members of the jeunesse dorée, passed on into the
boudoir car.
There was a twinkle of triumph in Vreeland’s eye as he sank back in
his seat.
“I got a dinner out of you at any rate, Mr. Snob,” he gleefully
chuckled.
And, highly elated, he decided then and there, to vary his first plan of
drifting with the tide, and to cautiously put his oar in a bit where it
would help him on.
His step was as light as the tread of a panther when he leaped out of
the car at Forty-second Street.
“I’ll have a stolen glance at their women,” he quickly resolved.
“Perhaps they may give dinners, too.”
And just then, there seemed to be the twinkle of a little star of Hope
lighting up that devious, unknown path which he was so soon to
tread.
“I’ll let him give me a Club card,” he mused, as the wearied
passengers hurried along to brave the din of importunate jehus.
He was wondering how much of a social show he could make at
need with his slender fortune, when the two men slowly approached
with three “shining ones” of the golden strata of womanly New York.
“These people are all in the swim,” he murmured. “I will find the way!
I am as good as any of them.”
And as he raised his eyes, he met the glances of the imperial-looking
woman who was Fred Hathorn’s companion.
The lady’s eyes rested for a moment upon the handsome stranger,
and then fell with a peculiar abruptness.
“If that woman plays any star part in his life, I will try and take her
away from him,” resolved Vreeland, whose whole soul was now
thrilling with the beautiful woman’s sudden, startled admission of
interest in a passing stranger. The wine of life stirred in the young
wanderer’s veins.
His audacious, familiar sprite suggested the profound bow which
was Mr. Harold Vreeland’s first salutation upon the outskirts of the
“Four Hundred.”
He had adroitly managed to convey the respectful homage of the
salutation by his velvety eyes to the very person intended, for, while
Jimmy Potter was placidly listening to the brilliant chatter of two very
vivacious rosebuds, Mrs. Elaine Willoughby turned to Hathorn:
“Fred, who is your Western friend?” she asked, with an assumed
carelessness.
It was by sheer good luck that Hathorn, who was watching the young
millionairess whom he was soon to marry, answered with an unusual
warmth:
“An old college chum—Vreeland of Princeton, and a rattling good
fellow.”
Fred Hathorn eyed with a certain qualminess the easy aplomb of his
Crœsus partner, as Jimmy Potter pressed closely to the side of
Hathorn’s destined bride, Miss Moneybags.
That young lady was destined to play the rôle of Queen of Diamonds
in the ambitious young banker’s life.
He had resolutely set up the motto, “Aut Cæsar, aut nullus,” and he
was just a bit shy of the beloved James trifling with his dashing
fiancée.
“All sorts of things happen in New York,” mused the agnostic
Hathorn, as he handed the ladies into a waiting victoria and then
turned to rejoin the man who more than ever had now decided to
paddle a bit, as well as to drift on with the tide of fortune.
There was a glow of satisfaction burning in the Western adventurer’s
heart as, half an hour later, he noted Hathorn dash off his potent
signature behind his guest’s name on the visitor’s book of the Old
York Club. It was the open sesame to the regions of the blest—
young New York par excellence.
The trio adjourned to the billiard room, and, then and there, Vreeland
for the first time tasted the famous club cocktail.
He was “living up to his blue china,” as he gravely bowed when
Hathorn gave him a two-weeks’ card.
“I’ll have it renewed for you, old fellow,” lightly remarked the young
banker.

You might also like