You are on page 1of 53

Parallel Computers Architecture and

Programming V. Rajaraman
Visit to download the full and correct content document:
https://textbookfull.com/product/parallel-computers-architecture-and-programming-v-r
ajaraman/
More products digital (pdf, epub, mobi) instant
download maybe you interests ...

Parallel Programming Concepts and Practice 1st Edition


Bertil Schmidt

https://textbookfull.com/product/parallel-programming-concepts-
and-practice-1st-edition-bertil-schmidt/

Parallel Programming with Co-Arrays Robert W. Numrich

https://textbookfull.com/product/parallel-programming-with-co-
arrays-robert-w-numrich/

Parallel programming for modern high performance


computing systems Czarnul

https://textbookfull.com/product/parallel-programming-for-modern-
high-performance-computing-systems-czarnul/

Programming Quantum Computers Essential Algorithms and


Code Samples 1st Edition Eric R. Johnston

https://textbookfull.com/product/programming-quantum-computers-
essential-algorithms-and-code-samples-1st-edition-eric-r-
johnston/
Fortran 2018 with Parallel Programming 1st Edition
Subrata Ray (Author)

https://textbookfull.com/product/fortran-2018-with-parallel-
programming-1st-edition-subrata-ray-author/

Digital Architecture Beyond Computers Fragments of a


Cultural History of Computational Design Roberto
Bottazzi

https://textbookfull.com/product/digital-architecture-beyond-
computers-fragments-of-a-cultural-history-of-computational-
design-roberto-bottazzi/

Mathematica Functional and procedural programming 2nd


Edition V. Aladjev

https://textbookfull.com/product/mathematica-functional-and-
procedural-programming-2nd-edition-v-aladjev/

Concurrency in C Cookbook Asynchronous Parallel and


Multithreaded Programming 2nd Edition Stephen Cleary

https://textbookfull.com/product/concurrency-in-c-cookbook-
asynchronous-parallel-and-multithreaded-programming-2nd-edition-
stephen-cleary/

Assembly Programming and Computer Architecture for


Software Engineers Brian Hall

https://textbookfull.com/product/assembly-programming-and-
computer-architecture-for-software-engineers-brian-hall/
PARALLEL COMPUTERS
Architecture and Programming
SECOND EDITION

V. RAJARAMAN
Honorary Professor
Supercomputer Education and Research Centre
Indian Institute of Science Bangalore
C. SIVA RAM MURTHY
Richard Karp Institute Chair Professor
Department of Computer Science and Engineering
Indian Institute of Technology Madras
Chennai

Delhi-110092
2016
PARALLEL COMPUTERS: Architecture and Programming, Second Edition
V. Rajaraman and C. Siva Ram Murthy

© 2016 by PHI Learning Private Limited, Delhi. All rights reserved. No part of this book may be reproduced in any form, by
mimeograph or any other means, without permission in writing from the publisher.
ISBN-978-81-203-5262-9

The export rights of this book are vested solely with the publisher.

Eleventh Printing (Second Edition) ... ... ... July, 2016

Published by Asoke K. Ghosh, PHI Learning Private Limited, Rimjhim House, 111, Patparganj Industrial Estate, Delhi-
110092 and Printed by Mohan Makhijani at Rekha Printers Private Limited, New Delhi-110020.
To
the memory of my dear nephew Dr. M.R. Arun
— V. Rajaraman
To
the memory of my parents, C. Jagannadham and C. Subbalakshmi
— C. Siva Ram Murthy
Table of Contents
Preface
1. Introduction
1.1 WHY DO WE NEED HIGH SPEED COMPUTING?
1.1.1 Numerical Simulation
1.1.2 Visualization and Animation
1.1.3 Data Mining
1.2 HOW DO WE INCREASE THE SPEED OF COMPUTERS?
1.3 SOME INTERESTING FEATURES OF PARALLEL COMPUTERS
1.4 ORGANIZATION OF THE BOOK
EXERCISES
Bibliography
2. Solving Problems in Parallel
2.1 UTILIZING TEMPORAL PARALLELISM
2.2 UTILIZING DATA PARALLELISM
2.3 COMPARISON OF TEMPORAL AND DATA PARALLEL PROCESSING
2.4 DATA PARALLEL PROCESSING WITH SPECIALIZED PROCESSORS
2.5 INTER-TASK DEPENDENCY
2.6 CONCLUSIONS
EXERCISES
Bibliography
3. Instruction Level Parallel Processing
3.1 PIPELINING OF PROCESSING ELEMENTS
3.2 DELAYS IN PIPELINE EXECUTION
3.2.1 Delay Due to Resource Constraints
3.2.2 Delay Due to Data Dependency
3.2.3 Delay Due to Branch Instructions
3.2.4 Hardware Modification to Reduce Delay Due to Branches
3.2.5 Software Method to Reduce Delay Due to Branches
3.3 DIFFICULTIES IN PIPELINING
3.4 SUPERSCALAR PROCESSORS
3.5 VERY LONG INSTRUCTION WORD (VLIW) PROCESSOR
3.6 SOME COMMERCIAL PROCESSORS
3.6.1 ARM Cortex A9 Architecture
3.6.2 Intel Core i7 Processor
3.6.3 IA-64 Processor Architecture
3.7 MULTITHREADED PROCESSORS
3.7.1 Coarse Grained Multithreading
3.7.2 Fine Grained Multithreading
3.7.3 Simultaneous Multithreading
3.8 CONCLUSIONS
EXERCISES
BIBLIOGRAPHY
4. Structure of Parallel Computers
4.1 A GENERALIZED STRUCTURE OF A PARALLEL COMPUTER
4.2 CLASSIFICATION OF PARALLEL COMPUTERS
4.2.1 Flynn’s Classification
4.2.2 Coupling Between Processing Elements
4.2.3 Classification Based on Mode of Accessing Memory
4.2.4 Classification Based on Grain Size
4.3 VECTOR COMPUTERS
4.4 A TYPICAL VECTOR SUPERCOMPUTER
4.5 ARRAY PROCESSORS
4.6 SYSTOLIC ARRAY PROCESSORS
4.7 SHARED MEMORY PARALLEL COMPUTERS
4.7.1 Synchronization of Processes in Shared Memory Computers
4.7.2 Shared Bus Architecture
4.7.3 Cache Coherence in Shared Bus Multiprocessor
4.7.4 MESI Cache Coherence Protocol
4.7.5 MOESI Protocol
4.7.6 Memory Consistency Models
4.7.7 Shared Memory Parallel Computer Using an Interconnection Network
4.8 INTERCONNECTION NETWORKS
4.8.1 Networks to Interconnect Processors to Memory or Computers to
Computers
4.8.2 Direct Interconnection of Computers
4.8.3 Routing Techniques for Directly Connected Multicomputer Systems
4.9 DISTRIBUTED SHARED MEMORY PARALLEL COMPUTERS
4.9.1 Cache Coherence in DSM
4.10 MESSAGE PASSING PARALLEL COMPUTERS
4.11 Computer Cluster
4.11.1 Computer Cluster Using System Area Networks
4.11.2 Computer Cluster Applications
4.12 Warehouse Scale Computing
4.13 Summary and Recapitulation
EXERCISES
BIBLIOGRAPHY
5. Core Level Parallel Processing
5.1 Consequences of Moore’s law and the advent of chip multiprocessors
5.2 A generalized structure of Chip Multiprocessors
5.3 MultiCore Processors or Chip MultiProcessors (CMPs)
5.3.1 Cache Coherence in Chip Multiprocessor
5.4 Some commercial CMPs
5.4.1 ARM Cortex A9 Multicore Processor
5.4.2 Intel i7 Multicore Processor
5.5 Chip Multiprocessors using Interconnection Networks
5.5.1 Ring Interconnection of Processors
5.5.2 Ring Bus Connected Chip Multiprocessors
5.5.3 Intel Xeon Phi Coprocessor Architecture [2012]
5.5.4 Mesh Connected Many Core Processors
5.5.5 Intel Teraflop Chip [Peh, Keckler and Vangal, 2009]
5.6 General Purpose Graphics Processing Unit (GPGPU)
EXERCISES
BIBLIOGRAPHY
6. Grid and Cloud Computing
6.1 GRID COMPUTING
6.1.1 Enterprise Grid
6.2 Cloud computing
6.2.1 Virtualization
6.2.2 Cloud Types
6.2.3 Cloud Services
6.2.4 Advantages of Cloud Computing
6.2.5 Risks in Using Cloud Computing
6.2.6 What has Led to the Acceptance of Cloud Computing
6.2.7 Applications Appropriate for Cloud Computing
6.3 CONCLUSIONS
EXERCISES
BIBLIOGRAPHY
7. Parallel Algorithms
7.1 MODELS OF COMPUTATION
7.1.1 The Random Access Machine (RAM)
7.1.2 The Parallel Random Access Machine (PRAM)
7.1.3 Interconnection Networks
7.1.4 Combinational Circuits
7.2 ANALYSIS OF PARALLEL ALGORITHMS
7.2.1 Running Time
7.2.2 Number of Processors
7.2.3 Cost
7.3 PREFIX COMPUTATION
7.3.1 Prefix Computation on the PRAM
7.3.2 Prefix Computation on a Linked List
7.4 SORTING
7.4.1 Combinational Circuits for Sorting
7.4.2 Sorting on PRAM Models
7.4.3 Sorting on Interconnection Networks
7.5 SEARCHING
7.5.1 Searching on PRAM Models
Analysis
7.5.2 Searching on Interconnection Networks
7.6 MATRIX OPERATIONS
7.6.1 Matrix Multiplication
7.6.2 Solving a System of Linear Equations
7.7 PRACTICAL MODELS OF PARALLEL COMPUTATION
7.7.1 Bulk Synchronous Parallel (BSP) Model
7.7.2 LogP Model
7.8 CONCLUSIONS
EXERCISES
BIBLIOGRAPHY
8. Parallel Programming
8.1 MESSAGE PASSING PROGRAMMING
8.2 MESSAGE PASSING PROGRAMMING WITH MPI
8.2.1 Message Passing Interface (MPI)
8.2.2 MPI Extensions
8.3 SHARED MEMORY PROGRAMMING
8.4 SHARED MEMORY PROGRAMMING WITH OpenMP
8.4.1 OpenMP
8.5 HETEROGENEOUS PROGRAMMING WITH CUDA AND OpenCL
8.5.1 CUDA (Compute Unified Device Architecture)
8.5.2 OpenCL (Open Computing Language)
8.6 PROGRAMMING IN BIG DATA ERA
8.6.1 MapReduce
8.6.2 Hadoop
8.7 CONCLUSIONS
EXERCISES
BIBLIOGRAPHY
9. Compiler Transformations for Parallel Computers
9.1 ISSUES IN COMPILER TRANSFORMATIONS
9.1.1 Correctness
9.1.2 Scope
9.2 TARGET ARCHITECTURES
9.2.1 Pipelines
9.2.2 Multiple Functional Units
9.2.3 Vector Architectures
9.2.4 Multiprocessor and Multicore Architectures
9.3 DEPENDENCE ANALYSIS
9.3.1 Types of Dependences
9.3.2 Representing Dependences
9.3.3 Loop Dependence Analysis
9.3.4 Subscript Analysis
9.3.5 Dependence Equation
9.3.6 GCD Test
9.4 TRANSFORMATIONS
9.4.1 Data Flow Based Loop Transformations
9.4.2 Loop Reordering
9.4.3 Loop Restructuring
9.4.4 Loop Replacement Transformations
9.4.5 Memory Access Transformations
9.4.6 Partial Evaluation
9.4.7 Redundancy Elimination
9.4.8 Procedure Call Transformations
9.4.9 Data Layout Transformations
9.5 FINE-GRAINED PARALLELISM
9.5.1 Instruction Scheduling
9.5.2 Trace Scheduling
9.5.3 Software Pipelining
9.6 Transformation Framework
9.6.1 Elementary Transformations
9.6.2 Transformation Matrices
9.7 PARALLELIZING COMPILERS
9.8 CONCLUSIONS
EXERCISES
BIBLIOGRAPHY
10. Operating Systems for Parallel Computers
10.1 RESOURCE MANAGEMENT
10.1.1 Task Scheduling in Message Passing Parallel Computers
10.1.2 Dynamic Scheduling
10.1.3 Task Scheduling in Shared Memory Parallel Computers
10.1.4 Task Scheduling for Multicore Processor Systems
10.2 PROCESS MANAGEMENT
10.2.1 Threads
10.3 Process Synchronization
10.3.1 Transactional Memory
10.4 INTER-PROCESS COMMUNICATION
10.5 MEMORY MANAGEMENT
10.6 INPUT/OUTPUT (DISK ARRAYS)
10.6.1 Data Striping
10.6.2 Redundancy Mechanisms
10.6.3 RAID Organizations
10.7 CONCLUSIONS
EXERCISES
BIBLIOGRAPHY
11. Performance Evaluation of Parallel Computers
11.1 BASICS OF PERFORMANCE EVALUATION
11.1.1 Performance Metrics
11.1.2 Performance Measures and Benchmarks
11.2 SOURCES OF PARALLEL OVERHEAD
11.2.1 Inter-processor Communication
11.2.2 Load Imbalance
11.2.3 Inter-task Synchronization
11.2.4 Extra Computation
11.2.5 Other Overheads
11.2.6 Parallel Balance Point
11.3 SPEEDUP PERFORMANCE LAWS
11.3.1 Amdahl’s Law
11.3.2 Gustafson’s Law
11.3.3 Sun and Ni’s Law
11.4 SCALABILITY METRIC
11.4.1 Isoefficiency Function
11.5 PERFORMANCE ANALYSIS
11.6 CONCLUSIONS
EXERCISES
BIBLIOGRAPHY
Appendix
Index
Preface

There is a surge of interest today in parallel computing. A general consensus is emerging


