forGoParallel

package module
v0.0.0-...-64a59f3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 12, 2025 License: BSD-3-Clause Imports: 0 Imported by: 0

README

Intel® Generic Parallel Programming Library for Go*

This package provides functions and data structures for expressing parallel algorithms in Go. It is a fork of the "pargo" library originally developed at Imec, available at https://github.com/ExaScience/pargo. This version simplifies parts of the API, and makes a large part of the functions and types generic through type parameters. It therefore only works with Go version 1.18 or later. The API is therefore also not compatible with pargo's API.

Documentation: https://pkg.go.dev/github.com/intel/forGoParallel

Documentation

Overview

This package provides functions and data structures for expressing parallel algorithms.

It provides the following subpackages:

forGoParallel/parallel provides simple functions for executing series of thunks or predicates, as well as thunks, predicates, or reducers over ranges in parallel.

forGoParallel/speculative provides speculative implementations of most of the functions from forGoParallel/parallel. These implementations not only execute in parallel, but also attempt to terminate early as soon as the final result is known.

forGoParallel/psort provides parallel sorting algorithms.

forGoParallel/gsync provides synchronization abstractions.

forGoParallel/pipeline provides functions and data structures to construct and execute parallel pipelines.

Directories

Path Synopsis
Package parallel provides functions for expressing parallel algorithms.
Package parallel provides functions for expressing parallel algorithms.
Package pipeline provides means to construct and execute parallel pipelines.
Package pipeline provides means to construct and execute parallel pipelines.
Package psort provides implementations of parallel sorting algorithms.
Package psort provides implementations of parallel sorting algorithms.
Package speculative provides functions for expressing parallel algorithms, similar to the functions in package parallel, except that the implementations here terminate early when they can.
Package speculative provides functions for expressing parallel algorithms, similar to the functions in package parallel, except that the implementations here terminate early when they can.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL