GranSim User's Guide
A Quick Introduction to GranSim
Overview
Components of the GranSim System
Semi-explicit Parallelism
GranSim Modes
A Simple Example Program
Running the Example Program
Setting-up GranSim
Retrieving
Installing
Trouble Shooting
Parallelism Annotations
Basic Annotations
Advanced Annotations
Experimental Annotations
Runtime-System Options
Basic Options
Special Features
Asynchronous Communication
Bulk Fetching
Migration
Communication Parameters
Runtime-System Parameters
Processor Characteristics
Granularity Control Mechanisms
Miscellaneous Options
Debugging Options
General GHC RTS Options
Specific Setups
The Ideal GranSim Setup
GranSim Setup for Shared-Memory Machines
GranSim Setup for Strongly Connected Distributed Memory Machines
GranSim Setup for Distributed Memory Machines
Parallel Functional Programming in the Large: Strategies
Motivation for Strategies
The Main Idea
Example Program: Quicksort
Parallel Quicksort using Forcing Functions
Parallel Quicksort using Strategies
Example Program: Sum of Squares
Using a Class of Strategies
Type Definition of Strategies
Primitive Strategies
Basic Strategies
Strategy Combinators
Experiences with Strategies
Visualisation Tools
Activity Profiles
Overall Activity Profile
Per-processor Activity Profile
Per-Thread Activity Profile
Granularity Profiles
Bucket Graphs
Cumulative Graphs
Template Files
Statistics Packages
Scripts
GranSim Profiles
Types of GranSim Profiles
Contents of a GranSim Profile
Header
Body
General Structure of an Event
END Events
Basic Thread Events
Communication Events
Thread Migration Events
Spark Events
Debugging Events
The Emacs GranSim Profile Mode
Installation
Customisation
Features
The Parallel NoFib Suite
Internals
Global Structure
Accuracy
Flexibility
Visualisation
Efficiency
Integration into GHC
GranSim vs GUM
Future Extensions
Bug Reports
Example Program: Determinant Computation
Runtime-System Options Index
Concept Index
This document was generated on 25 July 1996 using the
texi2html
translator version 1.50.