among professionals that the next generation of processors as well as computers will work in
parallel. In fact, all new processors are multicore processors in which several processors are
integrated in one chip. It is therefore essential for all students of computing to understand the
architecture and programming of parallel computers. This book is an introduction to this
subject and is intended for the final year undergraduate engineering students of Computer
Science and Information Technology. It can also be used by students of MCA who have an
elective subject in parallel computing. Working IT professionals will find this book very
useful to update their knowledge about parallel computers and multicore processors.
Chapter 1 is introductory and explains the need for parallel computers. Chapter 2 discusses
at length the idea of partitioning a job into many tasks which may be carried out in parallel by
several processors. The concept of job partitioning, allocating and scheduling and their
importance when attempting to solve problems in parallel is explained in this chapter. In
Chapter 3 we deal with instruction level parallelism and how it is used to construct modern
processors which constitute the heart of parallel computers as well as multicore processors.
Starting with pipelined processors (which use temporal parallelism), we describe superscalar
pipelined processors and multithreaded processors.
Chapter 4 introduces the architecture of parallel computers. We start with Flynn’s
classification of parallel computers. After a discussion of vector computers and array
processors, we present in detail the various implementation procedures of MIMD
architecture. We also deal with shared memory, CC-NUMA architectures, and the important
problem of cache coherence. This is followed by a section on message passing computers and
the design of Cluster of Workstations (COWs) and Warehouse Scale parallel computers used
in Cloud Computing.
Chapter 5 is a new chapter in this book which describes the use of “Core level parallelism”
in the architecture of current processors which incorporate several processors on one
semiconductor chip. The chapter begins by describing the develop-ments in both
semiconductor technology and processor design which have inevitably led to multicore
processors. The limitations of increasing clock speed, instruction level parallelism, and
memory size are discussed. This is followed by the architecture of multicore processors
designed by Intel, ARM, and AMD. The variety of multicore processors and their application
areas are described. In this chapter we have also introduced the design of chips which use
hundreds of processors.
Chapter 6 is also new. It describes Grid and Cloud Computing which will soon be used by
most organizations for their routine computing tasks. The circumstances which have led to
the emergence of these new computing environments, their strengths and weaknesses, and the
major differences between grid computing and cloud computing are discussed.
Chapter 7 starts with a discussion of various theoretical models of parallel computers such
as PRAM and combinational circuits, which aid in designing and analyzing parallel
algorithms. This is followed by parallel algorithms for prefix computation, sorting, searching,
and matrix operations. Complexity issues have been always kept in view while developing
parallel algorithms. It also presents some practical models of parallel computation such as
BSP, Multi-BSP, and LogP.
Chapter 8 is about programming parallel computers. It presents in detail the development
of parallel programs for message passing parallel computers using MPI, shared memory
parallel computers using OpenMP, and heterogeneous (CPU-GPU) systems using CUDA and
OpenCL. This is followed by a simple and powerful MapReduce programming model that
enables easy development of scalable parallel programs to process big data on large clusters
of commodity machines.
In Chapter 9 we show the importance of compiler transformations to effectively use
pipelined processors, vector processors, superscalar processors, multicore processors, and
SIMD and MIMD computers. The important topic of dependence analysis is discussed at
length. It ends with a discussion of parallelizing compilers.
Chapter 10 deals with the key issues in parallel operating systems—resource (processor)
management, process/thread management, synchronization mechanisms including
transactional memory, inter-process communication, memory management, and input/output
with particular reference to RAID secondary storage system.
The last chapter is on performance evaluation of parallel computers. This chapter starts
with a discussion of performance metrics. Various speedup performance laws, namely,
Amdahl’s law, Gustafson’s law and Sun and Ni’s law are explained. The chapter ends with a
discussion of issues involved in developing tools for measuring the performance of parallel
computers.
Designed as a textbook with a number of worked examples, and exercises at the end of
each chapter; there are over 200 exercises in all. The book has been classroom tested at the
Indian Institute of Science, Bangalore and the Indian Institute of Technology Madras,
Chennai. The examples and exercises, together with the References at the end of each
chapter, have been planned to enable students to have an extensive as well as an intensive
study of parallel computing.
In writing this book, we gained a number of ideas from numerous published papers and
books on this subject. We thank all those authors, too numerous to acknowledge individually.
Many of our colleagues and students generously assisted us by reading drafts of the book and
suggested improvements. Among them we thank Prof. S.K. Nandy and Dr. S. Balakrishnan
of Supercomputer Education and Research Centre, Indian Institute of Science, Bangalore,
Prof. Mainak Chaudhuri of IIT, Kanpur, and Arvind, Babu Shivnath, Bharat Chandra,
Manikantan, Rajkarn Singh, Sudeepta Mishra and Sumant Kowshik of Indian Institute of
Technology Madras, Chennai. We thank Ms. T. Mallika of Indian Institute of Science,
Bangalore, and Mr. S. Rajkumar, a former project staff member of Indian Institute of
Technology Madras, Chennai, for word processing.
The first author thanks the Director, and the Chairman, Supercomputer Education and
Research Centre, Indian Institute of Science, Bangalore, for providing the facilities for
writing this book. He also thanks his wife Dharma for proofreading the book and for her
support which enabled him to write this book. The second author thanks the members of his
family—wife Sharada, son Chandrasekhara Sastry and daughter Sarita—for their love and
constant support of his professional endeavors.
We have taken reasonable care in eliminating any errors that might have crept into the
book. We will be happy to receive comments and suggestions from readers at our respective
email addresses: rajaram@serc.iisc.ernet.in, murthy@iitm.ac.in.
V. Rajaraman
C. Siva Ram Murthy
Introduction

Of late there has been a lot of interest generated all over the world on parallel processors and
parallel computers. This is due to the fact that all current micro-processors are parallel
processors. Each processor in a microprocessor chip is called a core and such a
microprocessor is called a multicore processor. Multicore processors have an on-chip
memory of a few megabytes (MB). Before trying to answer the question “What is a parallel
computer?”, we will briefly review the structure of a single processor computer (Fig. 1.1). It
consists of an input unit which accepts (or reads) the list of instructions to solve a problem (a
program) and data relevant to that problem. It has a memory or storage unit in which the
program, data and intermediate results are stored, a processing element which we will
abbreviate as PE (also called a Central Processing Unit (CPU)) which interprets and executes
instructions, and an output unit which displays or prints the results.

Figure 1.1 Von Neumann architecture computer.


This structure of a computer was proposed by John Von Neumann in the mid 1940s and is
known as the Von Neumann Architecture. In this architecture, a program is first stored in the
memory. The PE retrieves one instruction of this program at a time, interprets it and executes
it. The operation of this computer is thus sequential. At a time, the PE can execute only one
instruction. The speed of this sequential computer is thus limited by the speed at which a PE
can retrieve instructions and data from the memory and the speed at which it can process the
retrieved data. To increase the speed of processing of data one may increase the speed of the
PE by increasing the clock speed. The clock speed increased from a few hundred kHz in the
1970s to 3 GHz in 2005. Processor designers found it difficult to increase the clock speed
further as the chip was getting overheated. The number of transistors which could be
integrated in a chip could, however, be doubled every two years. Thus, processor designers
placed many processing “cores” inside the processor chip to increase its effective throughput.
The processor retrieves a sequence of instructions from the main memory and stores them in
an on-chip memory. The “cores” can then cooperate to execute these instructions in parallel.
Even though the speed of single processor computers is continuously increasing, problems
which are required to be solved nowadays are becoming more complex as we will see in the
next section. To further increase the processing speed, many such computers may be inter-
connected to work cooperatively to solve a problem. A computer which consists of a number
of inter-connected computers which cooperatively execute a single program to solve a
problem is called a parallel computer. Rapid developments in electronics have led to the
emergence of processors which can process over 5 billion instructions per second. Such
processors cost only around $100. It is thus possible to economically construct parallel
computers which use around 4000 such multicore processors to carry out ten trillion (1013)
instructions per second assuming 50% efficiency.
The more difficult problem is to perceive parallelism in algorithms and develop a software
environment which will enable application programs to utilize this potential parallel
processing power.
1.1 WHY DO WE NEED HIGH SPEED COMPUTING?
There are many applications which can effectively use computing speeds in the trillion
operations per second range. Some of these are:

Numerical simulation to predict the behaviour of physical systems.


High performance graphics—particularly visualization, and animation.
Big data analytics for strategic decision making.
Synthesis of molecules for designing medicines.

1.1.1 Numerical Simulation


Of late numerical simulation has emerged as an important method in scientific research and
engineering design complementing theoretical analysis and experimental observations.
Numerical simulation has many advantages. Some of these are:

1. Numerical modelling is versatile. A wide range of problems can be simulated on a


computer.
2. It is possible to change many parameters and observe their effects when a system is
modelled numerically. Experiments do not allow easy change of many parameters.
3. Numerical simulation is interactive. The results of simulation may be visualized
graphically. This facilitates refinement of models. Such refinement provides a
better understanding of physical problems which cannot be obtained from
experiments.
4. Numerical simulation is cheaper than conducting experiments on physical systems
or building prototypes of physical systems.

The role of experiments, theoretical models, and numerical simulation is shown in Fig.
1.2. A theoretically developed model is used to simulate the physical system. The results of
simulation allow one to eliminate a number of unpromising designs and concentrate on those
which exhibit good performance. These results are used to refine the model and carry out
further numerical simulation. Once a good design on a realistic model is obtained, it is used
to construct a prototype for experimentation. The results of experiments are used to refine the
model, simulate it and further refine the system. This repetitive process is used until a
satisfactory system emerges. The main point to note is that experiments on actual systems are
not eliminated but the number of experiments is reduced considerably. This reduction leads to
substantial cost saving. There are, of course, cases where actual experiments cannot be
performed such as assessing damage to an aircraft when it crashes. In such a case simulation
is the only feasible method.
Figure 1.2 Interaction between theory, experiments and computer simulation.
With advances in science and engineering, the models used nowadays incorporate more
details. This has increased the demand for computing and storage capacity. For example, to
model global weather, we have to model the behaviour of the earth’s atmosphere. The
behaviour is modelled by partial differential equations in which the most important variables
are the wind speed, air temperature, humidity and atmospheric pressure. The objective of
numerical weather modelling is to predict the status of the atmosphere at a particular region
at a specified future time based on the current and past observations of the values of
atmospheric variables. This is done by solving the partial differential equations numerically
in regions or grids specified by using lines parallel to the latitude and longitude and using a
number of atmospheric layers. In one model (see Fig. 1.3), the regions are demarcated by
using 180 latitudes and 360 longitudes (meridian circles) equally spaced around the globe. In
the vertical direction 12 layers are used to describe the atmosphere. The partial differential
equations are solved by discretizing them to difference equations which are in turn solved as
a set of simultaneous algebraic equations. For each region one point is taken as representing
the region and this is called a grid point. At each grid point in this problem, there are 5
variables (namely air velocity, temperature, pressure, humidity, and time) whose values are
stored. The simultaneous algebraic equations are normally solved using an iterative method.
In an iterative method several iterations (100 to 1000) are needed for each grid point before
the results converge. The calculation of each trial value normally requires around 100 to 500
floating point arithmetic operations. Thus, the total number of floating point operations
required for each simulation is approximately given by:
Number of floating point operations per simulation
= Number of grid points × Number of values per grid point × Number of trials × Number
of operations per trial
Figure 1.3 Grid for numerical weather model for the Earth.
In this example we have:
Number of grid points = 180 × 360 × 12 = 777600
Number of values per grid point = 5
Number of trials = 500
Number of operations per trial = 400
Thus, the total number of floating point operations required per simulation = 777600 × 5 ×
500 × 400 = 7.77600 × 1011. If each floating point operation takes 100 ns the total time taken
for one simulation = 7.8 × 104 s = 21.7 h. If we want to predict the weather at the intervals of
6 h there is no point in computing for 21.7 h for a prediction! If we want to simulate this
problem, a floating point arithmetic operation on 64-bit operands should be complete within
10 ns. This time is too short for a computer which does not use any parallelism and we need a
parallel computer to solve such a problem. In general the complexity of a problem of this
type may be described by the formula:
Problem complexity = G × V × T × A
where
G = Geometry of the grid system used
V = Variables per grid point
T = Number of steps per simulation for solving the problem
A = Number of floating point operations per step
For the weather modelling problem,
G = 777600, V = 5, T = 500 and A = 400 giving problem complexity = 7.8 × 1011.
There are many other problems whose complexity is of the order of 1012 to 1020. For
example, the complexity of numerical simulation of turbulent flows around aircraft wings and
body is around 1015. Some other areas where numerically intensive simulation is required
are:

Charting ocean currents


Exploring greenhouse effect and ozone depletion
Exploration geophysics, in particular, seismology
Simulation of fusion and fission reactions to design hydrogen and atomic devices
Designing complex civil and mechanical structures
Design of drugs by simulating the effect of drugs at the molecular level
Simulations in solid state and structural chemistry
Simulation in condensed matter physics
Analyzing data obtained from the large hadron collider experiment
Protein folding
Plate tectonics to forecast earthquakes

The range of applications is enormous and increasing all the time.


The use of computers in numerical simulation is one of the earliest applications of high
performance computers. Of late two other problems have emerged whose complexity is in the
range of 1015 to 1018 arithmetic operations. They are called petascale and exascale
computing. We describe them as follows:

1.1.2 Visualization and Animation


In visualization and animation, the results of computation are to be realistically rendered on a
high resolution terminal. In this case, the number of area elements where the picture is to be
rendered is represented by G. The number of picture elements (called pixels) to be processed
in each area element is represented by R and the time to process· a pixel by T. The
computation should be repeated at least 60 times a second for animation. Thus, GR pixels
should be processed in 1/60 s. Thus, time to process a pixel = 1/(60 × G × R). Typically G =
105, R = 107. Thus, a pixel should be processed within 10–14 s. If N instructions are required
to process a pixel then the computer should be able to carry out N × 1014 instructions per
second. In general the computational complexity in this case is:
G×R×P×N
where G represents the complexity of the geometry (i.e., number of area elements in the
picture), R the number of pixels per area element, P the number of repetitions per second (for
animation) and N the number of instructions needed to process a pixel. This problem has a
complexity exceeding 1015.
The third major application requiring intensive computation is data analytics or data
mining which we describe next.

1.1.3 Data Mining


There are large databases of the order of peta bytes (1015 bytes) which are in the data archives
of many organizations. Some experiments such as the Large Hadron Collider (LHC)
generates peta and exa bytes of data which are to be analyzed. With the availability of high
capacity disks and high speed computers, organizations have been trying to analyze data in
the data archive to discover some patterns or rules. Consumer product manufacturers may be
able to find seasonal trends in sales of some product or the effect of certain promotional
advertisements on the sale of related products from archival data. In general, the idea is to
hypothesize a rule relating data elements and test it by retrieving these data elements from the
archive. The complexity of this processing may be expressed by the formula:
PC = S × P × N
where S is the size of the database, P the number of instructions to be executed to check a
rule and N the number of rules to be checked. In practice the values of these quantities are:
S = 1015
P = 100, N = 10
giving a value of PC (Problem Complexity) of 1018. This problem can be solved effectively
only if a computer with speeds of 1015 instructions per second is available.
These are just three examples of compute intensive problems. There are many others
which are emerging such as realistic models of the economy, computer generated movies,
and video database search, which require computers which can carry out tens of tera
operations per second for their solution.
1.2 HOW DO WE INCREASE THE SPEED OF COMPUTERS?
There are two methods of increasing the speed of computers. One method is to build
processing elements using faster semiconductor components and the other is to improve the
architecture of computers using the increasing number of transistors available in processing
chips. The rate of growth of speed using better device technology has been slow. For
example, the basic clock of high performance processors in 1980 was 50 MHz and it reached
3 GHz by 2003. The clock speed could not be increased further without special cooling
methods as the chips got overheated. However, the number of transistors which could be
packed in a microprocessor continued to double every two years. In 1972, the number of
transistors in a microprocessor chip was 4000 and it increased to more than a billion in 2014.
The extra transistors available have been used in many ways. One method has put more than
one arithmetic unit in a processing unit. Another has increased the size of on-chip memory.
The latest is to place more than one processor in a microprocessor chip. The extra processing
units are called processing cores. The cores share an on-chip memory and work in parallel to
increase the speed of the processor. There are also processor architectures which have a
network of “cores”, each “core” with its own memory that cooperate to execute a program.
The number of cores has been increasing in step with the increase in the number of transistors
in a chip. Thus, the number of cores is doubling almost every two years. Soon (2015) there
will be 128 simple “cores” in a processor chip. The processor is one of the units of a
computer. As we saw at the beginning of this chapter, a computer has other units, namely,
memory, and I/O units. We can increase the speed of a computer by increasing the speed of
its units and also by improving the architecture of the computer. For example, while the
processor is computing, data which may be needed later could be fetched from the main
memory and simultaneously an I/O operation can be initiated. Such an overlap of operations
is achieved by using both software and hardware features.
Besides overlapping operations of various units of a computer, each processing unit in a
chip may be designed to overlap operations of successive instructions. For example, an
instruction can be broken up into five distinct tasks as shown in Fig. 1.4. Five successive
instructions can be overlapped, each doing one of these tasks (in an assembly line model)
using different parts of the CPU. The arithmetic unit itself may be designed to exploit
parallelism inherent in the problem being solved. An arithmetic operation can be broken
down into several tasks, for example, matching exponents, shifting mantissas and aligning
them, adding them, and normalizing. The components of two arrays to be added can be
streamed through the adder and the four tasks can be performed simultaneously on four
different pairs of operands thereby quadrupling the speed of addition. This method is said to
exploit temporal parallelism and will be explained in greater detail in the next chapter.
Another method is to have four adders in the CPU and add four pairs of operands
simultaneously. This type of parallelism is called data parallelism. Yet another method of
increasing the speed of computation is to organize a set of computers to work simultaneously
and cooperatively to carry out tasks in a program.
Figure 1.4 The tasks performed by an instruction and overlap of successive instructions.
All the methods described above are called architectural methods which are the ones
which have contributed to ten billions fold increase in the speed of computations in the last
two decades. We summarize these methods in Table 1.1.
TABLE 1.1 Architectural Methods Used to Increase the Speed of Computers

* use parallelism in a single processor computer


— Overlap execution of a number of instructions by pipelining, or by using multiple functional units, or multiple
processor “cores”.
— Overlap operation of different units of a computer.
— Increase the speed of arithmetic logic unit by exploiting data and/or temporal parallelism.
* use parallelism in the problem to solve it on a parallel computer.
— Use number of interconnected computers to work cooperatively to solve the problem.
1.3 SOME INTERESTING FEATURES OF PARALLEL COMPUTERS
Even though higher speed obtainable with parallel computers is the main motivating force for
building parallel computers, there are some other interesting features of parallel computers
which are not obvious but nevertheless important. These are:
Better quality of solution. When arithmetic operations are distributed to many computers,
each one does a smaller number of arithmetic operations. Thus, rounding errors are lower
when parallel computers are used.
Better algorithms. The availability of many computers that can work simultaneously leads
to different algorithms which are not relevant for purely sequential computers. It is possible
to explore different facets of a solution simultaneously using several processors and these
give better insight into solutions of several physical problems.
Better storage distribution. Certain types of parallel computing systems provide much
larger storage which is distributed. Access to the storage is faster in each computer. This
feature is of special interest in many applications such as information retrieval and computer
aided design.
Greater reliability. In principle a parallel computer will work even if a processor fails. We
can build a parallel computer’s hardware and software for better fault tolerance.
1.4 ORGANIZATION OF THE BOOK
This book is organized as follows. In the next chapter we describe various methods of solving
problems in parallel. In Chapter 3 we examine the architecture of processors and how
instruction level parallelism is exploited in the design of modern microprocessors. We
explain the structure of parallel computers and examine various methods of interconnecting
processors and how they influence their cooperative functioning in Chapter 4. This is
followed by a chapter titled Core Level Parallel Processing. With the improvement of
semiconductor technology, it has now become feasible to integrate several billion transistors
in an integrated circuit. Consequently a large number of processing elements, called “cores”,
may be integrated in a chip to work cooperatively to solve problems. In this chapter we
explain the organization of multicore processors on a chip including what are known as
General Purpose Graphics Processing Units (GPGPU). Chapter 6 is on the emerging area of
Grid and Cloud Computing. We explain how these computer environments in which
computers spread all over the world are interconnected and cooperate to solve problems
emerged and how they function. We also describe the similarities and differences between
grid and cloud computing. The next part of the book concentrates on the programming
aspects of parallel computers. Chapter 7 discusses parallel algorithms including prefix
computation algorithms, sorting, searching, and matrix algorithms for parallel computers.
These problems are natural candidates for use of parallel computers. Programming parallel
computers is the topic of the next chapter. We discuss methods of programming different
types of parallel machines. It is important to be able to port parallel programs across
architectures. The solution to this problem has been elusive. In Chapter 8 four different
explicit parallel programming models (a programming model is an abstraction of a computer
system that a user sees and uses when developing programs) are described. These are: MPI
for programming message passing parallel computers, OpenMP for programming shared
memory parallel computers, CUDA and OpenCL for programming GPGPUs, and
MapReduce programming for large scale data processing on clouds. Compilers for high level
languages are corner stones of computing. It is necessary for compilers to take cognizance of
the underlying parallel architecture. Thus in Chapter 9 the important topics of dependence
analysis and compiler transformations for parallel computers are discussed. Operating
Systems for parallel computers is the topic of Chapter 10. The last chapter is on the
evaluation of the performance of parallel computers.
EXERCISES
1.1 The website http://www.top500.org lists the 500 fastest computers in the world. Find
out the top 5 computers in this list. How many processors do each of them use and what
type of processors do they use?
1.2 LINPACK benchmarks that specify the speed of parallel computers for solving 1000 ×
1000 linear systems of equations can be found in the website http://
performance.netlib.org and are updated by Jack Dongarra at the University of
Tennessee, dongarra@cs.utk.edu. Look this up and compare peak speed of parallel
computers listed with their speed.
1.3 SPEC marks that specify individual processor’s performance are listed at the web site
http:// www.specbench.org. Compare the SPEC marks of individual processors of the
top 5 fastest computers (distinct processors) which you found from the website
mentioned in Exercise 1.1.
1.4 Estimate the problem complexity for simulating turbulent flows around the wings and
body of a supersonic aircraft. Assume that the number of grid points are around 1011.
1.5 What are the different methods of increasing the speed of computers? Plot the clock
speed increase of Intel microprocessors between 1975 and 2014. Compare this with the
number of transistors in Intel microprocessors between 1975 and 2014. From these
observations, can you state your own conclusions?
1.6 List the advantages and disadvantages of using parallel computers.
1.7 How do parallel computers reduce rounding error in solving numeric intensive
problems?
1.8 Are parallel computers more reliable than serial computers? If yes explain why.
1.9 Find out the parallel computers which have been made in India by CDAC, NAL, CRL,
and BARC by searching the web. How many processors are used by them and what are
the applications for which they are used?
BIBLIOGRAPHY
Barney, B., Introduction to Parallel Computing, Lawrence Livermore National Laboratory,
USA, 2011.
(A short tutorial accessible from the web).
Computing Surveys published by the Association for Computing Machinery (ACM), USA is
a rich source of survey articles about parallel computers.
Culler, D.E., Singh, J.P. and Gupta, A., Parallel Computer Architecture and Programming,
Morgan Kauffman, San Francisco, USA, 1999.
(A book intended for postgraduate Computer Science students has a wealth of information).
DeCegama, A.L., The Technology of Parallel Processing, Vol. l: Parallel Processing,
Architecture and VLSI Hardware, Prentice-Hall Inc., Englewood Cliffs, NJ, USA, 1989.
(A good reference for parallel computer architectures).
Denning, P.J., “Parallel Computing and its Evolution”, Communications of the ACM, Vol. 29,
No. 12, Dec. 1988, pp. 1363–1367.
Dubois, M., Annavaram, M., and Stenstrom, P., Parallel Computer Organization and Design,
Cambridge University Press, UK, 2010. (A good textbook).
Gama, A., Gupta, A., Karpys, G., and Kumar, V., An Introduction to Parallel Computing,
2nd ed., Pearson, Delhi, 2004.
Hennesy, J.L., and Patterson, D.A., Computer Architecture—A Quantitative Approach, 5th
ed., Morgan Kauffman-Elsevier, USA, 2012.
(A classic book which describes both latest parallel processors and parallel computers).
Hwang, K. and Briggs, F.A., Computer Architecture and Parallel Processing, McGraw-Hill,
New York, 1984.
(This is an 846 page book which gives a detailed description of not only parallel computers
but also high performance computer architectures).
Keckler, S.W., Kundle, O. and Hofstir, H.P., (Eds.), Multicore Processors and Systems,
Springer, USA, 2009.
(A book with several authors discussing recent developments in single chip multicore
systems).
Lipovski, G.J. and Malak, M., Parallel Computing: Theory and Practice, Wiley, New York,
USA, 1987.
(Contains descriptions of some commercial and experimental parallel computers).
Satyanarayanan, M., “Multiprocessing: An Annotated Bibliography,” IEEE Computer, Vol.
13, No. 5, May 1980, pp. 101–116.
Shen, J.P., and Lipasti, M.H., Modern Processor Design, Tata McGraw-Hill, Delhi, 2010.
(Describes the design of superscalar processors).
The Magazines: Computer, Spectrum and Software published by the Institute of Electrical
and Electronics Engineers (IEEE), USA, contain many useful articles on parallel
computing.
Wilson, G.V., “The History of the Development of Parallel Computing”, 1993.
webdocs.cs.ualberta.ca/~paullu/c681/parallel.time.line.html.
Solving Problems in Parallel

In this chapter we will explain with examples how simple jobs can be solved in parallel in
many different ways. The simple examples will illustrate many important points in perceiving
parallelism, and in allocating tasks to processors for getting maximum efficiency in solving
problems in parallel.
2.1 UTILIZING TEMPORAL PARALLELISM
Suppose 1000 candidates appear in an examination. Assume that there are answers to 4
questions in each answer book. If a teacher is to correct these answer books, the following
instructions may be given to him:
Procedure 2.1 Instructions given to a teacher to correct an answer book
Step 1: Take an answer book from the pile of answer books.
Step 2: Correct the answer to Q1 namely, A1.
Step 3: Repeat Step 2 for answers to Q2, Q3, Q4, namely, A2, A3, A4.
Step 4: Add marks given for each answer.
Step 5: Put answer book in a pile of corrected answer books.
Step 6: Repeat Steps 1 to 5 until no more answer books are left in the input.
A teacher correcting 1000 answer books using Procedure 2.1 is shown in Fig. 2.1. If a
paper takes 20 minutes to correct, then 20,000 minutes will be taken to correct 1000 papers.
If we want to speedup correction, we can do it in the following ways:

Figure 2.1 A single teacher correcting answer books.

Method 1: Temporal Parallelism


Ask four teachers to co-operatively correct each answer book. To do this the four teachers sit
in one line. The first teacher corrects answer to Q1, namely, A1 of the first paper and passes
the paper to the second teacher who starts correcting A2. The first teacher immediately takes
the second paper and corrects A1 in it. The procedure is shown in Fig. 2.2.

Figure 2.2 Four teachers working in a pipeline or assembly line.


Another random document with
no related content on Scribd:
The Project Gutenberg eBook of The chase
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: The chase


a poem

Author: William Somerville

Author of introduction, etc.: William Bulmer

Engraver: Thomas Bewick

Illustrator: John Bewick

Release date: September 14, 2023 [eBook #71644]


Most recently updated: September 30, 2023

Language: English

Original publication: London: W. Bulmer and Co, 1802

Credits: Charlene Taylor, Chuck Greif and the Online Distributed


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

*** START OF THE PROJECT GUTENBERG EBOOK THE CHASE


***
THE
CHASE;
A
POEM.
BY
WILLIAM SOMERVILE, ESQ.

LONDON:

PRINTED BY W. BULMER AND CO.


Shakspeare Printing Office,

CLEVELAND-ROW.

1802.

The following Address was prefixed to the Quarto Edition of the Chase,
published in 1796.
TO THE PATRONS OF FINE PRINTING.
When the exertions of an Individual to improve his profession are crowned
with success, it is certainly the highest gratification his feelings can
experience. The very distinguished approbation that attended the publication
of the ornamented edition of Goldsmith’s Traveller, Deserted Village, and
Parnell’s Hermit, which was last year offered to the Public as a Specimen of
the improved State of Typography in this Country, demands my warmest
acknowledgments; and is no less satisfactory to the different Artists who
contributed their efforts towards the completion of the work.
The Chase, by Somervile, is now given as a Companion to Goldsmith;
and it is almost superfluous to observe, that the subjects which ornament the
present volume, being entirely composed of Landscape Scenery and Animals,
are adapted, above all others, to display the beauties of Wood Engraving.
Unfortunately for his friends, and the admirers of the art of Engraving on
Wood, I have the painful task of announcing the death of my early
acquaintance and friend, the younger Mr. Bewick. He died at Ovingham, on
the banks of the Tyne, in December last, of a pulmonary complaint.
Previously, however, to his departure from London for the place of his
nativity, he had prepared, and indeed finished on wood, the whole of the
designs, except one, which embellish the Chase; they may therefore literally
be considered as the last efforts of this ingenious and much to be lamented
Artist.
In executing the Engravings, his Brother, Mr. Thomas Bewick, has
bestowed every possible care; and the beautiful effect produced from their
joint labours will, it is presumed, fully meet the approbation of the
Subscribers.
W. BULMER.
Shakspeare Printing Office,
May 20th, 1796.
WILLIAM SOMERVILE.

T hat celebrity has not always been the attendant on merit, many
mortifying examples may be produced to prove. Of those who have by
their writings conferred a lasting obligation on their country, and at the
same time raised its reputation, many have been suffered to descend into the
grave without any memorial; and when the time has arrived, in which their
works have raised a curiosity to be informed of the general tenour, or petty
habits of their lives, always amusing, and frequently useful, little more is to
be collected, than that they once lived, and are no more.
Such has been the fate of William Somervile, who may, with great
propriety, be called the Poet of the Chase; and of whom it is to be regretted
that so few circumstances are known. By the neglect of friends while living,
and the want of curiosity in the publick, at the time of his death, he has been
deprived of that portion of fame to which his merits have entitled him; and
though the worth of his works is now universally acknowledged, his amiable
qualities, and he is said to have possessed many, are forgotten and
irrevocably lost to the world. In the lapse of more than half a century, all his
surviving friends, from whom any information could be derived, are swept
away. The little which has been hitherto collected concerning him, will be
found, on examination, not perfectly satisfactory; and of that little, some part
is less accurate than our respect for so excellent a writer leads us to wish it
had been.
He was of a family of great antiquity in the county of Warwick. His
ancestor came into England with William the Conqueror, and left two sons.
The eldest, from whom our poet was descended, had Whichnour, in the
county of Stafford, for his inheritance; and the other, the ancestor of Lord
Somervile, settled in the kingdom of Scotland. The eldest branch afterwards
removed to Ederston, in the county of Warwick; which manor Thomas
Somervile became possessed of, by marrying Joan, daughter and sole heir of
John Aylesbury, the last heir male who owned that estate. This Thomas died
in the year 1501, leaving one son, Robert, who also left one son, John, who
was the father of William Somervile, whose only son, Sir William
Somervile, Knight, left a posthumous son, William, who died in 1676,
having married Anne, daughter of John Viscount Tracey, of the kingdom of
Ireland, by whom he had eleven sons and five daughters. Of this numerous
progeny, none seem to have survived except Robert, who married Elizabeth,
eldest daughter of Sir Charles Wolseley, and by her became the father of
three sons; 1. our author; 2. Robert, who was killed in India; and, 3. Edward,
who was of New College, Oxford; where he took the degree of B. C. L.
December 7, 1710, and D. C. L. April 26, 1722, and died between the years
1733 and 1742.
William Somervile, our poet, was born in the year 1677, at Ederston,
“near Avona’s winding stream,” as he himself records in one of his poems.
At the age of thirteen, in the year 1690, he was admitted a scholar of
Winchester College, and continued there until the year 1694, when he was
sent to New College, Oxford. It does not appear, as Dr. Johnson observes,
that in the places of his education, he exhibited any uncommon proofs of
genius or literature. He is said, by the same author, to have been elected a
Fellow of New College; but as he does not seem to have taken any degree at
the university, that assertion may be doubted. It is more probable, that he
soon quitted the college for the country, where his powers were first
displayed, and where he was distinguished as a poet, a gentleman, and a
skilful and useful justice of the peace.
How soon he began to write verses we are not informed, there being few
dates in his poems; but it is certain that he was no early candidate for literary
fame. He had reached the age of fifty years, before he presented any of his
works to the publick, or was the least known. In the year 1727, he published
his first volume of Poems; the merit of which, like most collections of the
same kind, is various. Dr. Johnson says, that, “though, perhaps, he has not, in
any mode of poetry, reached such excellence as to raise much envy, it may
commonly be said, at least, that he ‘writes very well for a gentleman.’ His
serious pieces are sometimes elevated, and his trifles are sometimes elegant.
In his verses to Addison, the couplet which mentions Clio, is written with
the most exquisite delicacy of praise: it exhibits one of those happy strokes
that are seldom attained. In his Odes to Marlborough, there are beautiful
lines; but in the second ode, he shows that he knew little of his hero, when
he talks of his private virtues. His subjects are commonly such as require no
great depth of thought, or energy of expression. His fables are generally
stale, and therefore excite no curiosity. Of his favourite, the Two Springs, the
fiction is unnatural, and the moral inconsequential. In his tales, there is too
much coarseness, with too little care of language, and not sufficient rapidity
of narration.” To the justice of this estimate, it may be doubted whether an
unreserved assent will be readily given. Dr. Johnson has often dealt out his
praise with too scanty and parsimonious a hand.
His success as an author, whatever were his merits at that time, was
however sufficient not to discourage his further efforts. In the year 1735, he
produced the work now republished: a work, which has scarce ever been
spoken of but to be commended, though Dr. Johnson, whose habits of life,
and bodily defects, were little calculated to taste the beauties of this poem, or
to enter into the spirit of it, coldly says, “to this poem, praise cannot be
totally denied.” He adds, however, “he (the author,) is allowed by sportsmen
to write with great intelligence of his subject, which is the first requisite to
excellence; and though it is impossible to interest common readers of verse
in the dangers or the pleasures of the chase, he has done all that transition
and variety could easily effect; and has, with great propriety, enlarged his
plan by the modes of hunting used in other countries.” Dr. Warton observes,
that he “writes with all the spirit and fire of an eager sportsman. The
description of the hunting the hare, the fox, and the stag, are extremely
spirited, and place the very objects before our eyes: of such consequence is it
for a man to write on that, which he hath frequently felt with pleasure.”
Many other testimonies might be added; but its best praise, is the
continued succession of new editions since its original publication.
As Mr. Somervile advanced in life, his attention to literary pursuits
increased. In the year 1740, he produced “Hobbinol, or the Rural Games;” a
burlesque poem, which Dr. Warton has classed among those best deserving
notice, of the mock heroick species. It is dedicated to Mr. Hogarth, as the
greatest master in the burlesque way; and at the conclusion of his preface,
the author says, “If any person should want a key to this poem, his curiosity
shall be gratified. I shall in plain words tell him, ‘it is a satire against the
luxury, the pride, the wantonness, and quarrelsome temper of the middling
sort of people,’ As these are the proper and genuine cause of that barefaced
knavery, and almost universal poverty, which reign without control in every
place; and as to these we owe our many bankrupt farmers, our trade decayed,
and lands uncultivated, the author has reason to hope, that no honest man,
who loves his country, will think this short reproof out of season; for,
perhaps, this merry way of bantering men into virtue, may have a better
effect than the most serious admonitions, since many who are proud to be
thought immoral, are not very fond of being ridiculous.”
He did not yet close his literary labours. In the year 1742, a few months
only before his death, he published Field Sports; a poem addressed to the
Prince of Wales; and from Lady Luxborough’s letters we learn, that he had
translated Voltaire’s Alzira, which, with several other pieces not published,
were in her possession. One of these, written towards the close of life, is so
descriptive of the old age of a sportsman, and exhibits so pleasing a picture
of the temper and turn of mind of the author, we shall here insert. It is an
“Address to his Elbow Chair, new clothed.”

My dear companion, and my faithful friend!


If Orpheus taught the listening oaks to bend,
If stones and rubbish, at Amphion’s call,
Danced into form, and built the Theban wall;
Why should’st not thou attend my humble lays,
And hear my grateful harp resound thy praise?
True, thou art spruce and fine; a very beau;
But what are trappings, and external show?
To real worth alone I make my court;
Knaves are my scorn, and coxcombs are my sport.
Once I beheld thee, far less trim and gay,
Ragged, disjointed, and to worms a prey,
The safe retreat of every lurking mouse,
Derided, shunn’d, the lumber of my house!
Thy robe, how changed from what it was before!
Thy velvet robe, which pleased my sires of yore!
’Tis thus capricious fortune wheels us round;
Aloft we mount—then tumble to the ground.
Yet grateful then, my constancy I proved;
I knew thy worth; my friend in rags I loved;
I loved thee more; nor, like a courtier, spurn’d
My benefactor when the tide was turn’d.
With conscious shame, yet frankly I confess,
That in my youthful days—I loved thee less.
Where vanity, where pleasure call’d, I stray’d;
And every wayward appetite obey’d.
But sage experience taught me how to prize
Myself; and how, this world: she bade me rise
To nobler flights, regardless of a race
g , g
Of factious emmets; pointed where to place
My bliss, and lodged me in thy soft embrace.
Here, on thy yielding down, I sit secure;
And, patiently, what Heaven has sent, endure;
From all the futile cares of business free;
Not fond of life, but yet content to be:
Here mark the fleeting hours; regret the past;
And seriously prepare to meet the last.
So safe on shore, the pension’d sailor lies,
And all the malice of the storm defies;
With ease of body bless’d, and peace of mind,
Pities the restless crew he left behind;
Whilst, in his cell, he meditates alone,
On his great voyage, to the world unknown.

To those who have derived entertainment or instruction from Mr.


Somervile’s works, the information will be received with pain, that the latter
part of his life did not pass without those embarrassments which attend a
deranged state of pecuniary circumstances. Shenstone, who in this particular
much resembled him, thus notices his lamentable catastrophe. “Our old
friend Somervile is dead! I did not imagine I could have been so sorry as I
find myself on this occasion. Sublatum quærimus. I can now excuse all his
foibles; impute them to age, and to distress of circumstances: the last of
these considerations wrings my very soul to think on. For a man of high
spirit, conscious of having (at least in one production,) generally pleased the
world, to be plagued and threatened by wretches that are low in every sense;
to be forced to drink himself into pains of the body, in order to get rid of the
pains of the mind, is a misery which I can well conceive; because I may,
without vanity, esteem myself his equal in point of economy, and,
consequently, ought to have an eye to his misfortunes.” Dr. Johnson says,
“his distresses need not to be much pitied; his estate is said to have been
fifteen hundred a year, which by his death devolved to Lord Somervile of
Scotland. His mother, indeed, who lived till ninety, had a jointure of six
hundred.” This remark is made with less consideration than might have been
expected, from so close an observer of mankind. Such an estate, incumbered
in such a manner, and perhaps otherwise, frequently leaves the proprietor in
a very uneasy situation, with but a scanty pittance; and it is evident, that our
author was by no means an economist. Shenstone says, “for whatever the
world might esteem in poor Somervile, I really find, upon critical inquiry,
that I loved him for nothing so much as his flocci-nauci-nihili-pili-fication of
money.” Lady Luxborough declares him to have been a gentleman who
deserved the esteem of every good man, and one who was regretted
accordingly.
He died July 19, 1742, and was buried at Wotton, near Henley on Arden.
He had been married to Mary, daughter of Hugh Bethel, of Yorkshire, who
died before him, without leaving any issue. By his will, proved the third of
September, 1742, he remembered New College, the place of his education,
by leaving to the master and fellows, fifteen volumes of Montfaucon’s
Antiquities, and Addison’s works, for their library; and, apparently to
encourage provincial literature, he bequeathed twenty pounds to purchase
books for the parish library of the place of his residence.
PREFACE

BY

THE AUTHOR.

T he old and infirm have at least this privilege, that they can recall to their
minds those scenes of joy in which they once delighted, and ruminate
over their past pleasures, with a satisfaction almost equal to the first
enjoyment; for those ideas, to which any agreeable sensation is annexed, are
easily excited, as leaving behind them the most strong and permanent
impressions. The amusements of our youth are the boast and comfort of our
declining years. The ancients carried this notion even yet further, and
supposed their heroes, in the Elysian fields, were fond of the very same
diversions they exercised on earth: death itself could not wean them from the
accustomed sports and gaities of life.

Pars in gramineis exercent membra palæstris,


Contendunt ludo, et fulvâ luctantur arenâ:
Pars pedibus plaudunt choreas, et carmina dicunt.——
Arma procul, currusque virûm miratur inanes.
Stant terrâ defixæ hastæ, passimque soluti
Per campos pascuntur equi. Quæ gratia currûm
Armorumque fuit vivis, quæ cura nitentes
Pascere equos, eadem sequitur tellure repôstos.
VIRG. ÆN. VI.
Part, on the grassy cirque, their pliant limbs
In wrestling exercise, or on the sands,
Struggling, dispute the prize: part lead the ring,
Or swell the chorus with alternate lays.
The chief their arms admires, their empty cars,
Their lances fix’d in earth. The unharness’d steeds
Graze unrestrain’d; horses, and cars, and arms,
All the same fond desires, and pleasing cares,
Still haunt their shades, and after death survive.

I hope, therefore, I may be indulged, even by the more grave and censorious
part of mankind, if, at my leisure hours, I run over, in my elbow-chair, some
of those chases, which were once the delight of a more vigorous age. It is an
entertaining, and, as I conceive, a very innocent amusement. The result of
these rambling imaginations will be found in the following poem; which if
equally diverting to my readers, as to myself, I shall have gained my end. I
have intermixed the preceptive parts with so many descriptions, and
digressions, in the Georgick manner, that I hope they will not be tedious. I
am sure they are very necessary to be well understood by any gentleman,
who would enjoy this noble sport in full perfection. In this, at least, I may
comfort myself, that I cannot trespass upon their patience more than
Markham, Blome, and the other prose writers upon this subject.
It is most certain, that hunting was the exercise of the greatest heroes of
antiquity. By this they formed themselves for war; and their exploits against
wild beasts were a prelude to their future victories. Xenophon says, that
almost all the ancient heroes, Nestor, Theseus, Castor, Pollux, Ulysses,
Diomedes, Achilles, &c. were MαΘηζαὶ Kυνηγεδιῶν, disciples of hunting;
being taught carefully that art, as what would be highly serviceable to them
in military discipline. Xen. Cynegetic. And Pliny observes, those who were
designed for great captains, were first taught, “certare cum fugacibus feris
cursu, cum audacibus robore, cum callidus astu:”—to contest with the
swiftest wild beasts in speed; with the boldest in strength; with the most
cunning, in craft and subtilty. Plin. Panegyr. And the Roman emperors, in
those monuments they erected to transmit their actions to future ages, made
no scruple to join the glories of the chase to their most celebrated triumphs.
Neither were their poets wanting to do justice to this heroick exercise.
Beside that of Oppian in Greek, we have several poems in Latin upon
hunting. Gratius was contemporary with Ovid; as appears by this verse,

Aptaque venanti Gratius arma dabit.


LIB. IV. PONT.

Gratius shall arm the huntsman for the chase.

But of his works only some fragments remain. There are many others of
more modern date. Among these Nemesianus, who seems very much
superiour to Gratius, though of a more degenerate age. But only a fragment
of his first book is preserved. We might indeed have expected to have seen it
treated more at large by Virgil in his third Georgick, since it is expressly part
of his subject. But he has favoured us only with ten verses; and what he says
of dogs, relates wholly to greyhounds and mastiffs:

Veloces Spartæ catulos, acremque Molossum.


GEOR. III.

The greyhound swift, and mastiff’s furious breed.

And he directs us to feed them with butter-milk.—“Pasce sero pingui.” He


has, it is true, touched upon the chase in the fourth and seventh books of the
Æneid. But it is evident, that the art of hunting is very different now, from
what it was in his days, and very much altered and improved in these latter
ages. It does not appear to me, that the ancients had any notion of pursuing
wild beasts, by the scent only, with a regular and well-disciplined pack of
hounds; and therefore they must have passed for poachers amongst our
modern sportsmen. The muster-roll given us by Ovid, in his story of
Actæon, is of all sorts of dogs, and of all countries. And the description of
the ancient hunting, as we find it in the antiquities of Pere de Montfaucon,
taken from the sepulchre of the Nasos, and the arch of Constantine, has not
the least trace of the manner now in use.
Whenever the ancients mention dogs following by the scent, they mean
no more than finding out the game by the nose of one single dog. This was
as much as they knew of the “odora canum vis.” Thus Nemesianus says,
Odorato noscunt vestigia prato,
Atque etiam leporum secreta cubilia monstrant.

They challenge on the mead the recent stains,


And trail the hare unto her secret form.

Oppian has a long description of these dogs in his first book, from ver. 479
to 526. And here, though he seems to describe the hunting of the hare by the
scent, through many turnings and windings, yet he really says no more than
that one of those hounds, which he calls ἰχνευτῆρες finds out the game. For
he follows the scent no further than the hare’s form; from whence, after he
has started her, he pursues her by sight. I am indebted for these two last
remarks to a reverend and very learned gentleman, whose judgment in the
belles-lettres nobody disputes, and whose approbation gave me the assurance
to publish this poem.
Oppian also observes, that the best sort of these finders were brought
from Britain; this island having always been famous, as it is at this day, for
the best breed of hounds, for persons the best skilled in the art of hunting,
and for horses the most enduring to follow the chase. It is, therefore, strange
that none of our poets have yet thought it worth their while to treat of this
subject; which is, without doubt, very noble in itself, and very well adapted
to receive the most beautiful turns of poetry. Perhaps our poets have no great
genius for hunting. Yet, I hope, my brethren of the couples, by encouraging
this first, but imperfect essay, will shew the world they have at least some
taste for poetry.
The ancients esteemed hunting, not only as a manly and warlike exercise,
but as highly conducive to health. The famous Galen recommends it above
all others, as not only exercising the body, but giving delight and
entertainment to the mind. And he calls the inventors of this art wise men,
and well-skilled in human nature. Lib. de parvæ pilæ exercitio.
The gentlemen, who are fond of a jingle at the close of every verse, and
think no poem truly musical but what is in rhyme, will here find themselves
disappointed. If they will be pleased to read over the short preface before the
Paradise Lost, Mr. Smith’s Poem in memory of his friend Mr. John Philips,
and the Archbishop of Cambray’s Letter to Monsieur Fontenelle, they may,
probably, be of another opinion. For my own part, I shall not be ashamed to
follow the example of Milton, Philips, Thomson, and all our best tragic
writers.
Some few terms of art are dispersed here and there; but such only as are
absolutely requisite to explain my subject. I hope, in this, the criticks will
excuse me; for I am humbly of opinion, that the affectation, and not the
necessary use, is the proper object of their censure.
But I have done. I know the impatience of my brethren, when a fine day,
and the concert of the kennel, invite them abroad. I shall therefore leave my
reader to such diversion, as he may find in the poem itself.

En age, segnes
Rumpe moras; vocat ingenti clamore Cithæron,
Taygetique canes, domitrixque Epidaurus equorum;
Et vox assensu nemorum ingeminata remugit.
VIRG. GEORG. III.

Hark away!
Cast far behind the lingering cares of life:
Cithæron calls aloud, and, in full cry,
Thy hounds, Taygetus. Epidaurus trains
For us the generous steed; the hunter’s shouts,
And cheering cries, assenting woods return.
BOOK I
Argument.
The subject proposed. Address to his Royal Highness the Prince. The origin
of hunting. The rude and unpolished manner of the first hunters. Beasts at
first hunted for food and sacrifice. The grant made by God to man of the
beasts, &c. The regular manner of hunting first brought into this island by
the Normans. The best hounds and best horses bred here. The advantage of
this exercise to us, as islanders. Address to gentlemen of estates. Situation
of the kennel, and its several courts. The diversion and employment of
hounds in the kennel. The different sorts of hounds for each different chase.
Description of a perfect hound. Of sizing and sorting of hounds; the
middle-sized hound recommended. Of the large deep-mouthed hound for
hunting the stag and otter. Of the lime hound; their use on the borders of
England and Scotland. A physical account of scents. Of good and bad
scenting days. A short admonition to my brethren of the couples.

You might also like