The petalisp Reference Manual

This is the petalisp Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 17:32:44 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 petalisp

Elegant High Performance Computing

Author

Marco Heisig <>

License

AGPLv3

Dependencies
Source

petalisp.asd.


2.2 petalisp.api

A Convenient API for Petalisp.

Author

Marco Heisig <>

License

AGPLv3

Dependencies
Source

petalisp.api.asd.

Child Components

2.3 petalisp.utilities

Author

Marco Heisig <>

License

AGPLv3

Dependencies
  • alexandria (system).
  • bordeaux-threads (system).
  • queues.priority-queue (system).
  • trivia (system).
  • trivial-garbage (system).
Source

petalisp.utilities.asd.

Child Components

2.4 petalisp.core

Author

Marco Heisig <>

License

AGPLv3

Dependencies
  • alexandria (system).
  • bordeaux-threads (system).
  • lparallel (system).
  • trivia (system).
  • petalisp.utilities (system).
  • typo (system).
Source

petalisp.core.asd.

Child Components

2.5 petalisp.ir

Author

Marco Heisig <>

License

AGPLv3

Dependencies
Source

petalisp.ir.asd.

Child Components

2.6 petalisp.codegen

Author

Marco Heisig <>

License

AGPLv3

Dependencies
Source

petalisp.codegen.asd.

Child Components

2.7 petalisp.native-backend

Author

Marco Heisig <>

License

AGPLv3

Dependencies
Source

petalisp.native-backend.asd.

Child Components

2.8 petalisp.test-suite

A comprehensive test suite for Petalisp.

Author

Marco Heisig <>

License

AGPLv3

Dependencies
Source

petalisp.test-suite.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 petalisp/petalisp.asd

Source

petalisp.asd.

Parent Component

petalisp (system).

ASDF Systems

petalisp.


3.1.2 petalisp.api/petalisp.api.asd

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

ASDF Systems

petalisp.api.


3.1.3 petalisp.utilities/petalisp.utilities.asd

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

ASDF Systems

petalisp.utilities.


3.1.4 petalisp.core/petalisp.core.asd

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

ASDF Systems

petalisp.core.


3.1.5 petalisp.ir/petalisp.ir.asd

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

ASDF Systems

petalisp.ir.


3.1.6 petalisp.codegen/petalisp.codegen.asd

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

ASDF Systems

petalisp.codegen.


3.1.7 petalisp.native-backend/petalisp.native-backend.asd

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

ASDF Systems

petalisp.native-backend.


3.1.8 petalisp.test-suite/petalisp.test-suite.asd

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

ASDF Systems

petalisp.test-suite.


3.1.9 petalisp.api/differentiator.lisp

Dependencies
Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface
Internals

3.1.10 petalisp.api/lazy-broadcast.lisp

Dependency

lazy-reshape.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface
Internals

3.1.11 petalisp.api/lazy-change-shape.lisp

Dependency

shape-syntax.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Internals

3.1.12 petalisp.api/lazy-drop-axes.lisp

Dependency

lazy-reshape.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-drop-axes (function).


3.1.13 petalisp.api/lazy-harmonize.lisp

Dependencies
Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

3.1.14 petalisp.api/lazy-index-components.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-index-components (function).


3.1.15 petalisp.api/lazy.lisp

Dependency

lazy-broadcast.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy (function).


3.1.16 petalisp.api/lazy-multiple-value.lisp

Dependency

lazy-broadcast.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-multiple-value (function).


3.1.17 petalisp.api/lazy-multireduce.lisp

Dependency

lazy-reduce.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-multireduce (function).


3.1.18 petalisp.api/lazy-overwrite.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-overwrite (function).


3.1.19 petalisp.api/lazy-reduce.lisp

Dependencies
Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-reduce (function).

Internals

lazy-reduce-aux (function).


3.1.20 petalisp.api/lazy-reshape.lisp

Dependencies
Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-reshape (function).

Internals

3.1.21 petalisp.api/lazy-slice.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-slice (function).


3.1.22 petalisp.api/lazy-slices.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-slices (function).


3.1.23 petalisp.api/lazy-sort.lisp

Dependencies
Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-sort (function).


3.1.24 petalisp.api/lazy-stack.lisp

Dependencies
Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

lazy-stack (function).


3.1.25 petalisp.api/network.lisp

Dependencies
Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface
Internals

network-evaluator (reader method).


3.1.26 petalisp.api/packages.lisp

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Packages
Public Interface

*backend* (special variable).


3.1.27 petalisp.api/reshapers.lisp

Dependency

lazy-reshape.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

3.1.28 petalisp.api/shape-syntax.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface
Internals

3.1.29 petalisp.api/transform.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface
Internals

3.1.30 petalisp.api/with-lazy-arrays.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

with-lazy-arrays (macro).


3.1.31 petalisp.api/with-backend.lisp

Dependency

packages.lisp (file).

Source

petalisp.api.asd.

Parent Component

petalisp.api (system).

Public Interface

with-backend (macro).


3.1.33 petalisp.utilities/packages.lisp

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Packages

petalisp.utilities.


3.1.34 petalisp.utilities/documentation.lisp

Dependency

packages.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface
Internals

3.1.35 petalisp.utilities/cqueue.lisp

Dependency

documentation.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Packages

petalisp.cqueue.

Public Interface
Internals

3.1.36 petalisp.utilities/extended-euclid.lisp

Dependency

cqueue.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface

extended-euclid (function).

Internals

3.1.37 petalisp.utilities/powers-of-two.lisp

Dependency

extended-euclid.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface
Internals

clp2-fixnum (type).


3.1.38 petalisp.utilities/prime-factors.lisp

Dependency

powers-of-two.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface
Internals

3.1.39 petalisp.utilities/with-collectors.lisp

Dependency

prime-factors.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface

with-collectors (macro).

Internals

with-collector (macro).


3.1.40 petalisp.utilities/number-of-cpus.lisp

Dependency

with-collectors.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface

number-of-cpus (function).


3.1.41 petalisp.utilities/graph-coloring.lisp

Dependency

number-of-cpus.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface
Internals

3.1.42 petalisp.utilities/karmarkar-karp.lisp

Dependency

graph-coloring.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Packages

petalisp.karmarkar-karp.

Public Interface

karmarkar-karp (function).

Internals

3.1.43 petalisp.utilities/scheduling.lisp

Dependency

karmarkar-karp.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Packages

petalisp.scheduling.

Public Interface
Internals

3.1.44 petalisp.utilities/with-pinned-objects.lisp

Dependency

scheduling.lisp (file).

Source

petalisp.utilities.asd.

Parent Component

petalisp.utilities (system).

Public Interface
Internals

3.1.45 petalisp.core/packages.lisp

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Packages

petalisp.core.


3.1.46 petalisp.core/range.lisp

Dependency

packages.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

3.1.47 petalisp.core/shape.lisp

Dependency

range.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

3.1.48 petalisp.core/transformation.lisp

Dependency

shape.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

3.1.49 petalisp.core/transformation-constructors.lisp

Dependency

transformation.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

3.1.50 petalisp.core/lazy-array.lisp

Dependency

transformation-constructors.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

3.1.51 petalisp.core/lazy-ref.lisp

Dependency

lazy-array.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

add-transformation-constraints (function).


3.1.52 petalisp.core/lazy-fuse.lisp

Dependency

lazy-ref.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface

lazy-fuse (function).


3.1.53 petalisp.core/lazy-map.lisp

Dependency

lazy-fuse.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface

3.1.54 petalisp.core/substitute-lazy-arrays.lisp

Dependency

lazy-map.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

*substitutions* (special variable).


3.1.55 petalisp.core/backend.lisp

Dependency

substitute-lazy-arrays.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

3.1.56 petalisp.core/reference-backend.lisp

Dependency

backend.lisp (file).

Source

petalisp.core.asd.

Parent Component

petalisp.core (system).

Public Interface
Internals

3.1.57 petalisp.ir/packages.lisp

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

Packages

petalisp.ir.


3.1.58 petalisp.ir/device.lisp

Dependency

packages.lisp (file).

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

Public Interface
Internals

3.1.59 petalisp.ir/ir.lisp

Dependency

device.lisp (file).

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

Public Interface
Internals

3.1.60 petalisp.ir/ir-checker.lisp

Dependency

ir.lisp (file).

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

Public Interface

check-ir (function).

Internals

3.1.61 petalisp.ir/ir-conversion.lisp

Dependency

ir-checker.lisp (file).

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

Public Interface
Internals

3.1.62 petalisp.ir/partitioning.lisp

Dependency

ir-conversion.lisp (file).

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

Public Interface
Internals

3.1.63 petalisp.ir/coloring.lisp

Dependency

partitioning.lisp (file).

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).

Public Interface

compute-program-buffer-coloring (function).


3.1.64 petalisp.ir/documentation.lisp

Dependency

coloring.lisp (file).

Source

petalisp.ir.asd.

Parent Component

petalisp.ir (system).


3.1.65 petalisp.codegen/packages.lisp

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Packages

petalisp.codegen.


3.1.66 petalisp.codegen/indexing.lisp

Dependency

packages.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Public Interface
Internals

*index-ntype* (special variable).


3.1.67 petalisp.codegen/load-foreign-code.lisp

Dependency

indexing.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Public Interface

load-foreign-code (function).


3.1.68 petalisp.codegen/generic-functions.lisp

Dependency

load-foreign-code.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Public Interface

3.1.69 petalisp.codegen/blueprint.lisp

Dependency

generic-functions.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Public Interface
Internals

3.1.70 petalisp.codegen/bpinfo.lisp

Dependency

blueprint.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Internals

3.1.71 petalisp.codegen/compile-cache.lisp

Dependency

bpinfo.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Internals

3.1.72 petalisp.codegen/lisp-compiler.lisp

Dependency

compile-cache.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Public Interface
Internals

3.1.73 petalisp.codegen/lisp-interpreter.lisp

Dependency

lisp-compiler.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Internals

interpret-kernel (function).


3.1.74 petalisp.codegen/cpp-from-lisp.lisp

Dependency

lisp-interpreter.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Internals

3.1.75 petalisp.codegen/cpp-compiler.lisp

Dependency

cpp-from-lisp.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Internals

3.1.76 petalisp.codegen/mixins.lisp

Dependency

cpp-compiler.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Public Interface
Internals

compile-cache (reader method).


3.1.77 petalisp.codegen/ir-backend.lisp

Dependency

mixins.lisp (file).

Source

petalisp.codegen.asd.

Parent Component

petalisp.codegen (system).

Public Interface
Internals

3.1.78 petalisp.native-backend/packages.lisp

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Packages

petalisp.native-backend.


3.1.79 petalisp.native-backend/request.lisp

Dependency

packages.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Public Interface
Internals

3.1.80 petalisp.native-backend/pin-current-thread.lisp

Dependency

request.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Internals

3.1.81 petalisp.native-backend/worker-pool.lisp

Dependency

pin-current-thread.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Public Interface

print-object (method).

Internals

3.1.82 petalisp.native-backend/backend.lisp

Dependency

worker-pool.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Public Interface
Internals

3.1.83 petalisp.native-backend/scheduling.lisp

Dependency

backend.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Internals

3.1.84 petalisp.native-backend/allocation.lisp

Dependency

scheduling.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Internals

3.1.85 petalisp.native-backend/evaluator.lisp

Dependency

allocation.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Public Interface

backend-evaluator (method).

Internals

3.1.86 petalisp.native-backend/compilation.lisp

Dependency

evaluator.lisp (file).

Source

petalisp.native-backend.asd.

Parent Component

petalisp.native-backend (system).

Public Interface
Internals

3.1.87 petalisp.test-suite/packages.lisp

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Packages

petalisp.test-suite.


3.1.88 petalisp.test-suite/test-suite.lisp

Dependency

packages.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Public Interface
Internals

3.1.89 petalisp.test-suite/testing-backend.lisp

Dependency

test-suite.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Public Interface
Internals

3.1.90 petalisp.test-suite/code-statistics.lisp

Dependency

testing-backend.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Internals

3.1.91 petalisp.test-suite/defgenerator.lisp

Dependency

code-statistics.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Internals

3.1.92 petalisp.test-suite/generators.lisp

Dependency

defgenerator.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Internals

3.1.93 petalisp.test-suite/run-petalisp-test-suite.lisp

Dependency

generators.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Public Interface

3.1.94 petalisp.test-suite/petalisp.core.lisp

Dependency

run-petalisp-test-suite.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Internals

3.1.95 petalisp.test-suite/petalisp.api.lisp

Dependency

petalisp.core.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Internals

lazy-sort-test (function).


3.1.96 petalisp.test-suite/petalisp.examples.lisp

Dependency

petalisp.api.lisp (file).

Source

petalisp.test-suite.asd.

Parent Component

petalisp.test-suite (system).

Internals

4 Packages

Packages are listed by definition order.


4.1 petalisp.api

Source

packages.lisp.

Nickname

petalisp

Use List
Used By List
  • petalisp-user.
  • petalisp.examples.image-processing.
  • petalisp.examples.iterative-methods.
  • petalisp.examples.linear-algebra.
  • petalisp.examples.machine-learning.
  • petalisp.examples.mnist.
  • petalisp.examples.multigrid.
  • petalisp.examples.wave-equation.
  • petalisp.test-suite.
Public Interface
Internals

4.2 petalisp.test-suite

Source

packages.lisp.

Use List
Public Interface
Internals

4.3 petalisp.codegen

Source

packages.lisp.

Use List
Used By List

petalisp.native-backend.

Public Interface
Internals

4.4 petalisp.utilities

Source

packages.lisp.

Use List

common-lisp.

Used By List

petalisp.karmarkar-karp.

Public Interface
Internals

4.5 petalisp-user

Source

packages.lisp.

Use List

4.6 petalisp.scheduling

Source

scheduling.lisp.

Use List

common-lisp.

Public Interface
Internals

4.7 petalisp.cqueue

Source

cqueue.lisp.

Use List

common-lisp.

Public Interface
Internals

4.8 petalisp.core

Source

packages.lisp.

Use List

common-lisp.

Used By List
Public Interface
Internals

4.9 petalisp.ir

Source

packages.lisp.

Use List
Used By List
Public Interface
Internals

4.10 petalisp.karmarkar-karp

Source

karmarkar-karp.lisp.

Use List
Internals

4.11 petalisp.native-backend

Source

packages.lisp.

Use List
Public Interface

make-native-backend (function).

Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Constants

Constant: ~

The symbols ~, ~* are self-evaluating. Their only purpose is to separate range designators in the functions named ~, ~*.

Package

petalisp.api.

Source

shape-syntax.lisp.

Constant: ~*

The symbols ~, ~* are self-evaluating. Their only purpose is to separate range designators in the functions named ~, ~*.

Package

petalisp.api.

Source

shape-syntax.lisp.


5.1.2 Special variables

Special Variable: *backend*
Package

petalisp.core.

Source

packages.lisp.

Special Variable: *lazy-array-lock*
Package

petalisp.core.

Source

lazy-array.lisp.

Special Variable: *stencil-max-radius*
Package

petalisp.ir.

Source

ir.lisp.


5.1.3 Macros

Macro: define-test (name &body body)

Define a test function and add it to *TESTS*.

Package

petalisp.test-suite.

Source

test-suite.lisp.

Macro: do-buffer-inputs ((kernel buffer &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-buffer-load-instructions ((load-instruction buffer &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-buffer-outputs ((kernel buffer &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-buffer-store-instructions ((store-instruction buffer &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-instruction-inputs ((input instruction &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-kernel-inputs ((buffer kernel &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-kernel-instructions ((instruction kernel &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-kernel-load-instructions ((load-instruction kernel &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-kernel-outputs ((buffer kernel &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-kernel-store-instructions ((store-instruction kernel &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-program-buffer-groups ((buffers program &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-program-buffers ((buffer program &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-program-kernels ((kernel program &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-program-tasks ((task program &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-stencil-instructions ((load-or-store-instruction stencil &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-task-defined-buffers ((defined-buffer task &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-task-kernels ((kernel task &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-task-predecessors ((predecessor task &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: do-task-successors ((successor task &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: document-compiler-macro (name &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-compiler-macros (names &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-function (name &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-functions (names &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-method-combination (name &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-method-combinations (names &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-setf-expander (name &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-setf-expanders (names &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-structure (name &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-structures (names &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-variable (name &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-variables (names &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: is (test-form)

Assert that TEST-FORM evaluates to true.

Package

petalisp.test-suite.

Source

test-suite.lisp.

Macro: signals (condition &body body)

Assert that ‘body’ signals a condition of type ‘condition’.

Package

petalisp.test-suite.

Source

test-suite.lisp.

Macro: transform (&rest inputs-to-outputs)

Returns a transformation that maps the supplied inputs to the supplied outputs.

The supplied forms describe the inputs and outputs of the transformation. Inputs and outputs are separated by the symbol PETALISP:TO.

Each input can either be a symbol, an integer, or a list whose first element is a symbol and whose second element is a form that evaluates either to an integer or to NIL. The symbol is the name under which the value of that input can be referenced in one of the outputs. Any integer value is interpreted as an input constraint of the transformation in that axis.

Each output is a form that may reference up to one of the input variables. The output form is evaluated repeatedly in a context where the referenced input variable is bound to an integer to determine the coefficients for the linear mapping from the referenced input to the output.

Signals an error if any output form references more than one input, returns anything other than an integer, or describes a mapping that is not linear.

Examples:

(transform i to (+ i 1))
=> (transform a to (1+ a))

(transform i to (+ (+ i 1) 5))
=> (transform a to (+ a 6))

(transform 1 2 3 to)
=> (transform 1 2 3 to)

(transform to 1 2 3)
=> (transform to 1 2 3)

(transform i j to j i)
=> (transform a b to b a)

Package

petalisp.api.

Source

transform.lisp.

Macro: with-backend (backend &body body)
Package

petalisp.api.

Source

with-backend.lisp.

Macro: with-collectors (collectors &body body)

Within the lexical scope of BODY, bind the specified collectors. Each entry in COLLECTORS must be a list of two valid function names - RESULT and GATHER. Each such pair of function names is bound to local functions, with the following behavior:

The function named GATHER takes a single argument, stores this argument in some unspecified way, and returns this argument.

The function named RESULT takes either zero or one object. It returns the list of all objects that have been stored by calls to the function named GATHER. If supplied, the optional argument is used as the tail of the list being returned. Calling the function named RESULT more than once results in undefined behavior.

Examples:

(with-collectors ((odds collect-odd)
(evens collect-even))
(loop for n below 8 do
(if (oddp n)
(collect-odd n)
(collect-even n)))
(values (odds) (evens)))

=> (1 3 5 7)
=> (0 2 4 6)

(with-collectors ((numbers collect-number))
(collect-number 2)
(collect-number 3)
(numbers ’(4 5 6))) ; Here, we explicitly supply a tail.

=> (2 3 4 5 6)

Package

petalisp.utilities.

Source

with-collectors.lisp.

Macro: with-debug-optimization (&body body)

Execute BODY safely and with highest debug settings.

Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Macro: with-lazy-arrays ((&rest names) &body body)

Execute the body in an environment where each of the supplied symbols is shadowed by the lazy array equivalent of the previous value of that symbol.

An alternative notation can be used to avoid shadowing the original array: If any array name is not a symbol but a list of a symbol and a form, the symbol is bound to the lazy array equivalent of what’s produced by that form.

It is good practice to start each function that expects some of its arguments to be lazy arrays to start with a suitable use of this macro.

Example:

(let ((a 5) (b #(1 2 3)))
(with-lazy-arrays (a (c b))
(values a b c)))
=> #<lazy-array (eql 5) (~*)>
=> #(1 2 3)
=> #<lazy-array t (~ 3)>

Package

petalisp.api.

Source

with-lazy-arrays.lisp.

Macro: with-pinned-objects ((&rest objects) &body body)
Package

petalisp.utilities.

Source

with-pinned-objects.lisp.

Macro: with-pinned-objects* (objects &body body)

Invoke BODY in an environment where all elements of the supplied sequence of objects are pinned to their current memory location.

Package

petalisp.utilities.

Source

with-pinned-objects.lisp.

Macro: with-temporary-backend (backend-creation-form &body body)
Package

petalisp.core.

Source

backend.lisp.

Macro: with-unsafe-optimization (&body body)

Optimize the heck out of BODY. Use with caution!

To preserve sanity, compiler efficiency hints are disabled by default. Use WITH-UNSAFE-OPTIMIZATIONS* to see these hints.

Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Macro: with-unsafe-optimization* (&body body)

Optimize the heck out of BODY. Use with caution!

Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Macro: without-compiler-notes (&body body)

Suppress all compiler notes arising during the compilation of BODY.

Package

petalisp.codegen.

Source

lisp-compiler.lisp.


5.1.4 Compiler macros

Compiler Macro: compose-transformations (&rest transformations)
Package

petalisp.core.

Source

transformation.lisp.

Compiler Macro: index* (&rest forms)
Package

petalisp.codegen.

Source

indexing.lisp.

Compiler Macro: index+ (&rest forms)
Package

petalisp.codegen.

Source

indexing.lisp.

Compiler Macro: range (&rest args)
Package

petalisp.core.

Source

range.lisp.


5.1.5 Ordinary functions

Function: all-tests ()
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: array-has-shape-p (array shape)
Package

petalisp.core.

Source

shape.lisp.

Function: array-shape (array)

Returns the shape of the supplied array.

Package

petalisp.core.

Source

shape.lisp.

Function: array-value (array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: buffer-bits (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Reader: buffer-depth (instance)
Writer: (setf buffer-depth) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

depth.

Reader: buffer-ntype (instance)
Writer: (setf buffer-ntype) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

ntype.

Reader: buffer-number (instance)
Writer: (setf buffer-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

number.

Function: buffer-number-of-inputs (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: buffer-number-of-loads (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: buffer-number-of-outputs (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: buffer-number-of-stores (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: buffer-program (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: buffer-reuse-potential (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Reader: buffer-shape (instance)
Writer: (setf buffer-shape) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

shape.

Function: buffer-shard-bits (buffer-shard)

Returns the number of bits of storage required for allocating all elements managed by the supplied buffer shard.

Package

petalisp.ir.

Source

partitioning.lisp.

Reader: buffer-shard-buffer (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

buffer.

Reader: buffer-shard-domain (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

domain.

Function: buffer-shard-maxdepth (buffer-shard)

Returns the length of the longest chain of splits rooted in this buffer shard.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-p (object)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: buffer-shard-parent (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

parent.

Function: buffer-shard-path (buffer-shard)

Returns a list with one boolean for each ancestor of the supplied
buffer shard, that describes how to reach that buffer shard starting from its primogenitor. An entry of T means the path descends into the left child, and a value of NIL means the path descends into the right child.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-primogenitor (buffer-shard)

Returns the topmost ancestor of the supplied buffer shard.

Package

petalisp.ir.

Source

partitioning.lisp.

Reader: buffer-shard-readers (instance)
Writer: (setf buffer-shard-readers) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

readers.

Reader: buffer-shard-shape (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

shape.

Reader: buffer-shard-split (instance)
Writer: (setf buffer-shard-split) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

split.

Reader: buffer-shard-storage (instance)
Writer: (setf buffer-shard-storage) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

storage.

Reader: buffer-shard-writers (instance)
Writer: (setf buffer-shard-writers) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

writers.

Function: buffer-size (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Reader: buffer-storage (instance)
Writer: (setf buffer-storage) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

storage.

Reader: buffer-task (instance)
Writer: (setf buffer-task) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

task.

Function: bufferp (object)
Package

petalisp.ir.

Source

ir.lisp.

Reader: call-instruction-fnrecord (instance)
Writer: (setf call-instruction-fnrecord) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

fnrecord.

Function: call-instruction-function (call-instruction)
Package

petalisp.ir.

Source

ir.lisp.

Function: call-instruction-inputs (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf call-instruction-inputs) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Reader: call-instruction-number-of-values (instance)
Writer: (setf call-instruction-number-of-values) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

number-of-values.

Function: call-instruction-p (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: call-network (network &rest plist)
Package

petalisp.api.

Source

network.lisp.

Function: cgraph-add-conflict (cgraph a b)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: cgraph-coloring (cgraph)

For a supplied conflict graph, returns a vector whose elements are lists of objects with no conflicts.

Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: cgraph-ensure-cnode (cgraph object)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: check-ir (nodes)
Package

petalisp.ir.

Source

ir-checker.lisp.

Function: check-package (package &key skip)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: clear-shape-table (shape-table)
Package

petalisp.core.

Source

shape.lisp.

Function: clp2 (n)

Round the unsigned integer N up to the next larger power of two.

Package

petalisp.utilities.

Source

powers-of-two.lisp.

Function: collapsing-reshaper ()

Returns a function that can be supplied as a modifier to LAZY-RESHAPE to turn any lazy array shape into modifiers that collapse that shape, such that each range therein starts with zero and has a step size of one.

Package

petalisp.api.

Source

reshapers.lisp.

Function: collapsing-transformation (shape)
Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: compatible-with-lazy-array-p (object lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: completedp (&rest requests)

Returns whether all the requests resulting from some COMPUTE-ASYNCHRONOUSLY operations have been completed.

Package

petalisp.core.

Source

backend.lisp.

Function: compose-transformations (transformation &rest more-transformations)

Returns a single transformation that is equivalent to consecutive invocations of the supplied transformations in right-to-left order.

Examples:

(compose-transformations (transform i to (/ i 2)) (transform i to (+ i 2)) (transform i to (* i 4)))
=> (transform a to (1+ (* 2 a)))

(compose-transformations (transform i to (* 2 (1+ i)))
(transform i to (1- (/ i 2))))
=> (transform a to a)

(compose-transformations (transform i j to (+ i 5) (+ j 7))
(transform i j to (* j 2) (* i 3)))
=> (transform a b to (+ (* 2 b) 5) (+ (* 3 a) 7))

Package

petalisp.core.

Source

transformation.lisp.

Function: compute (&rest arrays)

The primary interface for evaluating lazy arrays. It takes any number of arguments that must be lazy arrays or objects that can be converted to lazy arrays with the function LAZY-ARRAY — and returns the same number of possibly specialized regular arrays with the corresponding contents. A special case is that whenever an array with rank zero would be returned, it instead returns the sole element of that array. The reason for this treatment of scalars is that Petalisp treats every object as an array, whereas in Common Lisp the rank zero array containing an object and that object are distinct entities. Of those two distinct representations, the non-array one is much more intuitive and useful in practice, so this is the one being returned.

Whenever a shape of any of the supplied arrays is not a valid shape for a regular array, that array is collapsed before being computed, i.e., each axis is shifted to begin with zero, and divided by the step size.

All the heavy lifting in Petalisp happens within this function. The exact details of how it operates aren’t important for application programmers, but it is valuable to understand the rough steps that happen internally. The individual steps it performs are:

1. Convert each supplied argument to a lazy array.

2. Collapse each lazy array whose shape isn’t equivalent to that of a regular array.

3. Determine the dependency graph whose roots are the collapsed lazy arrays, and whose leaves are lazy arrays resulting from a call to LAZY-ARRAY on a regular array or scalar.

4. Optimize the dependency graph, discard all unused parts, and plan a schedule that is fast and has reasonable memory requirements.

5. Execute the schedule on the available hardware. Make use of all processing units, accelerators, or even distributed systems where possible. Gather the results in the form of regular arrays.

6. Change the internal representation of all the originally supplied lazy arrays such that future calculations involving them directly use the computed results.

7. Return the results as multiple values, while replacing any array with rank zero with the single element contained in that array.

This function is the workhorse of Petalisp. A lot of effort went into making it not only powerful, but also extremely fast. The overhead of assembling a graph of lazy arrays and passing it to COMPUTE instead of invoking an already compiled and optimized imperative program is usually on the order of just a few microseconds.

Examples:

(compute (lazy-array #(1 2 3)))
=> #(1 2 3)

(compute #(1 2 3))
=> #(1 2 3)

(compute 5)
=> 5

(compute #0A42)
=> 42

(compute #(1 2 3) 5 #0A42)
=> #(1 2 3)
=> 5
=> 42

Package

petalisp.core.

Source

backend.lisp.

Function: compute-asynchronously (&rest arrays)

Hints that it would be worthwhile to compute the supplied arrays asynchronously. Returns a request object that can be passed to the functions WAIT and COMPLETEDP.

Package

petalisp.core.

Source

backend.lisp.

Function: compute-buffer-shard-vicinity (buffer-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: compute-list-of-arrays (arrays)

Returns a list of computed results - one for each element in the list of supplied arrays.

The computed result of an array or lazy array with rank zero is the one element contained in this array. The computed result of any other array or lazy array is an array with the same rank and dimensions. The computed result of any other object is that object itself.

Examples:

(compute-list-of-arrays (list (lazy #’+ 2 #(3 4))))
=> (#(5 6))

(compute-list-of-arrays
(list (lazy-reshape #2A((1 2) (3 4)) (transform i j to j i))))
=> (#2A((1 3) (2 4)))

(compute-list-of-arrays (list 2 #0A3 #(4)))
=> (2 3 #(4))

Package

petalisp.core.

Source

backend.lisp.

Function: compute-program-buffer-coloring (program)

Returns a partitioning of all non-leaf buffers in PROGRAM into a list of lists of buffers. Each list of buffers has the same color, meaning that they can share the same memory location without conflicts.

All root buffers conflict with each other, so each list of buffers contains at most one root buffer. By convention, if a root buffer is present in a list of buffers, it comes first.

Package

petalisp.ir.

Source

coloring.lisp.

Function: compute-stencil-center (instruction &rest more-instructions)

Returns a vector of offsets that is the weighted average of all the offsets of all the supplied load or store instructions.

Package

petalisp.ir.

Source

ir.lisp.

Function: copy-lazy-arrays (lazy-arrays)
Package

petalisp.core.

Source

substitute-lazy-arrays.lisp.

Function: cqueue-dequeue (cqueue)

Removes and returns the element at the front of CQUEUE, or return NIL if the cqueue was empty. Return a second value that is a boolean indicating whether an object was taken from the cqueue or not.

Package

petalisp.cqueue.

Source

cqueue.lisp.

Function: cqueue-enqueue (cqueue object)

Inserts OBJECT at the back of CQUEUE.

Package

petalisp.cqueue.

Source

cqueue.lisp.

Function: cqueuep (object)
Package

petalisp.cqueue.

Source

cqueue.lisp.

Function: delayed-action-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: delayed-array-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-array-storage (instance)
Writer: (setf delayed-array-storage) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

storage.

Reader: delayed-failure-condition (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

condition.

Function: delayed-failure-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-fuse-inputs (instance)
Writer: (setf delayed-fuse-inputs) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

inputs.

Function: delayed-fuse-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-map-fnrecord (instance)
Writer: (setf delayed-map-fnrecord) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

fnrecord.

Reader: delayed-map-inputs (instance)
Writer: (setf delayed-map-inputs) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

inputs.

Function: delayed-map-number-of-values (delayed-map)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: delayed-map-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: delayed-multiple-value-map-fnrecord (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: (setf delayed-multiple-value-map-fnrecord) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: delayed-multiple-value-map-inputs (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: (setf delayed-multiple-value-map-inputs) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: delayed-multiple-value-map-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-multiple-value-map-refbits (instance)
Writer: (setf delayed-multiple-value-map-refbits) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

refbits.

Reader: delayed-multiple-value-map-values-ntype (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

values-ntype.

Function: delayed-nop-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-nth-value-input (instance)
Writer: (setf delayed-nth-value-input) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

input.

Reader: delayed-nth-value-number (instance)
Writer: (setf delayed-nth-value-number) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

number.

Function: delayed-nth-value-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: delayed-range-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-reshape-input (instance)
Writer: (setf delayed-reshape-input) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

input.

Function: delayed-reshape-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-reshape-transformation (instance)
Writer: (setf delayed-reshape-transformation) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

transformation.

Function: delayed-unknown-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-wait-delayed-action (instance)
Writer: (setf delayed-wait-delayed-action) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

delayed-action.

Function: delayed-wait-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: delayed-wait-request (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

request.

Function: differentiator (outputs gradients)

Returns a function that, for each node in a network whose roots are the supplied OUTPUTS will return the gradient at that node.

GRADIENTS must be a sequence of the same length as OUTPUTS, and whose elements are either arrays with or symbols that will be used as the name of such a parameter.

Package

petalisp.api.

Source

differentiator.lisp.

Function: empty-lazy-array (shape)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: empty-lazy-arrays (n shape)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: empty-range ()

Returns a range with size zero.

Package

petalisp.core.

Source

range.lisp.

Function: empty-range-p (object)
Package

petalisp.core.

Source

range.lisp.

Function: empty-shape-p (shape)

Returns whether the supplied object is a shape with zero elements, i.e., has at least one range with size zero.

Examples:

(empty-shape-p (~ 1))
=> nil

(empty-shape-p (~ 0))
=> t

(shapep (~ 1 ~ 2 ~ 3 3))
=> t

Package

petalisp.core.

Source

shape.lisp.

Function: enlarge-shape (shape range)

For a given shape S and range R, this function returns a shape whose first range is R, and whose remaining ranges are those of S.

Examples:

(enlarge-shape (~*) (range 1 10))
=> (~ 1 10)

(enlarge-shape (~ 1 3) (range 1 4))
=> (~ 1 4 ~ 1 3)

Package

petalisp.core.

Source

shape.lisp.

Function: ensure-array-buffer-compatibility (array buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: ensure-array-shape-ntype-compatibility (array shape ntype)
Package

petalisp.ir.

Source

ir.lisp.

Function: evaluator (unknowns arrays)

For a supplied list of unknowns of length N and list of LAZY-ARRAYS of length K, returns a function with K+N arguments that returns, as multiple values, the K array values obtained by computing the supplied arrays after substituting the Ith unknown with the supplied argument in position K+I.

The first N arguments specify which storage to use for the results. A
value of NIL indicates that the corresponding result shall be a fresh
array. A value that is an array ensures that the result is written to that array.

An error is signaled if any of the arguments of an evaluator has a
different shape or element type as the corresponding result or unknown.

Package

petalisp.core.

Source

backend.lisp.

Function: extended-euclid (u v)

Given nonnegative integers u and v, returns the values u1 and u3 such that u*u1 + v*u2 = u3 = gcd(u,v).

Package

petalisp.utilities.

Source

extended-euclid.lisp.

Function: flattening-reshaper ()

Returns a function that can be supplied as a modifier to LAZY-RESHAPE to turn any lazy array shape into modifiers that flatten a lazy array of that shape. A flattened lazy array has the same contents as the original one in the same lexicographical ordering, but has rank one.

Examples:

(compute (lazy-reshape #2A((1 2) (3 4)) (flattening-reshaper)))
=> #(1 2 3 4)

(compute
(lazy-reshape #3A(((1 2 3) (4 5 6)) ((7 8 9) (10 11 12))) (flattening-reshaper)))
=> #(1 2 3 4 5 6 7 8 9 10 11 12)

(compute
(lazy-reshape #3A(((1 2 3) (4 5 6)) ((7 8 9) (10 11 12))) 2 (flattening-reshaper)))
=> #2A((1 2 3) (4 5 6) (7 8 9) (10 11 12))

Package

petalisp.api.

Source

reshapers.lisp.

Function: flp2 (n)

Round the unsigned integer N down to the next smaller power of two.

Package

petalisp.utilities.

Source

powers-of-two.lisp.

Function: fuse-ranges (&rest ranges)
Package

petalisp.core.

Source

range.lisp.

Function: fuse-shapes (shape &rest more-shapes)
Package

petalisp.core.

Source

shape.lisp.

Function: graph-add-edge (graph predecessor successor weight)

Add a new, weighted edge between the two supplied graph nodes.

Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: graph-ensure-node (graph object)

Returns the graph node corresponding to the supplied object, and as a secondary return value, whether that node was already present in the graph.

Package

petalisp.scheduling.

Source

scheduling.lisp.

Reader: graph-object-nodes (instance)
Writer: (setf graph-object-nodes) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

object-nodes.

Function: graph-parallel-depth-first-schedule (graph p)

Returns a list of vectors, where each vector describes one step of the schedule. Each vector has length P, and elements that are either NIL or one of the objects that have been scheduled. The schedule ensures that each node appears later than all its predecessors, and that all entries of one vector can be executed in parallel.

This function uses the P-DFS algorithm from Blelloch, Gibbons, and
Matias (https://doi.org/10.1145/301970.301974), with some augmentations to improve data locality.

Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: graphp (object)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: harmonized-element-type (&rest arrays)

Returns a type to which all elements of all the supplied lazy arrays can be coerced safely. If the element types of all supplied lazy arrays are number types, the resulting type is obtained by the standard rules of numeric contagion (CLHS 12.1.4.1 and CLHS 12.1.4.4). Otherwise, the resulting type is one that encompasses the union of the element types of all supplied lazy arrays.

Examples:

(harmonized-element-type 5 6.0)
=> single-float

(harmonized-element-type 5.0d0 #C(0 1))
=> (complex double-float)

(harmonized-element-type ’foo ’bar ’baz 42)
=> (not null)

Package

petalisp.api.

Source

lazy-harmonize.lisp.

Function: host-device ()
Package

petalisp.ir.

Source

device.lisp.

Function: identity-transformation (rank)

Returns an identity transformation of the specified rank.

Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: identity-transformation-p (object)

Returns whether a supplied object is an identity transformation.

Examples:

(identity-transformation-p (transform i j to j i))
=> nil

(identity-transformation-p (transform i j to i j))
=> t

Package

petalisp.core.

Source

transformation.lisp.

Function: index* (&rest indices)
Package

petalisp.codegen.

Source

indexing.lisp.

Function: index+ (&rest indices)
Package

petalisp.codegen.

Source

indexing.lisp.

Function: inflate-shape (shape n)
Package

petalisp.core.

Source

shape.lisp.

Reader: instruction-inputs (instance)
Writer: (setf instruction-inputs) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

inputs.

Reader: instruction-number (instance)
Writer: (setf instruction-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

number.

Reader: instruction-transformation (instance)
Writer: (setf instruction-transformation) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

transformation.

Function: instructionp (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: interior-buffer-p (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: ir-from-lazy-arrays (lazy-arrays &key kernel-size-threshold debug)

Returns a list of buffers that form the root of an IR data flow graph that is equivalent to the data flow graph specified by the supplied LAZY-ARRAYS.

An IR graph is consists of alternating buffers and kernels. Each kernel reads and writes from zero or more buffers and writes to zero and more buffers. The behavior or each kernel is described by a directed acyclic graph of instructions.

Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: iref-instruction-p (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: iref-instruction-transformation (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf iref-instruction-transformation) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: iterating-instruction-p (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: iteration-space-blueprint (iteration-space)
Package

petalisp.codegen.

Source

blueprint.lisp.

Function: karmarkar-karp (s k &key weight)

Partition the set of objects S in k subsets such that the sums of the weights of the objects in each subset are nearly equal.

Returns a vector of length k whose elements are lists that partition S. As a second value, returns the difference between the sum of the weights of the smalles partition and that of the largest partition.

Package

petalisp.utilities.

Source

karmarkar-karp.lisp.

Function: kernel-blueprint (kernel)

Returns a utree that represents all information necessary to generate a high-performance implementation of KERNEL. Identical blueprints are EQ, which makes them ideal for caching.

Package

petalisp.codegen.

Source

blueprint.lisp.

Function: kernel-cost (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Reader: kernel-instruction-vector (instance)
Writer: (setf kernel-instruction-vector) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

instruction-vector.

Reader: kernel-iteration-space (instance)
Writer: (setf kernel-iteration-space) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

iteration-space.

Function: kernel-load-stencils (kernel buffer)
Package

petalisp.ir.

Source

ir.lisp.

Reader: kernel-number (instance)
Writer: (setf kernel-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

number.

Function: kernel-number-of-loads (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: kernel-number-of-outputs (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: kernel-number-of-stores (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: kernel-program (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: kernel-reuse-potential (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Reader: kernel-shard-iteration-space (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

iteration-space.

Reader: kernel-shard-kernel (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

kernel.

Function: kernel-shard-more-important-p (kernel-shard-1 kernel-shard-2)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: kernel-shard-p (object)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: kernel-shard-sources (instance)
Writer: (setf kernel-shard-sources) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

sources.

Reader: kernel-shard-targets (instance)
Writer: (setf kernel-shard-targets) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

targets.

Reader: kernel-sources (instance)
Writer: (setf kernel-sources) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

sources.

Function: kernel-store-stencils (kernel buffer)
Package

petalisp.ir.

Source

ir.lisp.

Reader: kernel-targets (instance)
Writer: (setf kernel-targets) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

targets.

Reader: kernel-task (instance)
Writer: (setf kernel-task) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

task.

Function: kernelp (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: lazy (function &rest arrays)

Returns a lazy array whose contents are the results of applying the supplied function element-wise to the contents of the remaining argument arrays. If the arguments don’t agree in shape, they are first broadcast with the function LAZY-BROADCAST-LIST-OF-ARRAYS.

Examples:

(compute (lazy #’*))
=> 1

(compute (lazy #’+ 2 3))
=> 5

(compute (lazy #’+ #(1 2) #(3 4)))
=> #(4 6)

(compute (lazy #’+ 2 #(1 2 3 4 5)))
=> #(3 4 5 6 7)

(compute (lazy #’* #(2 3) #2A((1 2) (3 4))))
=> #2A((2 4) (9 12))

Package

petalisp.api.

Source

lazy.lisp.

Function: lazy-array (object)

Returns a lazy array that is derived from the supplied object in the following way:

- If the supplied object is a lazy array, the result is that lazy array.

- If the supplied object is a regular array, the result is a lazy array
of the same shape, and whose indices map to the same elements.

- If the supplied object is neither a lazy array, nor a regular array, it is treated like an array of rank zero whose sole element is that supplied object.

By convention, all functions that expect an argument to be a lazy array actually accept any kind of object and use the LAZY-ARRAY function to convert that object to a lazy array. Unless user code violates this convention, scalars, regular arrays, and lazy arrays can be used interchangeably in any argument position.

Examples:

(lazy-array #2A((1 2 3) (4 5 6)))
=> #<lazy-array t (~ 2 ~ 3)>

(lazy-array #(1 2 3))
=> #<lazy-array t (~ 3)>

(lazy-array 5)
=> #<lazy-array (eql 5) (~*)>

(lazy-array (lazy-array 5))
=> #<lazy-array (eql 5) (~*)>

(lazy-array (make-array 2 :element-type ’double-float :initial-element 0.0d0)) => #<lazy-array double-float (~ 2)>

Package

petalisp.core.

Source

lazy-array.lisp.

Reader: lazy-array-delayed-action (instance)
Writer: (setf lazy-array-delayed-action) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

delayed-action.

Reader: lazy-array-depth (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

depth.

Function: lazy-array-dimension (lazy-array axis)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-dimensions (lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-element-type (lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-from-array (array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-from-range (range)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-from-scalar (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-inputs (lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: lazy-array-ntype (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

ntype.

Function: lazy-array-p (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-range (lazy-array axis)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-ranges (lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-array-rank (lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Reader: lazy-array-refcount (instance)
Writer: (setf lazy-array-refcount) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

refcount.

Reader: lazy-array-shape (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

shape.

Function: lazy-array-size (lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-broadcast (&rest arrays)
Package

petalisp.api.

Source

lazy-broadcast.lisp.

Function: lazy-broadcast-list-of-arrays (list-of-arrays)

Returns a list of lazy arrays of the same shape, where each lazy array is a broadcasting reference to the corresponding element of the supplied list of arrays. As a second value, returns the shape of all the resulting lazy arrays. Signals an error if there is no suitable shape to which all the supplied arrays can be broadcast.

The resulting shape is constructed according to the following rules:

1. The rank of the resulting shape is the maximum of the rank of all the supplied arrays.

2. Each range of any of the supplied arrays must either have a size of one, or it must be equal to the range of the resulting shape in the same axis.

3. In case there is an axis in which all supplied arrays have a range with only a single element, the resulting shape uses the range of the first supplied array.

Examples:

(lazy-broadcast-list-of-arrays (list #(1 2 3) 5))
=> (#<lazy-array t (~ 3)> #<lazy-array (eql 5) (~ 3)>)
=> (~ 3)

(apply #’compute (lazy-broadcast-list-of-arrays (list #(1 2 3) 5)))
=> #(1 2 3)
=> #(5 5 5)

(apply #’compute (lazy-broadcast-list-of-arrays (list #(1 2 3) #(5)))) => #(1 2 3)
=> #(5 5 5)

(apply #’compute
(lazy-broadcast-list-of-arrays (list #2A((1 2) (3 4)) #(7 8)))) => #2A((1 2) (3 4))
=> #2A((7 7) (8 8))

Package

petalisp.api.

Source

lazy-broadcast.lisp.

Function: lazy-drop-axes (array &rest axes)

Returns a lazy array with the same contents as the supplied array, but whose shape has all ranges referred to by the supplied axes removed. All of the ranges being referred to must have a size of one.

Examples:

(lazy-drop-axes (lazy-reshape 1 (~ 1 2 ~ 2 3)) 1)
=> #<lazy-array (eql 1) (~ 1 2)>

(compute (lazy-drop-axes (lazy-reshape 1 (~ 1 2 ~ 2 3)) 1))
=> #*1

(compute (lazy-drop-axes (lazy-reshape 1 (~ 1 2 ~ 2 3)) 0 1))
=> 1

(compute (lazy-drop-axes (lazy-reshape 1 (~ 1 2 ~ 2 5)) 0))
=> #*111

Package

petalisp.api.

Source

lazy-drop-axes.lisp.

Function: lazy-fuse (array &rest more-arrays)

Returns a lazy array that is a combination of all the values of all the supplied arrays. Signals an error if any of the supplied arrays overlap, don’t have the same rank, or if the union of all their shapes cannot be represented as a shape.

Examples:

(compute (lazy-fuse (lazy-reshape 1 (~ 0 2)) (lazy-reshape 2 (~ 2 4)))) => #(1 1 2 2)

(compute (lazy-fuse (lazy-reshape 1 (~ 0 7 2)) (lazy-reshape 2 (~ 1 7 2)))) => #(1 2 1 2 1 2 1)

(compute
(lazy-fuse (lazy-reshape 1 (~ 0 2 ~ 0 2)) (lazy-reshape 2 (~ 0 2 ~ 2 4)) (lazy-reshape 3 (~ 2 4 ~ 0 2)) (lazy-reshape 4 (~ 2 4 ~ 2 4)))) => #2A((1 1 2 2) (1 1 2 2) (3 3 4 4) (3 3 4 4))

Package

petalisp.core.

Source

lazy-fuse.lisp.

Function: lazy-fuse-and-harmonize (array &rest more-arrays)

Returns the result of first harmonizing all the supplied arrays, and then passing them to LAZY-FUSE.

Package

petalisp.api.

Source

lazy-harmonize.lisp.

Function: lazy-harmonize (&rest arrays)

Lazily coerce each of the supplied arrays to the common harmonized element type, and return the resulting lazy arrays as multiple values.

Example:

(multiple-value-call #’compute (lazy-harmonize 5 6.0))
=> 5.0
=> 6.0

Package

petalisp.api.

Source

lazy-harmonize.lisp.

Function: lazy-harmonize-list-of-arrays (arrays)

Lazily coerce each array in the supplied list of arrays to the common harmonized element type, and return a list of the resulting lazy arrays.

Example:

(apply #’compute (lazy-harmonize-list-of-arrays (list 5 6.0)))
=> 5.0
=> 6.0

Package

petalisp.api.

Source

lazy-harmonize.lisp.

Function: lazy-index-components (shape-designator &optional axis)

Returns a lazy array containing the index components of the designated shape in the supplied axis. If the first argument is not a shape, the function SHAPE-DESIGNATOR-SHAPE is used to convert it a shape. If no axis is not supplied, it defaults to zero.

Examples:

(compute (lazy-index-components (~ 9)))
=> #(0 1 2 3 4 5 6 7 8)

(compute (lazy-index-components (~ 0 4 2 ~ 1 5 2) 0))
=> #2A((0 0) (2 2))

(compute (lazy-index-components (~ 0 4 2 ~ 1 5 2) 1))
=> #2A((1 3) (1 3))

(compute (lazy-index-components #2A((1 2) (3 4))))
=> #2A((0 0) (1 1))

(compute (lazy-index-components #2A((1 2) (3 4)) 1))
=> #2A((0 1) (0 1))

Package

petalisp.api.

Source

lazy-index-components.lisp.

Function: lazy-map (function inputs)
Package

petalisp.core.

Source

lazy-map.lisp.

Function: lazy-multiple-value (n-values function &rest arrays)

Returns as many lazy arrays as indicated by the integer that is the first supplied argument, whose contents are the results of applying the function that is the second supplied argument element-wise to the contents of the remaining argument arrays. If the arguments don’t agree in shape, they are first broadcast with the function LAZY-BROADCAST-LIST-OF-ARRAYS.

Examples:

(multiple-value-call #’compute (lazy-multiple-value 0 #’*))

(multiple-value-call #’compute (lazy-multiple-value 1 #’*))
=> 1

(multiple-value-call #’compute (lazy-multiple-value 2 #’*))
=> 1
=> nil

(multiple-value-call #’compute
(lazy-multiple-value 2 #’floor #(2 3) #2A((1 2) (3 4))))
=> #2A((2 1) (1 0))
=> #2A((0 0) (0 3))

(multiple-value-call #’compute
(lazy-multiple-value 3 #’values-list #((1 2 3) (4 5 6))))
=> #(1 4)
=> #(2 5)
=> #(3 6)

Package

petalisp.api.

Source

lazy-multiple-value.lisp.

Function: lazy-multiple-value-map (n-outputs function inputs)
Package

petalisp.core.

Source

lazy-map.lisp.

Function: lazy-multireduce (number-of-axes function &rest arrays)

Returns the lazy array obtained by repeatedly invoking LAZY-REDUCE as often as indicated by the supplied first argument. The remaining arguments are the function to be used for the reduction and a number of lazy arrays that are broadcast and reduced along their first axes.

Examples:

(compute (lazy-multireduce 0 #’+ #2A((1 2) (3 4))))
=> #2A((1 2) (3 4))

(compute (lazy-multireduce 1 #’+ #2A((1 2) (3 4))))
=> #(4 6)

(compute (lazy-multireduce 2 #’+ #2A((1 2) (3 4))))
=> 10

Package

petalisp.api.

Source

lazy-multireduce.lisp.

Function: lazy-overwrite (array &rest more-arrays)

Returns a lazy array that is a combination of all the values of all the supplied arrays. If any of the supplied arrays overlap at some index, the value of the result in that index is that of the rightmost array containing that index. Signals an error unless all the supplied arrays have the same rank, or if the union of all their shapes cannot be represented as a shape.

Examples:

(compute (lazy-overwrite (lazy-reshape 1 (~ 0 4)) (lazy-reshape 2 (~ 2 4)))) => #(1 1 2 2)

(compute
(lazy-overwrite (lazy-reshape 1 (~ 3 ~ 3)) (lazy-reshape 2 (~ 1 2 ~ 1 2)))) => #2A((1 1 1) (1 2 1) (1 1 1))

Package

petalisp.api.

Source

lazy-overwrite.lisp.

Function: lazy-overwrite-and-harmonize (array &rest more-arrays)

Returns the result of first harmonizing all the supplied arrays, and then passing them to LAZY-OVERWRITE.

Package

petalisp.api.

Source

lazy-harmonize.lisp.

Function: lazy-reduce (function &rest arrays)

Returns one or more lazy arrays whose contents are the multiple value reduction with the supplied function, when applied pairwise to the elements of the first axis of each of the supplied arrays. If the supplied arrays don’t agree in shape, they are first broadcast with the function BROADCAST-ARRAYS.

The supplied function F must accept 2k arguments and return k values, where k is the number of supplied arrays. All supplied arrays must have the same shape S, which is the cartesian product of some ranges, i.e., S = r_1 x ... r_n, where each range r_k is a set of integers, e.g., {0, 1, ..., m}. Then β returns k arrays of shape s = r_2 x ... x r_n, whose elements are a combination of the elements along the first axis of each array according to the following rules:

1. If the given arrays are empty, return k empty arrays.

2. If the first axis of each given array contains exactly one element, drop that axis and return arrays with the same content, but with shape s.

3. If the first axis of each given array contains more than one element, partition the indices of this axis into a lower half l and an upper half u. Then split each given array into a part with shape l x s and a part with shape u x s. Recursively process the lower and the upper halves of each array independently to obtain 2k new arrays of shape s. Finally, combine these 2k arrays element-wise with f to obtain k new arrays with all values returned by f. Return these arrays.

Examples:

(compute (lazy-reduce #’+ #(1 2 3 4)))
=> 10

(compute (lazy-reduce #’+ #2A((1 2) (3 4))))
=> #(4 6)

(let ((a #(5 2 7 1 9)))
(multiple-value-bind (max index)
(lazy-reduce
(lambda (lv li rv ri)
(if (> lv rv)
(values lv li)
(values rv ri)))
a (lazy-index-components a 0))
(compute max index)))
=> 9
=> 4

Package

petalisp.api.

Source

lazy-reduce.lisp.

Function: lazy-ref (input shape transformation)
Package

petalisp.core.

Source

lazy-ref.lisp.

Function: lazy-reshape (array &rest modifiers)

Returns the lazy array that is obtained by successively reshaping the supplied array with the supplied modifiers in left-to-right order. There are four kinds of modifiers: Integers that express an increase or decrease in the number of active axes, transformations that describe a reordering of values, functions which are applied to the shape consisting of all active axes to obtain additional modifiers, and shape designators that describe a selection, move, or broadcasting of values, depending on whether the designated shape has fewer, equal, or more elements than the active axes of the current lazy array.

More precisely, the processing maintains a lazy array L that is initialized to the result of applying LAZY-ARRAY constructor to the supplied first argument, a number of active ranges K that initialized to the rank of L. For each modifier, L and K are updated while maintaining the invariant that K is less than or equal to the rank of L. The rules for updating L and K are as follows:

1. If the modifier is a non-negative integer N, compare it with the number of active ranges K. If N is less than or equal to K, set K to N and leave L as it is. Otherwise, if N is larger than K, create a new lazy array with the same contents as L, whose shape starts with N minus K ranges that only contain the integer zero, followed by the ranges of L. Then, set L to that newly created lazy array, and set K to N.

2. If the modifier is an invertible transformation with input rank M (which must be less than the number of active ranges K) and output rank N, extend the transformation with trailing identity mappings such that it has an input rank equal to the rank of L. Create a new lazy array by reordering L with that extended transformation. Set L to that newly created lazy array, and K to N.

3. If the modifier is a function, apply it to the shape consisting of the first K ranges of L to obtain a number of new modifiers as multiple values. Process the new modifiers as if they were supplied instead of this function modifier.

4. If the modifier is a shape designator, compare the designated shape M with the shape S that consists of the first K ranges of L, and chose one of the following rules to update L and K.

a) If the shape M has rank K and denotes a strict subset of S, create a new lazy array whose first N ranges are equal to those of M, whose remaining ranges are equal to the corresponding ones of L, and where each index maps to the same value as L. Then, set L to that newly created lazy array.

b) If the shape M has the same number of elements as S, create a new lazy array with the same contents and the same lexicographical ordering as L, whose shape consists of the ranges of M followed by all but the first K ranges of L. Then, set L to that newly created lazy array, and set K to the rank of M.

c) If the shape M has more elements than the current shape, create a new lazy array that is a broadcasting reference to L, whose shape consists of the ranges of M, followed by all but the first K ranges of L. Then, set L to the newly created lazy array, and set K to the rank of M.

The result of this function is the final value of the lazy array L after processing all modifiers.

Examples:

(compute (lazy-reshape #(1 2 3 4 5 6) (~ 1 5)))
=> #(2 3 4 5)

(compute (lazy-reshape #(1 2 3 4 5 6) (~ 2 ~ 3)))
=> #2A((1 2 3) (4 5 6))

(compute (lazy-reshape #(1 2 3 4 5 6) (~ 6 ~ 2)))
=> #2A((1 1) (2 2) (3 3) (4 4) (5 5) (6 6))

(compute (lazy-reshape #(1 2 3 4) (transform i to (- i))))
=> #(4 3 2 1)

(compute (lazy-reshape #(1 2 3 4) (transform i to (- i)) (~ -2 0)))
=> #(3 2)

(compute (lazy-reshape #2A((1 2) (3 4)) (transform i j to j i)))
=> #2A((1 3) (2 4))

(compute (lazy-reshape #2A((1 2) (3 4)) 1 (~ 2 ~ 2)))
=> #3A(((1 2) (1 2)) ((3 4) (3 4)))

(compute (lazy-reshape #(1 2 3) 0 1))
=> #2A((1 2 3))

(compute (lazy-reshape #2A((1 2) (3 4)) (lambda (s) (~ (shape-size s))))) => #(1 2 3 4)

Package

petalisp.core.

Source

lazy-reshape.lisp.

Function: lazy-reshape-using-transformation (lazy-array transformation)
Package

petalisp.core.

Source

lazy-ref.lisp.

Function: lazy-slice (array index &optional axis)

Returns a lazy array whose rank is one less than the rank of the supplied array, and that contains all entries of the supplied array whose index component is equal to the supplied index in the optionally supplied axis. If the axis is not supplied, it defaults to zero.

Examples:

(compute (lazy-slice #(1 2 3 4) 2))
=> 3

(compute (lazy-slice #2A((1 2) (3 4)) 0))
=> #(1 2)

(compute (lazy-slice #2A((1 2) (3 4)) 1))
=> #(3 4)

(compute (lazy-slice #2A((1 2) (3 4)) 0 1))
=> #(1 3)

(compute (lazy-slice #2A((1 2) (3 4)) 1 1))
=> #(2 4)

Package

petalisp.api.

Source

lazy-slice.lisp.

Function: lazy-slices (array range &optional axis)

Returns a lazy array containing all those elements of the supplied array whose index components in the optionally supplied axis are contained in the supplied range. If the axis is not supplied, it defaults to zero. The resulting array has the same shape as the supplied array, except that its range in the axis being sliced along is the supplied range. Signals an error if the supplied range is not fully contained in the original range of that axis.

Examples:

(compute (lazy-slices #(1 2 3 4) (range 0 3 2)))
=> #(1 3)

(compute (lazy-slices #2A((1 0 0) (0 1 0) (0 0 1)) (range 2)))
=> #2A((1 0 0) (0 1 0))

(compute (lazy-slices #2A((1 0 0) (0 1 0) (0 0 1)) (range 0 3 2)))
=> #2A((1 0 0) (0 0 1))

(compute (lazy-slices #2A((1 0 0) (0 1 0) (0 0 1)) (range 0 3 2) 1)) => #2A((1 0) (0 0) (0 1))

Package

petalisp.api.

Source

lazy-slices.lisp.

Function: lazy-sort (array predicate)

Returns a lazy array containing the elements of the supplied array, but sorted along the first axis with the supplied predicate.

Examples:

(compute (lazy-sort #(1 3 7 5 0 6 4 9 8 2) #’<))
=> #(0 1 2 3 4 5 6 7 8 9)

(compute (lazy-sort "Sphinx of black quartz, judge my vow." #’char-lessp)) => " ,.aabcdefghijklmnoopqrStuuvwxyz"

(compute (lazy-sort #2A((9 8 7) (6 5 4) (3 2 1)) #’<))
=> #2A((3 2 1) (6 5 4) (9 8 7))

Package

petalisp.api.

Source

lazy-sort.lisp.

Function: lazy-stack (axis array &rest more-arrays)

Returns a lazy array whose contents are the supplied arrays, stacked next to each other along the specified AXIS such that the leftmost array will have the lowest index components, and the rightmost array will have the highest index components.

The supplied arrays must all have the same rank, and also the same ranges in all but the one axis that is being stacked along. The range of the resulting lazy array in that axis that is being stacked along has the same start as the leftmost corresponding argument range that is non-empty, a size that is the sum of the sizes of all corresponding ranges, and a step size is that of the leftmost corresponding argument range that has more than one element, or one if there is no such range. Signals an error if multiple arguments have a range with more than one element but differing step sizes in the axis being stacked along.

Examples:

(compute (lazy-stack 0 #(1) #(2) #(3)))
=> #(1 2 3)

(compute (lazy-stack 0 #(1 2) #(3 4) #(5 6)))
=> #(1 2 3 4 5 6)

(compute (lazy-stack 0 #2A((1 2) (3 4)) #2A((5 6) (7 8))))
=> #2A((1 2) (3 4) (5 6) (7 8))

(compute (lazy-stack 1 #2A((1 2) (3 4)) #2A((5 6) (7 8))))
=> #2A((1 2 5 6) (3 4 7 8))

Package

petalisp.api.

Source

lazy-stack.lisp.

Function: lazy-unknown-p (lazy-array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: lazy-unknowns (graph-roots)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: leaf-buffer-p (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: load-foreign-code (source-code &key compiler language standard flags)
Package

petalisp.codegen.

Source

load-foreign-code.lisp.

Function: load-instruction-buffer (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf load-instruction-buffer) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: load-instruction-p (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: load-instruction-transformation (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf load-instruction-transformation) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: load-or-store-instruction-p (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-array-from-shape-and-ntype (shape ntype)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-buffer (&key shape ntype depth writers readers task storage number)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-buffer-like-array (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-cgraph (&key table)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: make-cqueue ()
Package

petalisp.cqueue.

Source

cqueue.lisp.

Function: make-delayed-array (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-graph (&key object-nodes)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: make-ir-backend (&key mode)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Function: make-kernel (&key iteration-space sources targets instruction-vector task data number)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-kernel-lambda (client bpinfo body)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: make-native-backend (&key threads debug)
Package

petalisp.native-backend.

Source

backend.lisp.

Function: make-network (&rest outputs)

Creates a network with the supplied inputs and outputs.

An error is signaled of any of the inputs is not of type NETWORK-INPUT, or if additional network inputs are reachable from the network outputs.

Package

petalisp.api.

Source

network.lisp.

Function: make-program (&key initial-task final-task leaf-alist root-buffers task-vector number-of-buffers number-of-kernels)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-rank-zero-array (value)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-reference-backend ()
Package

petalisp.core.

Source

reference-backend.lisp.

Function: make-shape (ranges)

Returns a shape whose axes are determined by the supplied list of ranges.

Package

petalisp.core.

Source

shape.lisp.

Function: make-shape-table ()
Package

petalisp.core.

Source

shape.lisp.

Function: make-stencil (instructions)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-task (&key program predecessors successors kernels defined-buffers number)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-testing-backend ()
Package

petalisp.test-suite.

Source

testing-backend.lisp.

Function: make-transformation (&key input-rank output-rank input-mask output-mask scalings offsets)

Returns a transformation that is created according to the supplied keyword arguments. Valid keyword arguments are:

- :INPUT-RANK A non-negative integer that is the rank of any valid index or shape supplied to this transformation. Defaults to the length of the supplied input mask, or, if no input mask is supplied, to the default value of the output rank. Signals an error if neither the input rank or the output rank can be derived in any way.

- :OUTPUT-RANK A non-negative integer that is the rank of any valid index or shape supplied to this transformation. Defaults to the length of the supplied scalings, offsets, or output mask, or, if none of these are supplied, to the default value of the input rank. Signals an error if neither the input rank or the output rank can be derived in any way.

- :INPUT-MASK A sequence with one element per axis of the transformation’s input. Each element must either be an integer, in which case only this integer may occur in the corresponding axis of the input, or NIL, in which case any integer may occur in the corresponding axis.

- :OUTPUT-MASK A sequence with one element per axis of the transformation’s output. Each element must either be an integer, in which case this integer denotes the axis of the input that is to be scaled, shifted and sent to the current position’s output, or NIL, in which case only the corresponding offset value is sent to the current output. This way, the output mask can encode both permutations of the input, as well as insertion and removal of axes. If this keyword argument is not supplied, it defaults to a sequence of consecutive integers as long as the minimum of the input rank and the output rank, followed by entries of NIL in case the output rank exceeds the input rank.

- :SCALINGS A sequence with one element per axis of the transformation’s output. Each element must be a rational number. Every transformation output is the input denoted by the output mask, scaled with its corresponding entry in this sequence, and then added to the corresponding offset. In case of an output mask entry of NIL, the corresponding scaling is ignored and the offset of that output axis is returned as is. If this keyword argument is not supplied, it defaults to a sequence of ones.

- :OFFSETS A sequence with one element per axis of the transformation’s output. Each element must be a rational number that is added to the corresponding output value after scaling has taken place. If this keyword argument is not supplied, it defaults to a sequence of zeros.

Signals an error if some of the sequences supplied as :OUTPUT-MASK, :SCALINGS, or :OFFSETS differ in length.

Examples:

(make-transformation :input-rank 2)
=> (transform a b to a b)

(make-transformation :input-rank 2 :output-rank 1)
=> (transform a b to a)

(make-transformation :input-mask ’(2 nil 3))
=> (transform 2 b 3 to 2 b 3)

(make-transformation :output-mask #(1 0 nil))
=> (transform a b c to b a 0)

(make-transformation :offsets #(1 2 3) :scalings #(4 5 6))
=> (transform a b c to (1+ (* 4 a)) (+ (* 5 b) 2) (+ (* 6 c) 3))

Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: make-unknown (&key shape element-type)

Returns a lazy array whose contents are not known and consequently cannot be computed. Lazy arrays depending on such an array also cannot be computed. The main
purpose such unknown lazy arrays is to construct the arguments to the
EVALUATOR function.

Examples:

(make-unknown :shape (~ 5 ~ 5))
=> #<lazy-array t (~ 5 ~ 5)>

(make-unknown :element-type ’double-float)
=> #<lazy-array double-float (~*)>

Package

petalisp.core.

Source

lazy-array.lisp.

Function: map-buffer-inputs (function buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-buffer-load-instructions (function buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-buffer-outputs (function buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-buffer-store-instructions (function buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-buffers (function root-buffers)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-buffers-and-kernels (buffer-fn kernel-fn root-buffers)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-instruction-inputs (function instruction)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-kernel-inputs (function kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-kernel-instructions (function kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-kernel-load-instructions (function kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-kernel-outputs (function kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-kernel-stencils (function kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-kernel-store-instructions (function kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-kernels (function root-buffers)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-program-buffer-groups (function program)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-program-buffers (function program)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-program-kernels (function program)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-program-tasks (function program)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-range (function range)

Takes a function and a range and applies the function to all integers of that range, in ascending order. Returns the range being mapped over.

Example:

(let ((l ’nil))
(map-range (lambda (i) (push i l)) (range 1 9 2))
(nreverse l))
=> (1 3 5 7)

Package

petalisp.core.

Source

range.lisp.

Function: map-shape (function shape)

Takes a function and a shape and applies the function to all integer tuples of that range, in ascending order.

Example:

(let ((l ’nil))
(map-shape (lambda (i) (push i l)) (~ 1 3 ~ 3 5))
(nreverse l))
=> ((1 3) (2 3) (1 4) (2 4))

Package

petalisp.core.

Source

shape.lisp.

Function: map-stencil-instructions (function stencil)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-task-defined-buffers (function task)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-task-kernels (function task)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-task-predecessors (function task)
Package

petalisp.ir.

Source

ir.lisp.

Function: map-task-successors (function task)
Package

petalisp.ir.

Source

ir.lisp.

Function: move-axis-to-front (array axis)
Package

petalisp.core.

Source

differentiator.lisp.

Reader: node-depth (instance)
Writer: (setf node-depth) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

depth.

Reader: node-height (instance)
Writer: (setf node-height) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

height.

Reader: node-predecessor-alist (instance)
Writer: (setf node-predecessor-alist) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

predecessor-alist.

Reader: node-successor-alist (instance)
Writer: (setf node-successor-alist) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

successor-alist.

Function: nodep (object)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: non-empty-range-p (object)
Package

petalisp.core.

Source

range.lisp.

Function: normalizing-transformation (shape)
Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: number-of-cpus ()
Package

petalisp.utilities.

Source

number-of-cpus.lisp.

Function: partition-program (program &key split-priority split-min-priority split-max-redundancy split-max-imbalance debug)

Partition all buffers and kernels in the supplied program into shards. Returns, as multiple values, a vector mapping each buffer to its corresponding primogenitor buffer shard, a vector mapping each kernel to its corresponding primogenitor kernel shard, and a vector mapping each buffer to its corresponding ghostspec.

SPLIT-PRIORITY - A function that takes a buffer shard and returns an unsigned integer that is the priority when considering whether to split that buffer shard. Buffer shards with higher priority are split first, and buffer shards whose priority is below a certain minimum priority are not split at all.

SPLIT-MIN-PRIORITY - An unsigned integer that is the priority a buffer shard must exceed to be considered for splitting.

SPLIT-MAX-REDUNDANCY - A real number that is the maximum permissible ratio of ghost points to interior points for a split.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: peeling-reshaper (&key layers lower-layers upper-layers strides)

Returns a function that can be supplied as modifier to LAZY-RESHAPE to turn any lazy array shape into modifiers that select certain interior points of that shape. The nature of this function is determined by the four keyword arguments :LAYERS, :LOWER-LAYERS, :UPPER-LAYERS, and :STRIDES. Each of these keyword arguments can be a non-negative integer, in which case it applies to each axis of the lazy array being reshaped, or it can be a sequence of non-negative integers, in which case each element of that sequence applies only to the corresponding axis.

The :LOWER-LAYERS keyword argument describes how many of the lowest integers in each range are to be peeled off, and the :UPPER-LAYERS keyword argument describes how many of the highest integers in each range are to be peeled off. The :LAYERS keyword argument, which defaults to zero, describes the default values for both of the lower and upper layers when they aren’t specified explicitly. The :STRIDES keyword argument, which defaults to one, denotes a factor for scaling the original step size of each range, such that a stride of K means selecting only every Kth element.

The resulting function signals an error if an attempt is made to peel more layers from a lazy array than the size of the range in that axis.

Examples:

(compute
(lazy-reshape #2A((1 2 3) (4 5 6) (7 8 9)) (peeling-reshaper :layers 1))) => #2A((5))

(compute
(lazy-reshape #2A((1 2 3) (4 5 6) (7 8 9))
(peeling-reshaper :lower-layers 1)))
=> #2A((5 6) (8 9))

(compute
(lazy-reshape #2A((1 2 3) (4 5 6) (7 8 9))
(peeling-reshaper :upper-layers 1)))
=> #2A((1 2) (4 5))

(compute
(lazy-reshape #2A((1 2 3) (4 5 6) (7 8 9))
(peeling-reshaper :lower-layers ’(0 2))))
=> #2A((3) (6) (9))

Package

petalisp.api.

Source

reshapers.lisp.

Function: permuting-reshaper (&rest indices)

Returns a function that can be supplied as a modifier to LAZY-RESHAPE to turn any lazy array shape into a permuting transformation. The supplied arguments must be non-negative integers that denote the ordering of axes that is established by that transformation.

Examples:

(compute (lazy-reshape #2A((1 2) (3 4)) (permuting-reshaper 1 0))) => #2A((1 3) (2 4))

(compute
(lazy-reshape #3A(((1 2 3) (4 5 6)) ((7 8 9) (10 11 12))) (permuting-reshaper 0 2 1)))
=> #3A(((1 4) (2 5) (3 6)) ((7 10) (8 11) (9 12)))

(compute
(lazy-reshape #3A(((1 2 3) (4 5 6)) ((7 8 9) (10 11 12))) (permuting-reshaper 2 0 1)))
=> #3A(((1 4) (7 10)) ((2 5) (8 11)) ((3 6) (9 12)))

Package

petalisp.api.

Source

reshapers.lisp.

Function: prime-factors (integer)

Return the list of prime factors of INTEGER in ascending order.

Package

petalisp.utilities.

Source

prime-factors.lisp.

Function: primep (n)
Package

petalisp.utilities.

Source

prime-factors.lisp.

Function: program-buffer (program buffer-number)
Package

petalisp.ir.

Source

ir.lisp.

Reader: program-final-task (instance)
Writer: (setf program-final-task) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

final-task.

Function: program-from-lazy-arrays (lazy-arrays &key kernel-size-threshold debug)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: program-initial-task (instance)
Writer: (setf program-initial-task) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

initial-task.

Function: program-kernel (program kernel-number)
Package

petalisp.ir.

Source

ir.lisp.

Reader: program-leaf-alist (instance)
Writer: (setf program-leaf-alist) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

leaf-alist.

Reader: program-number-of-buffers (instance)
Writer: (setf program-number-of-buffers) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

number-of-buffers.

Reader: program-number-of-kernels (instance)
Writer: (setf program-number-of-kernels) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

number-of-kernels.

Function: program-number-of-tasks (program)
Package

petalisp.ir.

Source

ir.lisp.

Reader: program-root-buffers (instance)
Writer: (setf program-root-buffers) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

root-buffers.

Reader: program-task-vector (instance)
Writer: (setf program-task-vector) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

task-vector.

Function: programp (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: range (first &optional end step)

Returns a new, normalized range from the supplied parameters.

This function can be invoked with one, two or three integers. If it is called with a single argument, the result is a range starting from zero, with step size one, up to but excluding the supplied argument. In other words, a single argument is treated just like one of the dimensions of a regular array. If the range constructor is called with two arguments, then the result is still a range with a step size of one, but with the first argument as the inclusive lower bound, and with the second argument as the exclusive upper bound. The three argument version behaves just like the two argument version, except that the additional third argument denotes the step size. The sign of the step size gives the direction of the range: If the sign is positive, then the exclusive upper bound must be larger than the inclusive lower bound or the resulting range is empty. If the sign is negative, the first argument is used as an inclusive upper bound, and the second argument is used as an exclusive lower bound.

It is worth mentioning that the range constructor has the exact same name and semantics as the range constructor in the Python programming language.

Examples:

(range 5)
=> #<range(0 ... 4)>

(range 5 9)
=> #<range(5 6 7 8)>

(range 5 13 2)
=> #<range(5 7 9 11)>

(range 5 14 2)
=> #<range(5 7 ... 13)>

(range 1 7 -2)
=> #<empty-range>

(range 7 1 -2)
=> #<range(3 5 7)>

Package

petalisp.core.

Source

range.lisp.

Function: range-contains (range integer)

Returns whether the supplied range contains a particular integer.

Examples:

(range-contains (range 1 10) 5)
=> t

(range-contains (range 1 10) -5)
=> nil

(range-contains (range 1 10 3) 4)
=> t

Package

petalisp.core.

Source

range.lisp.

Function: range-difference-list (range1 range2)

Compute the difference of the two supplied ranges RANGE1 and RANGE2. Returns a list of disjoint subranges of RANGE1 that describe exactly those integers appearing in RANGE1 but not in RANGE2.

Package

petalisp.core.

Source

range.lisp.

Function: range-end (range)

Returns an integer that is larger than any integer in the supplied range. An error is signaled in case the range has zero elements.

Package

petalisp.core.

Source

range.lisp.

Function: range-intersection (range1 range2)

Returns the range containing exactly those elements that occur in both supplied ranges..

Examples:

(range-intersection (range 1 10) (range 2 20))
=> #<range(2 ... 9)>

(range-intersection (range 3 14 2) (range 1 14 3))
=> #<range(7 13)>

Package

petalisp.core.

Source

range.lisp.

Function: range-intersectionp (range1 range2)

Returns whether two supplied ranges have at least one common element.

Examples:

(range-intersectionp (range 1 10) (range 2 20))
=> t

(range-intersectionp (range 0 7 2) (range 1 8 2))
=> nil

Package

petalisp.core.

Source

range.lisp.

Function: range-last (range)

Returns the highest integer contained in the supplied range. An error is signaled in case the range has zero elements.

Package

petalisp.core.

Source

range.lisp.

Reader: range-size (instance)

Returns the number of elements in the supplied range.

Package

petalisp.core.

Source

range.lisp.

Target Slot

size.

Reader: range-start (instance)

Returns the lowest integer contained in the supplied range. An error is signaled in case the range has zero elements.

Package

petalisp.core.

Source

range.lisp.

Target Slot

start.

Reader: range-step (instance)

Returns the difference between any two successive integers in the supplied range. An error is signaled in case the range has zero elements.

Package

petalisp.core.

Source

range.lisp.

Target Slot

step.

Function: range= (range1 range2)

Returns whether two supplied ranges describe the same set of integers.

Examples:

(range= (range 1) (range 2))
=> nil

(range= (range 2) (range 2))
=> t

(range= (range 0 8 2) (range 0 9 2))
=> nil

(range= (range 0 8 3) (range 0 9 3))
=> t

Package

petalisp.core.

Source

range.lisp.

Function: rangep (object)

Returns whether a supplied object is a range.

Examples:

(rangep 42)
=> nil

(rangep (range 1 3 2))
=> t

Package

petalisp.core.

Source

range.lisp.

Function: remove-shape-table-entry (shape-table shape)
Package

petalisp.core.

Source

shape.lisp.

Function: reuse-optimizing-transformation (reuse-potential)

Takes a vector of single-precision floating-point numbers that describes the potential for memory reuse along each axis, returns a transformation that sorts all axes by increasing reuse potential.

Package

petalisp.ir.

Source

ir.lisp.

Function: root-buffer-p (buffer)
Package

petalisp.ir.

Source

ir.lisp.

Function: run-petalisp-test-suite ()
Package

petalisp.test-suite.

Source

run-petalisp-test-suite.lisp.

Function: run-tests (&rest tests)
Package

petalisp.test-suite.

Source

run-petalisp-test-suite.lisp.

Function: shape-contains (shape index)

Returns whether the supplied shape contains the index denoted by the supplied list of integers.

Examples:

(shape-contains (~ 1 9) (list 4))
=> t

(shape-contains (~ 1 2 9) (list 4))
=> nil

Package

petalisp.core.

Source

shape.lisp.

Function: shape-difference-list (shape1 shape2)

Computes the difference of two shapes S1 and S2. Returns a list of disjoint subshapes of S1 that describe exactly those integer tuples appearing in S1 but not in S2.

Examples:

(shape-difference-list (~ 1 11) (~ 2 10))
=> ((~ 1 2) (~ 10 11))

(shape-difference-list (~ 1 11) (~ 4 8))
=> ((~ 1 4) (~ 8 11))

(shape-difference-list (~ 1 11) (~ 2 9 2))
=> ((~ 1 10 2) (~ 10 11))

(shape-difference-list (~ 1 11) (~ 2 21))
=> ((~ 1 2))

(shape-difference-list (~ 1 21 2) (~ 1 21 3))
=> ((~ 3 16 6) (~ 5 18 6))

Package

petalisp.core.

Source

shape.lisp.

Function: shape-dimension (shape axis)
Package

petalisp.core.

Source

shape.lisp.

Function: shape-dimensions (shape)

Return the array dimensions corresponding to a shape. Signal an error if any of the ranges of the shape have a nonzero start or a step size other than one.

Examples:

(shape-dimensions (~*))
=> nil

(shape-dimensions (~ 0 9))
=> (9)

(shape-dimensions (~ 1 9))
=> (8)

(shape-dimensions (~ 0 2 9))
=> (1)

(shape-dimensions (~ 0 4 ~ 0 5 ~ 0 6))
=> (4 5 6)

Package

petalisp.core.

Source

shape.lisp.

Function: shape-intersection (shape1 shape2)

Returns the shape whose ranges are the RANGE-INTERSECTION of each pair of ranges of the two supplied shapes. Signals an error if the supplied shapes don’t have the same rank.

Examples:

(shape-intersection (~ 1 11 ~ 3 14 2) (~ 1 6 ~ 1 14 3))
=> (~ 1 6 ~ 7 14 6)

(shape-intersection (~ 1 6) (~ 6 11))
=> (~ 0)

Package

petalisp.core.

Source

shape.lisp.

Function: shape-intersectionp (shape1 shape2)

Returns whether two supplied shapes have at least one common element.

Examples:

(shape-intersectionp (~ 1 6) (~ 6 10))
=> nil

(shape-intersectionp (~ 1 5) (~ 6 10))
=> nil

Package

petalisp.core.

Source

shape.lisp.

Function: shape-prefix (shape n)

Returns the shape that consists of the lower axes of the supplied first argument, and whose rank is given by the second argument.

Examples:

(shape-prefix (~ 1 ~ 2 ~ 3) 0)
=> (~*)

(shape-prefix (~ 1 ~ 2 ~ 3) 1)
=> (~ 1)

(shape-prefix (~ 1 ~ 2 ~ 3) 2)
=> (~ 1 ~ 2)

Package

petalisp.core.

Source

shape.lisp.

Function: shape-range (shape axis)

Returns the range denoted by the supplied SHAPE and AXIS.

Examples:

(shape-range (~ 1 ~ 2 ~ 3) 0)
=> #<range(0)>

(shape-range (~ 1 ~ 2 ~ 3) 2)
=> #<range(0 1 2)>

Package

petalisp.core.

Source

shape.lisp.

Reader: shape-ranges (instance)

Returns a list of all ranges contained in the supplied shape.

Examples:

(shape-ranges (~*))
=> nil

(shape-ranges (~ 1 ~ 2 ~ 3))
=> (#<range(0)> #<range(0 1)> #<range(0 1 2)>)

(shape-ranges (~ 0 9 ~ 0 9))
=> (#<range(0 ... 8)> #<range(0 ... 8)>)

Package

petalisp.core.

Source

shape.lisp.

Target Slot

ranges.

Reader: shape-rank (instance)

Returns the rank of the supplied shape, i.e., the number of ranges it contains.

Examples:

(shape-rank (~*))
=> 0

(shape-rank (~ 1 ~ 2 ~ 3))
=> 3

(shape-rank (~ 0 9 ~ 0 9))
=> 2

Package

petalisp.core.

Source

shape.lisp.

Target Slot

rank.

Reader: shape-size (instance)

Returns that number of integer tuples denoted by the supplied shape.

Examples:

(shape-size (~*))
=> 1

(shape-size (~ 2 9))
=> 7

(shape-size (~ 1 9 ~ 1 8))
=> 56

Package

petalisp.core.

Source

shape.lisp.

Target Slot

size.

Function: shape-subseq (shape start &optional end)

Returns the shape consisting of all ranges of the supplied shape in the axes interval between the supplied start and end. If the end argument is not supplied, it defaults to the rank of the supplied shape.

Examples:

(shape-subseq (~ 2 ~ 3 ~ 4) 0)
=> (~ 2 ~ 3 ~ 4)

(shape-subseq (~ 2 ~ 3 ~ 4) 2)
=> (~ 4)

(shape-subseq (~ 2 ~ 3 ~ 4) 1 2)
=> (~ 3)

Package

petalisp.core.

Source

shape.lisp.

Function: shape-suffix (shape n)

Returns the shape that consists of the higher axes of the supplied first argument, and whose rank is given by the second argument.

Examples:

(shape-suffix (~ 1 ~ 2 ~ 3) 0)
=> (~*)

(shape-suffix (~ 1 ~ 2 ~ 3) 1)
=> (~ 3)

(shape-suffix (~ 1 ~ 2 ~ 3) 2)
=> (~ 2 ~ 3)

Package

petalisp.core.

Source

shape.lisp.

Function: shape-table-p (object)
Package

petalisp.core.

Source

shape.lisp.

Function: shape-table-value (shape-table shape &optional default)
Package

petalisp.core.

Source

shape.lisp.

Function: (setf shape-table-value) (shape-table shape &optional default)
Package

petalisp.core.

Source

shape.lisp.

Function: shape< (shape1 shape2)

Returns whether SHAPE1 has less elements than SHAPE2, or, if both shapes have the same size, whether SHAPE1 has lower rank than SHAPE2, or, if both shapes have the same rank, whether the range of SHAPE1 is smaller than the range of SHAPE2 ranges in the lowest axis where both ranges differ in size.

The main use case for this function is to sort sequences of shapes, such that they can be accessed in logarithmic time.

Examples:

(shape< (~ 2) (~ 3))
=> t

(shape< (~ 3) (~ 2))
=> nil

(shape< (~ 2 ~ 4) (~ 2 ~ 2 ~ 2))
=> t

(shape< (~ 2 ~ 2 ~ 2) (~ 2 ~ 4))
=> nil

(shape< (~ 2 ~ 2 ~ 4) (~ 2 ~ 4 ~ 2))
=> t

(shape< (~ 2 ~ 4 ~ 2) (~ 2 ~ 2 ~ 4))
=> nil

Package

petalisp.core.

Source

shape.lisp.

Function: shape= (shape1 shape2)

Returns whether two supplied shapes denote the same set of integer tuples.

Examples:

(shape= (~*) (~*))
=> t

(shape= (~ 42) (~ 42))
=> t

(shape= (~ 1 42) (~ 1 42))
=> t

(shape= (~ 1 42) (~ 2 42))
=> nil

Package

petalisp.core.

Source

shape.lisp.

Function: shapep (object)

Returns whether the supplied object is a shape.

Examples:

(shapep 42)
=> nil

(shapep (~ 1 ~ 2 ~ 3 4))
=> t

Package

petalisp.core.

Source

shape.lisp.

Function: shrink-shape (shape)

This function expects a single shape with one or more ranges R1 to Rn. It returns a shape with the ranges R2 to R1, and, as a second value, the range R1 that has been peeled off.

Examples:

(shrink-shape (~ 1 10))
=> (~*)
=> #<range(1 ... 9)>

(shrink-shape (~ 1 10 ~ 0 2))
=> (~ 2)
=> #<range(1 ... 9)>

Package

petalisp.core.

Source

shape.lisp.

Function: size-one-range-p (range)

Returns whether the supplied range has a size of one.

Examples:

(size-one-range-p (range 5))
=> nil

(size-one-range-p (range 5 7 2))
=> t

(size-one-range-p (range 5 7 3))
=> t

Package

petalisp.core.

Source

range.lisp.

Reader: split-axis (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

axis.

Reader: split-left-child (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

left-child.

Function: split-parent (split)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: split-position (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

position.

Function: split-range (range &optional position)

Splits the supplied range R into a lower and an upper half and returns those two halves as multiple values. In case R has an odd number of elements, the lower half will have one more element than the upper half.

The optional POSITION argument is a real number that can be used to prescribe the point at which to split the range.

Examples:

(split-range (range 0))
=> #<empty-range>
=> #<empty-range>

(split-range (range 1))
=> #<range(0)>
=> #<empty-range>

(split-range (range 1 10))
=> #<range(1 ... 5)>
=> #<range(6 7 8 9)>

(split-range (range 1 10) 3)
=> #<range(1 2)>
=> #<range(3 ... 9)>

(split-range (range 1 10) 1)
=> #<empty-range>
=> #<range(1 ... 9)>

(split-range (range 1 10) 10)
=> #<range(1 ... 9)>
=> #<empty-range>

(split-range (range 1 9))
=> #<range(1 2 3 4)>
=> #<range(5 6 7 8)>

(split-range (range 2 9 2))
=> #<range(2 4)>
=> #<range(6 8)>

(split-range (range 2 9 2) 3)
=> #<range(2)>
=> #<range(4 6 8)>

Package

petalisp.core.

Source

range.lisp.

Reader: split-right-child (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

right-child.

Function: split-shape (shape axis &optional position)

Split the supplied SHAPE at AXIS. The optional POSITION argument can be supplied to describe the position at which to split. If no POSITION argument is supplied, split into two halves of roughly equal size. Returns two values, which are two shapes resulting from the split.

Examples:

(split-shape (~ 10 ~ 10) 0)
=> (~ 5 ~ 10)
=> (~ 5 10 ~ 10)

(split-shape (~ 10 ~ 10) 1)
=> (~ 10 ~ 5)
=> (~ 10 ~ 5 10)

(split-shape (~ 10 ~ 10) 0 3)
=> (~ 3 ~ 10)
=> (~ 3 10 ~ 10)

(split-shape (~ 2 9 2 ~ 2 9 2) 0 3)
=> (~ 2 3 ~ 2 9 2)
=> (~ 4 9 2 ~ 2 9 2)

(split-shape (~ 2 9 2 ~ 2 9 2) 1 3)
=> (~ 2 9 2 ~ 2 3)
=> (~ 2 9 2 ~ 4 9 2)

Package

petalisp.core.

Source

shape.lisp.

Function: splitp (object)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: stencil-buffer (stencil)
Package

petalisp.ir.

Source

ir.lisp.

Reader: stencil-center (instance)
Writer: (setf stencil-center) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

center.

Function: stencil-from-instruction (instruction)
Package

petalisp.ir.

Source

ir.lisp.

Function: stencil-input-rank (stencil)
Package

petalisp.ir.

Source

ir.lisp.

Reader: stencil-instructions (instance)
Writer: (setf stencil-instructions) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

instructions.

Function: stencil-output-mask (stencil)
Package

petalisp.ir.

Source

ir.lisp.

Function: stencil-output-rank (stencil)
Package

petalisp.ir.

Source

ir.lisp.

Function: stencil-scalings (stencil)
Package

petalisp.ir.

Source

ir.lisp.

Function: stencilp (object)
Package

petalisp.ir.

Source

ir.lisp.

Reader: storage-allocation (instance)
Writer: (setf storage-allocation) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

allocation.

Reader: storage-ghost-layer-alist (instance)
Writer: (setf storage-ghost-layer-alist) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

ghost-layer-alist.

Reader: storage-ntype (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

ntype.

Reader: storage-offset (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

offset.

Function: storage-rank (storage)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: storage-size (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

size.

Reader: storage-strides (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

strides.

Function: storagep (object)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: store-instruction-buffer (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf store-instruction-buffer) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: store-instruction-input (store-instruction)
Package

petalisp.ir.

Source

ir.lisp.

Function: store-instruction-p (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: store-instruction-transformation (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf store-instruction-transformation) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: subdivide-arrays (arrays)

Invoke SUBDIVIDE-SHAPES on the shapes of the supplied ARRAYS.

Examples:

(subdivide-arrays (list))
=> nil

(subdivide-arrays (list #()))
=> (((~ 0) . 1))

(subdivide-arrays (list #() #()))
=> (((~ 0) . 1) ((~ 0) . 2))

(subdivide-arrays (list #(1 2 3 4) #(1 2)))
=> (((~ 2) . 3) ((~ 2 4) . 1))

Package

petalisp.core.

Source

lazy-array.lisp.

Function: subdivide-shapes (shapes)

Returns a list of cons cells whose CAR is a shape and whose CDR is an integer. Each shape is a proper subshape of one or more of the supplied shapes and the fusion of all these shapes covers all the supplied shapes. The bits of each integer, when viewed in two’s complement, encode which of the supplied shapes are supersets of that particular resulting shape.

Examples:

(subdivide-shapes (list (~ 1 10) (~ 2 20)))
=> (((~ 2 10) . 3) ((~ 1 2) . 1) ((~ 10 20) . 2))

(subdivide-shapes (list (~ 1 3 ~ 1 3) (~ 1 2 ~ 1 2)))
=> (((~ 1 2 ~ 1 2) . 3) ((~ 1 2 ~ 2 3) . 1) ((~ 2 3 ~ 1 3) . 1))

Package

petalisp.core.

Source

shape.lisp.

Function: subrangep (range1 range2)
Package

petalisp.core.

Source

range.lisp.

Function: subshapep (shape1 shape2)

Returns whether all elements of the first supplied shape are also contained in the second supplied shape. Signals an error if the supplied shapes don’t have the same rank.

Examples:

(subshapep (~*) (~*))
=> t

(subshapep (~ 0 9) (~ 0 9))
=> t

(subshapep (~ 0 3) (~ 1 9))
=> nil

(subshapep (~ 0 3 ~ 0 3) (~ 0 9 ~ 0 9))
=> t

Package

petalisp.core.

Source

shape.lisp.

Function: substitute-lazy-array (lazy-array)
Package

petalisp.core.

Source

substitute-lazy-arrays.lisp.

Function: substitute-lazy-arrays (roots new-lazy-arrays old-lazy-arrays)
Package

petalisp.core.

Source

substitute-lazy-arrays.lisp.

Reader: task-number (instance)
Writer: (setf task-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

number.

Reader: task-program (instance)
Writer: (setf task-program) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

program.

Function: taskp (object)
Package

petalisp.ir.

Source

ir.lisp.

Function: transformation-blueprint (transformation)
Package

petalisp.codegen.

Source

blueprint.lisp.

Reader: transformation-input-mask (instance)

Returns a vector with one element per axis of any possible input. Each element of this vector is either an integer, meaning the index component of any input index in the corresponding axis must be that integer, or NIL, meaning that the index component can be any integer.

Package

petalisp.core.

Source

transformation.lisp.

Target Slot

input-mask.

Reader: transformation-input-rank (instance)

Returns the rank that any shape that can be transformed with this transformation must have.

Package

petalisp.core.

Source

transformation.lisp.

Target Slot

input-rank.

Function: transformation-invertiblep (transformation)

Returns whether the supplied object is an invertible transformation.

Examples:

(transformation-invertiblep (transform i j to j i))
=> t

(transformation-invertiblep (transform i j to i))
=> nil

Package

petalisp.core.

Source

transformation.lisp.

Reader: transformation-offsets (instance)

Returns a vector with one element per axis of any possible output. Each element of this vector is a rational number that is added to the input index component indicated by the corresponding output mask entry after it is multiplied with the corresponding scaling.

Package

petalisp.core.

Source

transformation.lisp.

Target Slot

offsets.

Reader: transformation-output-mask (instance)

Returns a vector with one element per axis of any possible output. Each element of this vector is either an integer that is the corresponding input axis that is referenced by this output axis, or NIL, if and only if the scaling of that output axis is zero.

Package

petalisp.core.

Source

transformation.lisp.

Target Slot

output-mask.

Reader: transformation-output-rank (instance)

Returns the rank that shapes created by applying this transformation will have.

Package

petalisp.core.

Source

transformation.lisp.

Target Slot

output-rank.

Reader: transformation-scalings (instance)

Returns a vector with one element per axis of any possible output. Each element of this vector is a rational number that is multiplied with the input index component indicated by the corresponding output mask entry before it is added to the corresponding offset.

Package

petalisp.core.

Source

transformation.lisp.

Target Slot

scalings.

Function: transformationp (object)

Returns whether a supplied object is a transformation.

Examples:

(identity-transformation-p (transform i j to j i)) => nil

(identity-transformation-p (transform i j to i j)) => t

Package

petalisp.core.

Source

transformation.lisp.

Function: unpack-array (array environment)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: value-array (object)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: vicinity-left-neighbors (vicinity axis)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: vicinity-right-neighbors (vicinity axis)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: vicinityp (object)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: wait (&rest requests)

Blocks until the requests resulting from some COMPUTE-ASYNCHRONOUSLY operations has been completed.

Package

petalisp.core.

Source

backend.lisp.

Function: ~ (&rest tokens)

Returns a shape whose ranges are derived by processing each occurrence of one of the self-evaluating delimiter symbols ~ and ~*, and the arguments following such a delimiter up to the next one. Each such group contributes one or more ranges to the resulting shape. The behavior of each delimiter is as follows:

- The ~ delimiter must be followed by one, two, or three integers that are then supplied to the RANGE function to construct the single resulting range.

- The ~* delimiter must be followed by any number of ranges that are incorporated into the resulting shape as they are.

Examples:

(~*)
=> (~*)

(~ 8)
=> (~ 8)

(~ 1 10)
=> (~ 1 10)

(~ 0 10 2 ~ 0 10 2)
=> (~ 0 9 2 ~ 0 9 2)

(~* (range 1 10) (range 2 9) ~ 42)
=> (~ 1 10 ~ 2 9 ~ 42)

(apply #’~ 1 10
(loop repeat 3
append ’(~ 2 6)))
=> (~ 1 10 ~ 2 6 ~ 2 6 ~ 2 6)

Package

petalisp.api.

Source

shape-syntax.lisp.

Function: ~* (&rest tokens)

Returns a shape whose ranges are derived by processing each occurrence of one of the self-evaluating delimiter symbols ~ and ~*, and the arguments following such a delimiter up to the next one. Each such group contributes one or more ranges to the resulting shape. The behavior of each delimiter is as follows:

- The ~ delimiter must be followed by one, two, or three integers that are then supplied to the RANGE function to construct the single resulting range.

- The ~* delimiter must be followed by any number of ranges that are incorporated into the resulting shape as they are.

Examples:

(~*)
=> (~*)

(~ 8)
=> (~ 8)

(~ 1 10)
=> (~ 1 10)

(~ 0 10 2 ~ 0 10 2)
=> (~ 0 9 2 ~ 0 9 2)

(~* (range 1 10) (range 2 9) ~ 42)
=> (~ 1 10 ~ 2 9 ~ 42)

(apply #’~ 1 10
(loop repeat 3
append ’(~ 2 6)))
=> (~ 1 10 ~ 2 6 ~ 2 6 ~ 2 6)

Package

petalisp.api.

Source

shape-syntax.lisp.


5.1.6 Generic functions

Generic Function: backend-compute (backend lazy-arrays)

Returns a list of delayed local arrays, one for each of the supplied list of LAZY-ARRAYS.

This function is invoked by COMPUTE, which guarantees that the supplied LAZY-ARRAYS are already collapsed. The resulting delayed actions replace the delayed actions of the corresponding LAZY-ARRAYS.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: backend-compute ((testing-backend testing-backend) (data-structures list))
Source

testing-backend.lisp.

Method: backend-compute ((ir-backend ir-backend) (lazy-arrays list))
Source

ir-backend.lisp.

Method: backend-compute ((backend reference-backend) (lazy-arrays list))
Source

reference-backend.lisp.

Method: backend-compute ((backend backend) (lazy-arrays list))
Method: backend-compute ((backend backend) (lazy-arrays null))
Generic Function: backend-compute-asynchronously (backend lazy-arrays)

Returns a REQUEST object that can be used to wait until all of the supplied LAZY-ARRAYS have been computed.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: backend-compute-asynchronously ((backend backend) (lazy-arrays list))
Method: backend-compute-asynchronously ((backend backend) (lazy-arrays null))
Generic Reader: backend-debug-flag (backend)

Returns whether the supplied backend runs in debug mode, where it trades performance for ease of debugging.

Package

petalisp.core.

Source

backend.lisp.

Methods
Reader Method: backend-debug-flag ((backend backend))

automatically generated reader method

Target Slot

%debug-flag.

Generic Writer: (setf backend-debug-flag) (backend)

Set the backend’s debug flag to true or false.

Package

petalisp.core.

Source

backend.lisp.

Methods
Writer Method: (setf backend-debug-flag) ((backend backend))

automatically generated writer method

Target Slot

%debug-flag.

Generic Function: backend-evaluator (backend unknowns lazy-arrays)

For a supplied BACKEND, list of UNKNOWNS of length N, and list of LAZY-ARRAYS of length K, returns a function with K+N arguments that returns, as multiple values, the K array values obtained by computing the supplied arrays after substituting the Ith unknown with the supplied argument in position K+I.

The first N arguments specify which storage to use for the results. A value of NIL indicates that the corresponding result shall be a fresh array. A value that is an array ensures that the result is written to that array.

An error is signaled if any of the arguments of an evaluator has a different shape or element type as the corresponding result or unknown.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: backend-evaluator ((backend backend) (unknowns list) (lazy-arrays list))
Source

evaluator.lisp.

Method: backend-evaluator ((backend backend) (unknowns list) (lazy-arrays list))
Method: backend-evaluator ((backend backend) (unknowns list) (lazy-arrays null))
Method: backend-evaluator :before ((backend backend) (unknowns list) (lazy-arrays list))
Generic Function: backendp (object)

Returns whether the supplied OBJECT is a Petalisp backend.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: backendp ((backend backend))
Method: backendp (object)
Generic Function: compile-blueprint (client blueprint)

Returns a function that is a suitable return value for compiling a kernel that has the supplied blueprint.

Package

petalisp.codegen.

Source

generic-functions.lisp.

Methods
Method: compile-blueprint ((client cuda-compiler-mixin) blueprint)
Source

mixins.lisp.

Method: compile-blueprint ((client cpp-compiler-mixin) blueprint)
Source

mixins.lisp.

Method: compile-blueprint ((client lisp-plus-cpp-compiler-mixin) blueprint)
Source

mixins.lisp.

Method: compile-blueprint ((client lisp-compiler-mixin) blueprint)
Source

mixins.lisp.

Method: compile-blueprint ((client lisp-interpreter-mixin) blueprint)
Source

mixins.lisp.

Method: compile-blueprint :around ((client compile-cache-mixin) blueprint)
Source

mixins.lisp.

Generic Function: compile-kernel (client kernel)

Returns a function that returns zero values and that takes five arguments — the kernel, the iteration space, an opaque object representing all targets, an opaque object representing all sources, and an opaque object representing the evaluation environment.

Package

petalisp.codegen.

Source

generic-functions.lisp.

Methods
Method: compile-kernel (client (kernel kernel))
Generic Reader: core-memory (device)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: core-memory ((core core))

automatically generated reader method

Target Slot

%memory.

Generic Reader: core-name (device)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: core-name ((core core))

automatically generated reader method

Target Slot

%name.

Generic Function: delayed-action-inputs (delayed-action)
Package

petalisp.core.

Source

lazy-array.lisp.

Methods
Method: delayed-action-inputs ((delayed-action delayed-action))
Method: delayed-action-inputs ((delayed-map delayed-map))
Method: delayed-action-inputs ((delayed-nth-value delayed-nth-value))
Method: delayed-action-inputs ((delayed-reshape delayed-reshape))
Method: delayed-action-inputs ((delayed-fuse delayed-fuse))
Generic Function: delete-backend (backend)

Permanently disable the supplied BACKEND and free any resources that might be held by it. No other actions may be performed on a backend once it has been deleted.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: delete-backend ((testing-backend testing-backend))
Source

testing-backend.lisp.

Method: delete-backend ((backend backend))
Source

backend.lisp.

Method: delete-backend ((backend backend))
Generic Reader: device-cores (device)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: device-cores ((device device))

automatically generated reader method

Target Slot

%cores.

Generic Reader: device-memory (device)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: device-memory ((device device))

automatically generated reader method

Target Slot

%memory.

Generic Reader: device-name (device)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: device-name ((device device))

automatically generated reader method

Target Slot

%name.

Generic Function: enlarge-transformation (transformation scale offset)

Given a transformation mapping from (i1 ... iN) to (j1 ... jM), return a transformation mapping from (i0 i1 ... iN iN+1) to ((+(* i0 SCALE) OFFSET) j1 ... jM).

Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: enlarge-transformation ((transformation hairy-transformation) (scaling rational) (offset rational))
Method: enlarge-transformation ((transformation identity-transformation) (scale rational) (offset rational))
Method: enlarge-transformation ((transformation identity-transformation) (scale (eql 1)) (offset (eql 0)))
Generic Function: inflate-transformation (transformation n)
Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: inflate-transformation ((transformation hairy-transformation) (n integer))
Method: inflate-transformation ((transformation identity-transformation) (n integer))
Method: inflate-transformation :around ((transformation transformation) (n integer))
Generic Function: instruction-number-of-values (instruction)
Package

petalisp.ir.

Source

ir.lisp.

Methods
Method: instruction-number-of-values ((call-instruction call-instruction))
Method: instruction-number-of-values ((iref-instruction iref-instruction))
Method: instruction-number-of-values ((load-instruction load-instruction))
Method: instruction-number-of-values ((store-instruction store-instruction))
Generic Function: invert-transformation (transformation)

Returns the inverse of the supplied transformation.

An error is signaled if the supplied transformation is not invertible.

Examples:

(invert-transformation (transform i to (+ 2 i)))
=> (transform a to (+ a -2))

(invert-transformation (transform a b to (+ (* 2 b) 5) (+ (* 3 a) 7))) => (transform a b to (+ (* 1/3 b) -7/3) (+ (* 1/2 a) -5/2))

(invert-transformation (transform a 0 to a))
=> (transform a to a 0)

(invert-transformation (transform a b to a))
>> simple-error

Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: invert-transformation ((transformation hairy-transformation))
Method: invert-transformation ((transformation identity-transformation))
Generic Function: load-function (client ntype)

Returns the name of a function for loading an object of the supplied ntype from some base and index.

Package

petalisp.codegen.

Source

generic-functions.lisp.

Methods
Method: load-function ((backend backend) (ntype ntype))
Source

compilation.lisp.

Method: load-function ((ir-backend ir-backend) (ntype ntype))
Source

ir-backend.lisp.

Generic Function: map-transformation-inputs (function transformation &key from-end)

For each input of TRANSFORMATION, invoke FUNCTION with the input index and the corresponding input constraint, or null, if there is no input constraint for this input.

If FROM-END is false, the input indices are traversed in ascending order. Otherwise, they are traversed in descending order.

Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: map-transformation-inputs ((function function) (transformation hairy-transformation) &key from-end)
Method: map-transformation-inputs ((function function) (transformation identity-transformation) &key from-end)
Generic Function: map-transformation-outputs (function transformation &key from-end)

For each output of TRANSFORMATION, invoke FUNCTION with the output index, input index, the scaling and the offset of that output.

An input index of NIL and a scaling of zero is used, if (and only if) the output is constant.

If FROM-END is false, the output indices are traversed in ascending order. Otherwise, they are traversed in descending order.

Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: map-transformation-outputs ((function function) (transformation hairy-transformation) &key from-end)
Method: map-transformation-outputs ((function function) (transformation identity-transformation) &key from-end)
Generic Reader: memory-bandwidth (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-bandwidth ((memory memory))

automatically generated reader method

Target Slot

%bandwidth.

Generic Reader: memory-children (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-children ((memory memory))

automatically generated reader method

Target Slot

%children.

Generic Reader: memory-cores (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-cores ((memory memory))

automatically generated reader method

Target Slot

%cores.

Generic Reader: memory-granularity (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-granularity ((memory memory))

automatically generated reader method

Target Slot

%granularity.

Generic Reader: memory-latency (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-latency ((memory memory))

automatically generated reader method

Target Slot

%latency.

Generic Reader: memory-name (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-name ((memory memory))

automatically generated reader method

Target Slot

%name.

Generic Reader: memory-parent (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-parent ((memory memory))

automatically generated reader method

Target Slot

%parent.

Generic Reader: memory-parent-bandwidth (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-parent-bandwidth ((memory memory))

automatically generated reader method

Target Slot

%parent-bandwidth.

Generic Reader: memory-size (memory)
Package

petalisp.ir.

Source

device.lisp.

Methods
Reader Method: memory-size ((memory memory))

automatically generated reader method

Target Slot

%size.

Generic Reader: network-outputs (object)
Package

petalisp.api.

Methods
Reader Method: network-outputs ((network network))

automatically generated reader method

Source

network.lisp.

Target Slot

%outputs.

Generic Reader: network-parameters (object)
Package

petalisp.api.

Methods
Reader Method: network-parameters ((network network))

automatically generated reader method

Source

network.lisp.

Target Slot

%parameters.

Generic Function: request-completedp (request)

Returns whether all lazy arrays that are part of the supplied REQUEST have already been computed.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: request-completedp ((request request))
Source

request.lisp.

Method: request-completedp ((completed-request completed-request))
Method: request-completedp ((request request))
Generic Function: request-wait (request)

Block until all lazy arrays that are part of the supplied REQUEST have been computed.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: request-wait ((request request))
Source

request.lisp.

Method: request-wait ((completed-request completed-request))
Generic Function: requestp (object)

Returns whether the supplied OBJECT is a request.

Package

petalisp.core.

Source

backend.lisp.

Methods
Method: requestp ((request request))
Source

request.lisp.

Method: requestp ((request request))
Method: requestp (object)
Generic Function: shape-designator-shape (shape-designator)

Returns the shape of the supplied shape designator. If the designator is already a shape, the result is that shape. If the designator is a regular array or lazy array, the result is the shape of that array. If the result is any other object, the result is a shape with rank zero.

Package

petalisp.core.

Source

shape.lisp.

Methods
Method: shape-designator-shape ((lazy-array lazy-array))
Source

lazy-array.lisp.

Method: shape-designator-shape (object)
Method: shape-designator-shape ((shape shape))
Method: shape-designator-shape ((array array))
Generic Function: source-function (client)

Returns the name of a function that will be invoked with the
.sources. kernel parameter and an index, and that returns the source with that index.

As a second value, returns the values type specifier that describes the results of invoking that function.

Package

petalisp.codegen.

Source

generic-functions.lisp.

Methods
Method: source-function ((backend backend))
Source

compilation.lisp.

Method: source-function ((ir-backend ir-backend))
Source

ir-backend.lisp.

Method: source-function :around (client)
Generic Function: store-function (client ntype)

Returns the name of a function for storing an object of the supplied ntype at some base and index.

Package

petalisp.codegen.

Source

generic-functions.lisp.

Methods
Method: store-function ((backend backend) (ntype ntype))
Source

compilation.lisp.

Method: store-function ((ir-backend ir-backend) (ntype ntype))
Source

ir-backend.lisp.

Generic Function: substitute-delayed-action (delayed-action)
Package

petalisp.core.

Source

substitute-lazy-arrays.lisp.

Methods
Method: substitute-delayed-action ((delayed-action delayed-action))
Method: substitute-delayed-action ((delayed-fuse delayed-fuse))
Method: substitute-delayed-action ((delayed-reshape delayed-reshape))
Method: substitute-delayed-action ((delayed-nth-value delayed-nth-value))
Method: substitute-delayed-action ((delayed-multiple-value-map delayed-multiple-value-map))
Method: substitute-delayed-action ((delayed-map delayed-map))
Generic Function: target-function (client)

Returns the name of a function that will be invoked with the values of the .targets. kernel parameter and an index, and that returns the target with that index.

As a second value, returns the values type specifier that describes the results of invoking that function.

Package

petalisp.codegen.

Source

generic-functions.lisp.

Methods
Method: target-function ((backend backend))
Source

compilation.lisp.

Method: target-function ((ir-backend ir-backend))
Source

ir-backend.lisp.

Method: target-function :around (client)
Generic Function: transform-axis (axis transformation)
Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: transform-axis ((axis integer) (hairy-transformation hairy-transformation))
Method: transform-axis ((axis integer) (transformation identity-transformation))
Method: transform-axis ((axis integer) (transformation transformation))
Generic Function: transform-index (sequence transformation)
Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: transform-index ((vector vector) (transformation hairy-transformation))
Method: transform-index ((list list) (transformation hairy-transformation))
Method: transform-index ((sequence sequence) (transformation identity-transformation))
Method: transform-index :before ((sequence sequence) (transformation hairy-transformation))
Method: transform-index :before ((sequence sequence) (transformation transformation))
Generic Function: transform-shape (shape transformation)
Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: transform-shape ((shape shape) (transformation hairy-transformation))
Method: transform-shape ((shape shape) (operator identity-transformation))
Method: transform-shape :before ((shape shape) (transformation hairy-transformation))
Method: transform-shape :before ((shape shape) (transformation transformation))
Generic Function: transformation-similar (transformation-1 transformation-2 delta)

Returns whether two supplied transformations are similar. Two transformations are similar if they have the same permutation, the same inputs constraints, the same scalings, and offsets whose entries differ in at most DELTA.

Examples:

(transformation-similar (transform a to a) (transform a to (1+ a)) 0) => nil

(transformation-similar (transform a to a) (transform a to (1+ a)) 1) => t

(transformation-similar (transform i j to (+ j 2) i)
(transform i j to (- j 1) i) 2)
=> nil

(transformation-similar (transform i j to (+ j 2) i)
(transform i j to (- j 1) i) 3)
=> t

Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: transformation-similar ((t1 transformation) (t2 transformation) (delta integer))
Generic Function: transformation= (transformation-1 transformation-2)

Returns whether two supplied transformations describe the same mapping.

Examples:

(transformation= (transform i to (* 2 (1+ i))) (transform i to (+ 2 (* 2 i)))) => t

(transformation= (transform i j to i j) (transform i j to j i))
=> nil

Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: transformation= ((t1 hairy-transformation) (t2 hairy-transformation))
Method: transformation= ((t1 identity-transformation) (t2 identity-transformation))
Method: transformation= ((t1 transformation) (t2 transformation))
Generic Function: unpack-function (client ntype rank)

Returns the name of a function for unpacking a storage object and environment into a base, an offset, and as many strides as the supplied RANK.

As a second value, returns the values type specifier that describes the results of invoking that function.

Package

petalisp.codegen.

Source

generic-functions.lisp.

Methods
Method: unpack-function ((backend backend) (ntype ntype) (rank integer))
Source

compilation.lisp.

Method: unpack-function ((ir-backend ir-backend) (ntype ntype) (rank integer))
Source

ir-backend.lisp.

Method: unpack-function :around (client ntype rank)

5.1.7 Standalone methods

Method: initialize-instance :after ((backend backend) &key &allow-other-keys)
Source

backend.lisp.

Method: print-object ((ad-record ad-record) stream)
Source

differentiator.lisp.

Method: print-object ((node node) stream)
Source

scheduling.lisp.

Method: print-object ((lazy-array lazy-array) stream)
Source

lazy-array.lisp.

Method: print-object ((empty-range empty-range) stream)
Source

range.lisp.

Method: print-object ((shape shape) stream)
Source

shape-syntax.lisp.

Method: print-object ((transformation transformation) stream)
Source

transform.lisp.

Method: print-object ((range non-empty-range) stream)
Source

range.lisp.

Method: print-object ((memory memory) stream)
Source

device.lisp.

Method: print-object ((kernel-shard kernel-shard) stream)
Source

partitioning.lisp.

Method: print-object ((buffer buffer) stream)
Source

ir.lisp.

Method: print-object ((store-instruction store-instruction) stream)
Source

ir.lisp.

Method: print-object ((load-instruction load-instruction) stream)
Source

ir.lisp.

Method: print-object ((program program) stream)
Source

ir.lisp.

Method: print-object ((buffer-shard buffer-shard) stream)
Source

partitioning.lisp.

Method: print-object ((core core) stream)
Source

device.lisp.

Method: print-object ((iref-instruction iref-instruction) stream)
Source

ir.lisp.

Method: print-object ((split split) stream)
Source

partitioning.lisp.

Method: print-object ((kernel kernel) stream)
Source

ir.lisp.

Method: print-object ((task task) stream)
Source

ir.lisp.

Method: print-object ((device device) stream)
Source

device.lisp.

Method: print-object ((call-instruction call-instruction) stream)
Source

ir.lisp.

Method: print-object ((worker worker) stream)
Source

worker-pool.lisp.

Method: shared-initialize :after ((memory memory) slot-names &key &allow-other-keys)
Source

device.lisp.

Method: shared-initialize :after ((core core) slot-names &key &allow-other-keys)
Source

device.lisp.


5.1.8 Structures

Structure: buffer

A buffer is a mapping from indices of a particular shape to memory locations of the same type.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: shape
Package

petalisp.core.

Type

petalisp.core:shape

Readers

buffer-shape.

Writers

(setf buffer-shape).

Slot: ntype
Type

typo:ntype

Readers

buffer-ntype.

Writers

(setf buffer-ntype).

Slot: depth
Type

(and unsigned-byte fixnum)

Readers

buffer-depth.

Writers

(setf buffer-depth).

Slot: writers
Type

list

Initform

(quote nil)

Readers

buffer-writers.

Writers

(setf buffer-writers).

Slot: readers
Type

list

Initform

(quote nil)

Readers

buffer-readers.

Writers

(setf buffer-readers).

Slot: task
Type

(or null petalisp.ir:task)

Readers

buffer-task.

Writers

(setf buffer-task).

Slot: storage
Readers

buffer-storage.

Writers

(setf buffer-storage).

Slot: number
Package

common-lisp.

Type

(and unsigned-byte fixnum)

Initform

0

Readers

buffer-number.

Writers

(setf buffer-number).

Structure: buffer-shard
Package

petalisp.ir.

Source

partitioning.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: buffer
Type

petalisp.ir:buffer

Readers

buffer-shard-buffer.

Writers

This slot is read-only.

Slot: parent
Type

(or null petalisp.ir:buffer-shard)

Readers

buffer-shard-parent.

Writers

This slot is read-only.

Slot: domain
Type

petalisp.core:shape

Readers

buffer-shard-domain.

Writers

This slot is read-only.

Slot: shape
Package

petalisp.core.

Type

petalisp.core:shape

Readers

buffer-shard-shape.

Writers

This slot is read-only.

Slot: readers
Type

list

Initform

(quote nil)

Readers

buffer-shard-readers.

Writers

(setf buffer-shard-readers).

Slot: writers
Type

list

Initform

(quote nil)

Readers

buffer-shard-writers.

Writers

(setf buffer-shard-writers).

Slot: split-priority-cache
Type

(or null unsigned-byte)

Readers

buffer-shard-split-priority-cache.

Writers

(setf buffer-shard-split-priority-cache).

Slot: split
Type

(or null structure-object)

Readers

buffer-shard-split.

Writers

(setf buffer-shard-split).

Slot: storage
Type

(or null petalisp.ir:storage)

Readers

buffer-shard-storage.

Writers

(setf buffer-shard-storage).

Structure: call-instruction

A call instruction represents the application of a function some arguments. A call instruction consists of a function description from the type inference library Typo called an fnrecord, an integer that specifies the number of values produced by the call instruction, and a list of inputs. The values of a call instruction are obtained by applying the fnrecord’s function to the values of each of the call instruction’s inputs. If the function application produces less values than specified, the missing values are set to NIL.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

instruction.

Direct methods
Direct slots
Slot: fnrecord
Type

typo:fnrecord

Readers

call-instruction-fnrecord.

Writers

(setf call-instruction-fnrecord).

Slot: number-of-values
Type

(integer 0 (1073741824))

Readers

call-instruction-number-of-values.

Writers

(setf call-instruction-number-of-values).

Structure: cqueue
Package

petalisp.cqueue.

Source

cqueue.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: h-lock
Type

bordeaux-threads-2:lock

Initform

(bordeaux-threads-2:make-lock :name "h-lock")

Readers

cqueue-h-lock.

Writers

(setf cqueue-h-lock).

Slot: t-lock
Type

bordeaux-threads-2:lock

Initform

(bordeaux-threads-2:make-lock :name "t-lock")

Readers

cqueue-t-lock.

Writers

(setf cqueue-t-lock).

Slot: head
Type

cons

Readers

cqueue-head.

Writers

(setf cqueue-head).

Slot: tail
Type

cons

Readers

cqueue-tail.

Writers

(setf cqueue-tail).

Structure: delayed-action
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Structure: delayed-array
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods
Direct slots
Slot: storage
Type

array

Initform

(alexandria:required-argument :storage)

Readers

delayed-array-storage.

Writers

(setf delayed-array-storage).

Structure: delayed-failure
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods
Direct slots
Slot: condition
Package

common-lisp.

Type

condition

Initform

(alexandria:required-argument :condition)

Readers

delayed-failure-condition.

Writers

This slot is read-only.

Structure: delayed-fuse
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods
Direct slots
Slot: inputs
Type

list

Initform

(alexandria:required-argument :inputs)

Readers

delayed-fuse-inputs.

Writers

(setf delayed-fuse-inputs).

Structure: delayed-map
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct subclasses

delayed-multiple-value-map.

Direct methods
Direct slots
Slot: fnrecord
Type

typo:fnrecord

Initform

(alexandria:required-argument :fnrecord)

Readers

delayed-map-fnrecord.

Writers

(setf delayed-map-fnrecord).

Slot: inputs
Type

list

Initform

(alexandria:required-argument :inputs)

Readers

delayed-map-inputs.

Writers

(setf delayed-map-inputs).

Structure: delayed-multiple-value-map
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-map.

Direct methods
Direct slots
Slot: values-ntype
Type

typo:values-ntype

Initform

(alexandria:required-argument :values-ntype)

Readers

delayed-multiple-value-map-values-ntype.

Writers

This slot is read-only.

Slot: refbits
Type

unsigned-byte

Initform

0

Readers

delayed-multiple-value-map-refbits.

Writers

(setf delayed-multiple-value-map-refbits).

Slot: refbits-lock
Type

bordeaux-threads-2:lock

Initform

(bordeaux-threads-2:make-lock :name "refbits lock")

Readers

delayed-multiple-value-map-refbits-lock.

Writers

(setf delayed-multiple-value-map-refbits-lock).

Structure: delayed-nop
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods

delayed-action-value.

Structure: delayed-nth-value
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods
Direct slots
Slot: number
Package

common-lisp.

Type

typo:argument-index

Initform

(alexandria:required-argument :number)

Readers

delayed-nth-value-number.

Writers

(setf delayed-nth-value-number).

Slot: input
Type

petalisp.core:lazy-array

Initform

(alexandria:required-argument :input)

Readers

delayed-nth-value-input.

Writers

(setf delayed-nth-value-input).

Structure: delayed-range
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods
Structure: delayed-reshape
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods
Direct slots
Slot: transformation
Type

petalisp.core:transformation

Initform

(alexandria:required-argument :transformation)

Readers

delayed-reshape-transformation.

Writers

(setf delayed-reshape-transformation).

Slot: input
Type

petalisp.core:lazy-array

Initform

(alexandria:required-argument :input)

Readers

delayed-reshape-input.

Writers

(setf delayed-reshape-input).

Structure: delayed-unknown
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods
Structure: delayed-wait
Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

delayed-action.

Direct methods

grow-dendrite-aux.

Direct slots
Slot: request
Initform

(alexandria:required-argument :request)

Readers

delayed-wait-request.

Writers

This slot is read-only.

Slot: delayed-action
Type

petalisp.core:delayed-action

Initform

(alexandria:required-argument :delayed-action)

Readers

delayed-wait-delayed-action.

Writers

(setf delayed-wait-delayed-action).

Structure: empty-range

An empty range is a range with zero elements.

Package

petalisp.core.

Source

range.lisp.

Direct superclasses

range.

Direct methods

print-object.

Structure: graph
Package

petalisp.scheduling.

Source

scheduling.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: object-nodes
Type

hash-table

Initform

(make-hash-table)

Readers

graph-object-nodes.

Writers

(setf graph-object-nodes).

Structure: identity-transformation

An identity transformation of rank N maps every list of length N to itself. An identity transformation is its own inverse.

Package

petalisp.core.

Source

transformation.lisp.

Direct superclasses

transformation.

Direct methods
Structure: instruction

Instructions describe the behavior of a particular kernel. All the instructions within one kernel form a directed acyclic graph whose leaves are load instructions or references to the iteration space, and whose roots are store instructions.

The instruction number of an instruction is an integer that is unique among all instructions of the surrounding kernel. Instruction numbers are handed out in depth first order of instruction dependencies, such that the roots (store instructions) have the highest numbers and that the leaf nodes (load and iref instructions) have the lowest numbers.

Each instruction input is a cons cell, whose cdr is another instruction, and whose car is an integer denoting which of the multiple values of the cdr is being referenced.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: inputs
Type

list

Initform

(quote nil)

Readers

instruction-inputs.

Writers

(setf instruction-inputs).

Slot: number
Package

common-lisp.

Type

(and unsigned-byte fixnum)

Initform

0

Readers

instruction-number.

Writers

(setf instruction-number).

Structure: iref-instruction

An iref instruction represents an access to elements of the iteration space itself. Each iref instruction contains a transformation that maps each index of the iteration space to an index of rank one. Its value is the single index component of that rank one index. An iref instruction has zero inputs.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

iterating-instruction.

Direct methods
Structure: iterating-instruction

The class of all instructions whose behavior directly depends on the current position in the surrounding iteration space.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

instruction.

Direct subclasses
Direct methods
Direct slots
Slot: transformation
Package

petalisp.core.

Type

petalisp.core:transformation

Readers

instruction-transformation.

Writers

(setf instruction-transformation).

Structure: kernel

A kernel represents a computation that, for each element in its iteration space, reads from some buffers and writes to some buffers.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: iteration-space
Type

petalisp.core:shape

Readers

kernel-iteration-space.

Writers

(setf kernel-iteration-space).

Slot: sources
Type

list

Initform

(quote nil)

Readers

kernel-sources.

Writers

(setf kernel-sources).

Slot: targets
Type

list

Initform

(quote nil)

Readers

kernel-targets.

Writers

(setf kernel-targets).

Slot: instruction-vector
Type

simple-vector

Initform

#()

Readers

kernel-instruction-vector.

Writers

(setf kernel-instruction-vector).

Slot: task
Type

(or null petalisp.ir:task)

Readers

kernel-task.

Writers

(setf kernel-task).

Slot: data
Readers

kernel-data.

Writers

(setf kernel-data).

Slot: number
Package

common-lisp.

Type

(and unsigned-byte fixnum)

Initform

0

Readers

kernel-number.

Writers

(setf kernel-number).

Structure: kernel-shard
Package

petalisp.ir.

Source

partitioning.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: kernel
Type

petalisp.ir:kernel

Readers

kernel-shard-kernel.

Writers

This slot is read-only.

Slot: iteration-space
Type

petalisp.core:shape

Readers

kernel-shard-iteration-space.

Writers

This slot is read-only.

Slot: targets
Type

list

Initform

(quote nil)

Readers

kernel-shard-targets.

Writers

(setf kernel-shard-targets).

Slot: sources
Type

list

Initform

(quote nil)

Readers

kernel-shard-sources.

Writers

(setf kernel-shard-sources).

Structure: lazy-array

A lazy array encapsulates some information that can be used to compute actual Common Lisp arrays.

Package

petalisp.core.

Source

lazy-array.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: shape
Type

petalisp.core:shape

Initform

(alexandria:required-argument :shape)

Readers

lazy-array-shape.

Writers

This slot is read-only.

Slot: ntype
Type

typo:ntype

Initform

(alexandria:required-argument :ntype)

Readers

lazy-array-ntype.

Writers

This slot is read-only.

Slot: depth
Type

(and unsigned-byte fixnum)

Initform

0

Readers

lazy-array-depth.

Writers

This slot is read-only.

Slot: refcount
Type

(and unsigned-byte fixnum)

Initform

0

Readers

lazy-array-refcount.

Writers

(setf lazy-array-refcount).

Slot: delayed-action
Type

petalisp.core:delayed-action

Initform

(alexandria:required-argument :delayed-action)

Readers

lazy-array-delayed-action.

Writers

(setf lazy-array-delayed-action).

Structure: load-instruction

A load instruction represents a read from main memory. Each load instruction consists of a buffer that is being read from, and a transformation that maps each index of the iteration space to a position in that buffer. A load instruction has zero inputs, and produces a single output that is the value that has been loaded.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

load-or-store-instruction.

Direct methods
Structure: load-or-store-instruction
Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

iterating-instruction.

Direct subclasses
Direct slots
Slot: buffer
Type

petalisp.ir:buffer

Readers

instruction-buffer.

Writers

(setf instruction-buffer).

Structure: node
Package

petalisp.scheduling.

Source

scheduling.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: predecessor-alist
Type

list

Initform

(quote nil)

Readers

node-predecessor-alist.

Writers

(setf node-predecessor-alist).

Slot: successor-alist
Type

list

Initform

(quote nil)

Readers

node-successor-alist.

Writers

(setf node-successor-alist).

Slot: object
Readers

node-object.

Writers

(setf node-object).

Slot: depth
Type

unsigned-byte

Initform

0

Readers

node-depth.

Writers

(setf node-depth).

Slot: height
Type

unsigned-byte

Initform

0

Readers

node-height.

Writers

(setf node-height).

Slot: eagerness
Type

unsigned-byte

Initform

0

Readers

node-eagerness.

Writers

(setf node-eagerness).

Slot: affinity
Type

(or unsigned-byte null)

Readers

node-affinity.

Writers

(setf node-affinity).

Slot: counter
Type

unsigned-byte

Initform

0

Readers

node-counter.

Writers

(setf node-counter).

Slot: position
Package

common-lisp.

Readers

node-position.

Writers

(setf node-position).

Structure: non-empty-range

A non-empty range denotes a set of integers, starting from a lower bound START, by a fixed stride STEP, to an exclusive upper bound END.

Package

petalisp.core.

Source

range.lisp.

Direct superclasses

range.

Direct methods

print-object.

Direct slots
Slot: step
Package

common-lisp.

Type

(integer 1 *)

Readers

range-step.

Writers

This slot is read-only.

Slot: start
Type

integer

Readers

range-start.

Writers

This slot is read-only.

Structure: program

A program is the largest organizational unit in the Petalisp intermediate representation, and fully describes the semantics of a particular graph of lazy arrays.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: initial-task
Readers

program-initial-task.

Writers

(setf program-initial-task).

Slot: final-task
Readers

program-final-task.

Writers

(setf program-final-task).

Slot: leaf-alist
Type

list

Initform

(quote nil)

Readers

program-leaf-alist.

Writers

(setf program-leaf-alist).

Slot: root-buffers
Type

list

Initform

(quote nil)

Readers

program-root-buffers.

Writers

(setf program-root-buffers).

Slot: task-vector
Type

simple-vector

Initform

#()

Readers

program-task-vector.

Writers

(setf program-task-vector).

Slot: number-of-buffers
Type

(and unsigned-byte fixnum)

Initform

0

Readers

program-number-of-buffers.

Writers

(setf program-number-of-buffers).

Slot: number-of-kernels
Type

(and unsigned-byte fixnum)

Initform

0

Readers

program-number-of-kernels.

Writers

(setf program-number-of-kernels).

Structure: range

A range denotes a possibly empty set of integers.

Package

petalisp.core.

Source

range.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct slots
Slot: size
Type

(integer 0 *)

Readers

range-size.

Writers

This slot is read-only.

Structure: shape

A shape is the cartesian product of zero or more ranges. Shapes can be constructed by calling ~ or MAKE-SHAPE. The elements of a shape are lists of integers. The rank of a shape is the length of these lists. For example, the shape (~ 0 1 ~ 1 3 ~ 3 8 4) has rank three and consists of the integer tuples (0 1 3), (0 1 7), (0 2 3), (0 2 7).

Package

petalisp.core.

Source

shape.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: ranges
Type

list

Readers

shape-ranges.

Writers

This slot is read-only.

Slot: rank
Type

petalisp.core:rank

Readers

shape-rank.

Writers

This slot is read-only.

Slot: size
Type

unsigned-byte

Readers

shape-size.

Writers

This slot is read-only.

Structure: shape-table
Package

petalisp.core.

Source

shape.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: ht
Type

hash-table

Initform

(make-hash-table :test (function equalp))

Readers

shape-table-ht.

Writers

This slot is read-only.

Structure: split
Package

petalisp.ir.

Source

partitioning.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: axis
Package

petalisp.core.

Type

petalisp.core:axis

Readers

split-axis.

Writers

This slot is read-only.

Slot: position
Package

common-lisp.

Type

integer

Readers

split-position.

Writers

This slot is read-only.

Slot: left-child
Type

petalisp.ir:buffer-shard

Readers

split-left-child.

Writers

This slot is read-only.

Slot: right-child
Type

petalisp.ir:buffer-shard

Readers

split-right-child.

Writers

This slot is read-only.

Structure: stencil

A stencil is a set of load or store instructions that all have the same buffer, kernel, output mask, and scalings, and whose offsets that are off only by at most *STENCIL-MAX-RADIUS* from the center of the stencil (measured in steps of the corresponding range of the buffer being loaded from). The center of a stencil is the average of the offsets of all its instructions.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: center
Type

simple-vector

Readers

stencil-center.

Writers

(setf stencil-center).

Slot: instructions
Type

(cons petalisp.ir:load-or-store-instruction list)

Readers

stencil-instructions.

Writers

(setf stencil-instructions).

Structure: storage
Package

petalisp.ir.

Source

partitioning.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: offset
Type

fixnum

Initform

0

Readers

storage-offset.

Writers

This slot is read-only.

Slot: strides
Type

(simple-array unsigned-byte (*))

Readers

storage-strides.

Writers

This slot is read-only.

Slot: ntype
Type

typo:ntype

Readers

storage-ntype.

Writers

This slot is read-only.

Slot: size
Type

unsigned-byte

Readers

storage-size.

Writers

This slot is read-only.

Slot: ghost-layer-alist
Type

list

Readers

storage-ghost-layer-alist.

Writers

(setf storage-ghost-layer-alist).

Slot: allocation
Readers

storage-allocation.

Writers

(setf storage-allocation).

Structure: store-instruction

A store instruction represents a write to memory. Each store instruction consists of a buffer that is being written to, a transformation that maps each index in the iteration space to a location in that buffer, and a single input that is the value to be written. A store instruction returns zero values.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

load-or-store-instruction.

Direct methods
Structure: task

A task is a collection of kernels that fully define a set of buffers. The rules for task membership are:

1. All kernels writing to a buffer B with task T have task T.

2. All buffers written to by a kernel K with task T have task T.

3. A buffer that is used by a kernel in T and that depends on a buffer in T is also in T.

Package

petalisp.ir.

Source

ir.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: program
Type

petalisp.ir:program

Initform

(quote nil)

Readers

task-program.

Writers

(setf task-program).

Slot: predecessors
Type

list

Initform

(quote nil)

Readers

task-predecessors.

Writers

(setf task-predecessors).

Slot: successors
Type

list

Initform

(quote nil)

Readers

task-successors.

Writers

(setf task-successors).

Slot: kernels
Type

list

Initform

(quote nil)

Readers

task-kernels.

Writers

(setf task-kernels).

Slot: defined-buffers
Type

list

Initform

(quote nil)

Readers

task-defined-buffers.

Writers

(setf task-defined-buffers).

Slot: number
Package

common-lisp.

Type

(and unsigned-byte fixnum)

Initform

0

Readers

task-number.

Writers

(setf task-number).

Structure: transformation

A transformation with input rank N and output rank M is a mapping from lists of length N to lists of rank M.

Package

petalisp.core.

Source

transformation.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: input-rank
Type

petalisp.core:rank

Readers

transformation-input-rank.

Writers

This slot is read-only.

Slot: output-rank
Type

petalisp.core:rank

Readers

transformation-output-rank.

Writers

This slot is read-only.

Slot: input-mask
Type

simple-vector

Readers

transformation-input-mask.

Writers

This slot is read-only.

Slot: output-mask
Type

simple-vector

Readers

transformation-output-mask.

Writers

This slot is read-only.

Slot: scalings
Type

simple-vector

Readers

transformation-scalings.

Writers

This slot is read-only.

Slot: offsets
Type

simple-vector

Readers

transformation-offsets.

Writers

This slot is read-only.

Slot: inverse
Type

(or boolean petalisp.core:transformation)

Readers

transformation-inverse.

Writers

(setf transformation-inverse).

Structure: vicinity
Package

petalisp.ir.

Source

partitioning.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: left-neighbors-vec
Type

simple-vector

Readers

vicinity-left-neighbors-vec.

Writers

This slot is read-only.

Slot: right-neighbors-vec
Type

simple-vector

Readers

vicinity-right-neighbors-vec.

Writers

This slot is read-only.


5.1.9 Classes

Class: backend
Package

petalisp.core.

Source

backend.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: %debug-flag
Type

boolean

Initargs

:debug

Readers

backend-debug-flag.

Writers

(setf backend-debug-flag).

Class: compile-cache-mixin
Package

petalisp.codegen.

Source

mixins.lisp.

Direct subclasses

backend.

Direct methods
Direct slots
Slot: %compile-cache
Type

petalisp.codegen::compile-cache

Initform

(petalisp.codegen::make-compile-cache)

Readers

compile-cache.

Writers

This slot is read-only.

Class: core
Package

petalisp.ir.

Source

device.lisp.

Direct methods
Direct slots
Slot: %name
Type

string

Initform

(alexandria:required-argument :name)

Initargs

:name

Readers

core-name.

Writers

This slot is read-only.

Slot: %memory
Type

petalisp.ir:memory

Initform

(alexandria:required-argument :memory)

Initargs

:memory

Readers

core-memory.

Writers

This slot is read-only.

Class: cpp-compiler-mixin
Package

petalisp.codegen.

Source

mixins.lisp.

Direct methods

compile-blueprint.

Class: cuda-compiler-mixin
Package

petalisp.codegen.

Source

mixins.lisp.

Direct methods

compile-blueprint.

Class: device
Package

petalisp.ir.

Source

device.lisp.

Direct methods
Direct slots
Slot: %name
Type

string

Initform

(alexandria:required-argument :name)

Initargs

:name

Readers

device-name.

Writers

This slot is read-only.

Slot: %memory
Type

petalisp.ir:memory

Initform

(alexandria:required-argument :memory)

Initargs

:memory

Readers

device-memory.

Writers

This slot is read-only.

Slot: %cores
Type

(vector petalisp.ir:core)

Initargs

:cores

Readers

device-cores.

Writers

This slot is read-only.

Class: lisp-compiler-mixin
Package

petalisp.codegen.

Source

mixins.lisp.

Direct methods

compile-blueprint.

Class: lisp-interpreter-mixin
Package

petalisp.codegen.

Source

mixins.lisp.

Direct methods

compile-blueprint.

Class: lisp-plus-cpp-compiler-mixin
Package

petalisp.codegen.

Source

mixins.lisp.

Direct subclasses

backend.

Direct methods

compile-blueprint.

Class: memory
Package

petalisp.ir.

Source

device.lisp.

Direct methods
Direct slots
Slot: %name
Type

string

Initform

(alexandria:required-argument :name)

Initargs

:name

Readers

memory-name.

Writers

This slot is read-only.

Slot: %parent
Type

(or null petalisp.ir:memory)

Initargs

:parent

Readers

memory-parent.

Writers

This slot is read-only.

Slot: %children
Type

list

Initform

(quote nil)

Initargs

:children

Readers
Writers

(setf memory-children-slot).

Slot: %cores
Type

list

Initform

(quote nil)

Initargs

:cores

Readers
Writers

(setf memory-cores-slot).

Slot: %size
Type

unsigned-byte

Initform

(alexandria:required-argument :size)

Initargs

:size

Readers

memory-size.

Writers

This slot is read-only.

Slot: %granularity
Type

unsigned-byte

Initform

(alexandria:required-argument :granularity)

Initargs

:granularity

Readers

memory-granularity.

Writers

This slot is read-only.

Slot: %latency
Type

unsigned-byte

Initform

(alexandria:required-argument :latency)

Initargs

:latency

Readers

memory-latency.

Writers

This slot is read-only.

Slot: %bandwidth
Type

unsigned-byte

Initform

(alexandria:required-argument :bandwidth)

Initargs

:bandwidth

Readers

memory-bandwidth.

Writers

This slot is read-only.

Slot: %parent-bandwidth
Type

(or null unsigned-byte)

Initargs

:parent-bandwidth

Readers

memory-parent-bandwidth.

Writers

This slot is read-only.

Class: network

A network is an encapsulated data-flow graph that can be invoked with a set of inputs and weights to yield several outputs.

Networks can also be differentiated, using the function NETWORK-GRADIENTS.

Package

petalisp.api.

Source

network.lisp.

Direct methods
Direct slots
Slot: %parameters
Initform

(alexandria:required-argument :parameters)

Initargs

:parameters

Readers

network-parameters.

Writers

This slot is read-only.

Slot: %outputs
Initform

(alexandria:required-argument :outputs)

Initargs

:outputs

Readers

network-outputs.

Writers

This slot is read-only.

Slot: %evaluator
Initform

(alexandria:required-argument :evaluator)

Initargs

:evaluator

Readers

network-evaluator.

Writers

This slot is read-only.

Class: request
Package

petalisp.core.

Source

backend.lisp.

Direct subclasses

completed-request.

Direct methods

5.1.10 Types

Type: axis ()
Package

petalisp.core.

Source

shape.lisp.

Type: index ()
Package

petalisp.codegen.

Source

indexing.lisp.

Type: rank ()
Package

petalisp.core.

Source

shape.lisp.


5.2 Internals


5.2.1 Constants

Constant: +argument-allocation-category+
Package

petalisp.native-backend.

Source

allocation.lisp.

Constant: +constant-allocation-category+
Package

petalisp.native-backend.

Source

allocation.lisp.

Constant: +empty-colorset+
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Constant: +result-allocation-category+
Package

petalisp.native-backend.

Source

allocation.lisp.

Constant: +table-of-primes+
Package

petalisp.utilities.

Source

prime-factors.lisp.

Constant: +worker-allocation-category-offset+
Package

petalisp.native-backend.

Source

allocation.lisp.


5.2.2 Special variables

Special Variable: *alphabet*
Package

petalisp.api.

Source

transform.lisp.

Special Variable: *backend-compute-recursion*
Package

petalisp.core.

Source

backend.lisp.

Special Variable: *bpinfo-indices*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-instructions*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-ranges*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-reversed-functions*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-reversed-ioffsets*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-reversed-iscalings*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-reversed-levels*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-sources*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpinfo-targets*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpnames*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *bpvar-counter*
Package

petalisp.codegen.

Source

bpinfo.lisp.

Special Variable: *buffer-ghostspec-vector*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *buffer-shard-queue*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *buffer-shard-split-max-imbalance*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *buffer-shard-split-max-redundancy*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *buffer-shard-split-min-priority*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *buffer-shard-split-priority*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *check-count*
Package

petalisp.test-suite.

Source

test-suite.lisp.

Special Variable: *check-shards-buffer-shards*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *check-shards-kernel-shards*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *check-shards-table*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *check-shards-worklist*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *chunks*
Package

petalisp.codegen.

Source

ir-backend.lisp.

Special Variable: *failed-random-state*
Package

petalisp.test-suite.

Source

test-suite.lisp.

Special Variable: *free-variables*
Package

petalisp.api.

Source

transform.lisp.

Special Variable: *function-cpp-info-table*
Package

petalisp.codegen.

Source

cpp-from-lisp.lisp.

Special Variable: *index-ntype*
Package

petalisp.codegen.

Source

indexing.lisp.

Special Variable: *instruction-table*
Package

petalisp.ir.

Source

ir-conversion.lisp.

Special Variable: *instruction-tables*
Package

petalisp.ir.

Source

ir-conversion.lisp.

Special Variable: *ir-checker-table*
Package

petalisp.ir.

Source

ir-checker.lisp.

Special Variable: *ir-checker-worklist*
Package

petalisp.ir.

Source

ir-checker.lisp.

Special Variable: *ir-converter*
Package

petalisp.ir.

Source

ir-conversion.lisp.

Special Variable: *k*
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Special Variable: *nodes*
Package

petalisp.codegen.

Source

ir-backend.lisp.

Special Variable: *pass-count*
Package

petalisp.test-suite.

Source

test-suite.lisp.

Special Variable: *pin-current-thread-code*
Package

petalisp.native-backend.

Source

pin-current-thread.lisp.

Special Variable: *pin-current-thread-library*
Package

petalisp.native-backend.

Source

pin-current-thread.lisp.

Special Variable: *primogenitor-buffer-shard-vector*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *prune*
Package

petalisp.ir.

Source

ir-conversion.lisp.

Special Variable: *simulator-step*
Package

petalisp.native-backend.

Source

evaluator.lisp.

Special Variable: *small-kernel-p*

Whether a kernel is so small that there is no need including every detail in its blueprint.

Package

petalisp.codegen.

Source

blueprint.lisp.

Special Variable: *split-queue*
Package

petalisp.ir.

Source

partitioning.lisp.

Special Variable: *storage-action-table*
Package

petalisp.native-backend.

Source

scheduling.lisp.

Special Variable: *substitutions*
Package

petalisp.core.

Source

substitute-lazy-arrays.lisp.

Special Variable: *suffix-factors*
Package

petalisp.ir.

Source

device.lisp.

Special Variable: *table*
Package

petalisp.core.

Source

reference-backend.lisp.

Special Variable: *test-count*
Package

petalisp.test-suite.

Source

test-suite.lisp.

Special Variable: *tests*
Package

petalisp.test-suite.

Source

test-suite.lisp.

Special Variable: *weight*
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Special Variable: *worker*
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Special Variable: *worklist*
Package

petalisp.codegen.

Source

ir-backend.lisp.


5.2.3 Macros

Macro: ad-record-input-gradient-cache (ad-record index)
Package

petalisp.api.

Source

differentiator.lisp.

Macro: bind (&body bindings)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Macro: buffer-dendrites (buffer)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Macro: defgenerator (name lambda-list &body body)
Package

petalisp.test-suite.

Source

defgenerator.lisp.

Macro: define-float-generator (type)
Package

petalisp.test-suite.

Source

generators.lisp.

Macro: defwrapper (name lambda-list &body body)
Package

petalisp.test-suite.

Source

defgenerator.lisp.

Macro: do-kernel-stencils ((stencil kernel &optional result) &body body)
Package

petalisp.ir.

Source

ir.lisp.

Macro: document-type (name &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: document-types (names &body body)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: ensure-instruction-clone (instruction clone-form)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Macro: expand-documentation (form &rest examples)
Package

petalisp.utilities.

Source

documentation.lisp.

Macro: maxf (place &rest numbers)
Package

petalisp.ir.

Source

partitioning.lisp.

Macro: with-collector ((result-fn gather-fn) &body body)
Package

petalisp.utilities.

Source

with-collectors.lisp.

Macro: with-random-state (&body body)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Macro: with-test-harness (&body body)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Macro: with-testing-backend (&body body)
Package

petalisp.test-suite.

Source

testing-backend.lisp.


5.2.4 Ordinary functions

Function: %make-cenv (&key backend schedule result-shapes result-ntypes argument-shapes argument-ntypes constant-arrays constant-storage-vectors allocations)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: %make-delayed-array (storage)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: %make-delayed-fuse (&key inputs)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: %make-delayed-map (&key fnrecord inputs)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: %make-delayed-multiple-value-map (&key fnrecord inputs values-ntype refbits refbits-lock)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: %make-delayed-nth-value (&key number input)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: %make-delayed-reshape (&key transformation input)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: %make-dendrite (&key stem shape transformation depth cons)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: %make-denv (&key cenv result-arrays pointers serious-conditions serious-condition-lock request)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: %make-empty-range ()
Package

petalisp.core.

Source

range.lisp.

Function: %make-hairy-transformation (input-rank output-rank input-mask output-mask scalings offsets inverse)
Package

petalisp.core.

Source

transformation.lisp.

Function: %make-identity-transformation (input-rank output-rank input-mask output-mask scalings offsets inverse)
Package

petalisp.core.

Source

transformation.lisp.

Function: %make-kernel-shard (&key kernel iteration-space targets sources)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: %make-load-instruction (buffer transformation)
Package

petalisp.ir.

Source

ir.lisp.

Function: %make-shape (ranges rank size)
Package

petalisp.core.

Source

shape.lisp.

Function: %make-stencil (&key center instructions)
Package

petalisp.ir.

Source

ir.lisp.

Function: %make-store-instruction (inputs buffer transformation)
Package

petalisp.ir.

Source

ir.lisp.

Function: %make-worker (id worker-pool)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: %make-worker-pool (size)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: %requestp (object)
Package

petalisp.native-backend.

Source

request.lisp.

Reader: action-copy-invocations (instance)
Writer: (setf action-copy-invocations) (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Target Slot

copy-invocations.

Reader: action-work-invocations (instance)
Writer: (setf action-work-invocations) (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Target Slot

work-invocations.

Function: actionp (object)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Reader: ad-record-alist (instance)
Writer: (setf ad-record-alist) (instance)
Package

petalisp.api.

Source

differentiator.lisp.

Target Slot

alist.

Function: ad-record-input-gradient (ad-record index)
Package

petalisp.api.

Source

differentiator.lisp.

Reader: ad-record-input-gradient-caches (instance)
Writer: (setf ad-record-input-gradient-caches) (instance)
Package

petalisp.api.

Source

differentiator.lisp.

Target Slot

input-gradient-caches.

Reader: ad-record-lazy-array (instance)
Package

petalisp.api.

Source

differentiator.lisp.

Target Slot

lazy-array.

Function: ad-record-output-gradient (ad-record)
Package

petalisp.api.

Source

differentiator.lisp.

Reader: ad-record-output-gradient-cache (instance)
Writer: (setf ad-record-output-gradient-cache) (instance)
Package

petalisp.api.

Source

differentiator.lisp.

Target Slot

output-gradient-cache.

Function: add-child-kernel-shard (kernel-shard new-iteration-space)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: add-transformation-constraints (shape transformation)
Package

petalisp.core.

Source

lazy-ref.lisp.

Function: allocate-memory (allocation)
Package

petalisp.native-backend.

Source

allocation.lisp.

Reader: allocation-category (instance)
Writer: (setf allocation-category) (instance)
Package

petalisp.native-backend.

Source

allocation.lisp.

Target Slot

category.

Reader: allocation-color (instance)
Package

petalisp.native-backend.

Source

allocation.lisp.

Target Slot

color.

Reader: allocation-size-in-bytes (instance)
Package

petalisp.native-backend.

Source

allocation.lisp.

Target Slot

size-in-bytes.

Reader: allocation-unboxed (instance)
Writer: (setf allocation-unboxed) (instance)
Package

petalisp.native-backend.

Source

allocation.lisp.

Target Slot

unboxed.

Function: allocationp (object)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: argument-variables (n)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: array-element-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: array-size-in-bytes (array)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: array-storage-pointer (array)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: array-storage-vector (array)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: assign-storage (primogenitor-buffer-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: assign-storage-ghost-layer-alist (buffer-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: attempt-split (buffer-shard axis position)

Attempt to split buffer shard at the supplied axis and position. If the split could be introduced successfully, or if an equivalent split already existed, return that split. Otherwise, return NIL.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: barrier ()
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: base-char-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf base-char-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: bind-argument (denv argument index)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: bind-result (denv result index)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: blueprint-bpinfo (blueprint)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: blueprint-cpp-translatable-p (blueprint)

Returns whether the supplied blueprint can be translated to C++. This is the case when each array element type has a C++ equivalent, and when all function calls therein have a C++ equivalent.

Package

petalisp.codegen.

Source

cpp-from-lisp.lisp.

Function: bpcall (number-of-values fn &rest args)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpcall-argument (bpcall &optional position)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpcall-arguments (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

arguments.

Reader: bpcall-function (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

function.

Function: bpcall-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpcall-value (bpcall &optional value-n)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpcall-values (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpcallp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpconstant-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpconstant-ntype (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpconstant-value (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

value.

Function: bpconstantp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpeval (instruction instruction-number)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpfunction-instruction-number (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpfunction-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpfunction-name (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpfunction-ntype (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpfunctionp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpindex* (&rest bpvalues)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpindex+ (&rest bpvalues)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpinfo-cpp-arguments (bpinfo)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Reader: bpinfo-functions (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

functions.

Reader: bpinfo-indices (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

indices.

Reader: bpinfo-instructions (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

instructions.

Reader: bpinfo-ioffsets (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

ioffsets.

Reader: bpinfo-iscalings (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

iscalings.

Reader: bpinfo-levels (instance)
Writer: (setf bpinfo-levels) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

levels.

Reader: bpinfo-ranges (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

ranges.

Function: bpinfo-rank (bpinfo)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpinfo-sources (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

sources.

Reader: bpinfo-targets (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

targets.

Function: bpinfop (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpinstinfo (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpinstinfo-instruction-number (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

instruction-number.

Function: bpinstinfo-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpinstinfo-name (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpinstinfo-ntype (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpinstruction-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

level.

Function: bpinstruction-value (bpinstruction &optional value-n)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpinstruction-values (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

values.

Function: bpinstruction-values-ntype (bpinstruction)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpinstructionp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpioffset-instruction-number (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpioffset-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpioffset-name (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpioffset-ntype (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpioffsetp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpiref-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpiref-offset (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

offset.

Reader: bpiref-scaling (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

scaling.

Function: bpiref-values (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpirefp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpiscaling-instruction-number (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpiscaling-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpiscaling-name (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpiscaling-ntype (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpiscalingp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpload-index (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

index.

Function: bpload-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpload-source (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

source.

Function: bpload-values (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bploadp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpmemref-base (instance)
Writer: (setf bpmemref-base) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

base.

Reader: bpmemref-ntype (instance)
Writer: (setf bpmemref-ntype) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

ntype.

Reader: bpmemref-rank (instance)
Writer: (setf bpmemref-rank) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

rank.

Reader: bpmemref-start (instance)
Writer: (setf bpmemref-start) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

start.

Function: bpmemref-stencil (bpmemref index)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpmemref-stencils (instance)
Writer: (setf bpmemref-stencils) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

stencils.

Function: bpmemref-stride (bpmemref axis)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpmemref-strides (instance)
Writer: (setf bpmemref-strides) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

strides.

Function: bpmemrefp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpname (fmt &rest args)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bprange-end (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

end.

Reader: bprange-start (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

start.

Reader: bprange-step (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

step.

Function: bprangep (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpref (spec)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpstencil-center (instance)
Writer: (setf bpstencil-center) (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

center.

Reader: bpstencil-offsets (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

offsets.

Reader: bpstencil-scalings (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

scalings.

Function: bpstencilp (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpstore-index (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

index.

Function: bpstore-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpstore-target (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

target.

Reader: bpstore-value (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

value.

Function: bpstore-values (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpstorep (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpvalue-cffi-type (bpvalue)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Function: bpvalue-cpp-string (bpvalue)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Function: bpvalue-cpp-type (bpvalue)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Reader: bpvalue-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

level.

Reader: bpvalue-ntype (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

ntype.

Function: bpvaluep (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpvariable-level (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: bpvariable-name (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Target Slot

name.

Function: bpvariable-ntype (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: bpvariablep (object)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: broadcast-ranges (range-1 range-2)
Package

petalisp.api.

Source

lazy-broadcast.lisp.

Function: buffer-ghostspec (buffer)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: buffer-readers (instance)
Writer: (setf buffer-readers) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

readers.

Function: buffer-shard-add-reader (buffer-shard kernel-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-add-writer (buffer-shard kernel-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-bind (buffer-shard allocation)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: buffer-shard-chains (buffer-shard)

A list of all chains of buffer shards writing to buffer shard and its children. Useful for debugging.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-guardian (buffer-shard)

Returns the buffer shard’s oldest ancestor that has the same storage as this one. A buffer shard can be its own guardian.

Signals an error if the storage of the supplied buffer is NIL.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-infants (buffer-shard)

An infant is a buffer-shard without a split. This function returns the list of infants whose line of ancestry contains the supplied buffer shard.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-more-important-p (buffer-shard-1 buffer-shard-2)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-queue-cleanup ()
Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-queue-emptyp ()
Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-queue-maybe-push (buffer-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-queue-pop ()
Package

petalisp.ir.

Source

partitioning.lisp.

Function: buffer-shard-split-priority (buffer-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: buffer-shard-split-priority-cache (instance)
Writer: (setf buffer-shard-split-priority-cache) (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

split-priority-cache.

Function: buffer-size-in-bytes (buffer)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: buffer-stencils-alist-blueprint (alist)
Package

petalisp.codegen.

Source

blueprint.lisp.

Reader: buffer-writers (instance)
Writer: (setf buffer-writers) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

writers.

Function: build-documentation (docstring example-forms example-thunks)
Package

petalisp.utilities.

Source

documentation.lisp.

Function: bytes-from-bits (bits)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: c128-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf c128-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: c64-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf c64-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: call-instruction-number (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf call-instruction-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: call-with-pinned-objects (objects thunk)
Package

petalisp.utilities.

Source

with-pinned-objects.lisp.

Function: call-with-random-state (thunk)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: call-with-test-harness (thunk)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: call-with-testing-backend (thunk)
Package

petalisp.test-suite.

Source

testing-backend.lisp.

Function: canonicalize-inputs (input-mask supplied-p input-rank)
Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: canonicalize-outputs (input-rank output-rank input-mask output-mask output-mask-supplied-p scalings scalings-supplied-p offsets offsets-supplied-p)
Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: canonicalize-transform-input (input)
Package

petalisp.api.

Source

transform.lisp.

Reader: cenv-allocations (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

allocations.

Reader: cenv-argument-ntypes (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

argument-ntypes.

Reader: cenv-argument-shapes (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

argument-shapes.

Reader: cenv-backend (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

backend.

Reader: cenv-constant-arrays (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

constant-arrays.

Reader: cenv-constant-storage-vectors (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

constant-storage-vectors.

Reader: cenv-result-ntypes (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

result-ntypes.

Reader: cenv-result-shapes (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

result-shapes.

Reader: cenv-schedule (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

schedule.

Function: cenvp (object)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: cgraph-p (object)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Reader: cgraph-table (instance)
Writer: (setf cgraph-table) (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

table.

Function: character-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf character-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: check-cenv (cenv)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: check-ir-node-eventually (node)
Package

petalisp.ir.

Source

ir-checker.lisp.

Function: check-program (program)
Package

petalisp.ir.

Source

ir-checker.lisp.

Package

petalisp.ir.

Source

ir-checker.lisp.

Function: check-shard-eventually (shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: check-shards ()

Raise an error if any shards are malformed. Useful for debugging.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: class-name-p (symbol)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Reader: cluster-dendrites (instance)
Writer: (setf cluster-dendrites) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

dendrites.

Reader: cluster-lazy-array (instance)
Writer: (setf cluster-lazy-array) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

lazy-array.

Function: cluster-ntype (cluster)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: cluster-p (object)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: cluster-shape (cluster)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: cnode-color (instance)
Writer: (setf cnode-color) (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

color.

Reader: cnode-colorset (instance)
Writer: (setf cnode-colorset) (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

colorset.

Reader: cnode-degree (instance)
Writer: (setf cnode-degree) (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

degree.

Reader: cnode-neighbors (instance)
Writer: (setf cnode-neighbors) (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

neighbors.

Reader: cnode-object (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

object.

Function: cnode-p (object)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Reader: cnode-queue-node (instance)
Writer: (setf cnode-queue-node) (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

queue-node.

Reader: cnode-saturation (instance)
Writer: (setf cnode-saturation) (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Target Slot

saturation.

Function: cnode> (cnode1 cnode2)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: coerce-to-ntype (lazy-array ntype)
Package

petalisp.api.

Source

differentiator.lisp.

Function: collect-prune-buffer-dendrites-alist (buffer)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: colorset-add (colorset color)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: colorset-contains (colorset color)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: colorset-next-free-color (colorset)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: colorset-union (colorset1 colorset2)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: combine-subsets (subset1 subset2)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: combine-tuples (tuple1 tuple2)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: compare-solutions (solutions1 solutions2)
Package

petalisp.test-suite.

Source

testing-backend.lisp.

Function: compile-cache-p (object)
Package

petalisp.codegen.

Source

compile-cache.lisp.

Reader: compile-cache-table (instance)
Package

petalisp.codegen.

Source

compile-cache.lisp.

Target Slot

table.

Function: compute-allocations (schedule primogenitor-buffer-shard-vector unknowns backend)

Returns a vector of vectors of allocations, and ensures that each storage being referenced by the supplied schedule has its allocation slot set to one of these allocations. Returns a second value that is a vector of all constant arrays that were referenced in the schedule.

Package

petalisp.native-backend.

Source

allocation.lisp.

Function: compute-bpinfo-index (bprange level)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: compute-bpinfo-indices ()
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: compute-bpinfo-ranges (iteration-space)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: compute-bpmemref (spec prefix number)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: compute-bpmemrefs (specs prefix)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: compute-bprange (range-spec axis)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: compute-bpstencil (irefs start strides prefix number index)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: compute-buffer-ghostspec (buffer)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: compute-buffer-shard-shape (domain buffer)

Extend the domain of a buffer shard with suitable ghost layers.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: compute-delayed-array (lazy-array)
Package

petalisp.core.

Source

reference-backend.lisp.

Function: compute-program-primogenitor-buffer-shard-vector (program)

Returns a vector whose Nth entry is the primogenitor buffer shard corresponding to the buffer with number N.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: compute-schedule (primogenitor-buffer-shard-vector backend)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: compute-transform-input-mask (input-constraints)
Package

petalisp.api.

Source

transform.lisp.

Function: compute-transform-output-functions (output-variables output-forms)
Package

petalisp.api.

Source

transform.lisp.

Function: copy-action (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: copy-allocation (instance)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: copy-bpcall (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpconstant (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpfunction (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpinfo (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpinstinfo (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpinstruction (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpioffset (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpiref (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpiscaling (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpload (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpmemref (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bprange (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpstencil (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpstore (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpvalue (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-bpvariable (instance)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: copy-buffer (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: copy-buffer-shard (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: copy-cenv (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: copy-cgraph (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: copy-cluster (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: copy-cnode (instance)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: copy-compile-cache (instance)
Package

petalisp.codegen.

Source

compile-cache.lisp.

Function: copy-delayed-array (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-failure (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-fuse (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-map (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-multiple-value-map (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-nop (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-nth-value (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-range (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-reshape (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-unknown (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-delayed-wait (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: copy-dendrite (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: copy-denv (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: copy-ghostspec (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: copy-graph (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: copy-invocation (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: copy-ir-converter (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: copy-kernel (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: copy-kernel-shard (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: copy-node (instance)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Function: copy-node (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: copy-node-into (node other-node)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: copy-pdfs-queue (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: copy-program (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: copy-prune (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: copy-simulated-memory (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: copy-split (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: copy-stem (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: copy-storage (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: copy-subset (instance)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: copy-task (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: copy-tuple (instance)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: copy-vicinity (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: count-mapped-elements (map-fn what)
Package

petalisp.ir.

Source

ir.lisp.

Function: cpp-compile-blueprint (client blueprint)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Function: cpp-translate-argument (argument)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Function: cpp-translate-blueprint (client blueprint)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Function: cpp-write-defun (bpinfo name arguments stream)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Function: cpp-write-instructions (bpinfo level stream)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Function: cpp-write-loop (bpinfo level stream)
Package

petalisp.codegen.

Source

cpp-compiler.lisp.

Reader: cqueue-h-lock (instance)
Writer: (setf cqueue-h-lock) (instance)
Package

petalisp.cqueue.

Source

cqueue.lisp.

Target Slot

h-lock.

Reader: cqueue-head (instance)
Writer: (setf cqueue-head) (instance)
Package

petalisp.cqueue.

Source

cqueue.lisp.

Target Slot

head.

Reader: cqueue-t-lock (instance)
Writer: (setf cqueue-t-lock) (instance)
Package

petalisp.cqueue.

Source

cqueue.lisp.

Target Slot

t-lock.

Reader: cqueue-tail (instance)
Writer: (setf cqueue-tail) (instance)
Package

petalisp.cqueue.

Source

cqueue.lisp.

Target Slot

tail.

Function: defgeneric-name-p (symbol)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Function: defun-name-p (symbol)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Reader: delayed-multiple-value-map-refbits-lock (instance)
Writer: (setf delayed-multiple-value-map-refbits-lock) (instance)
Package

petalisp.core.

Source

lazy-array.lisp.

Target Slot

refbits-lock.

Function: delete-kernel (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: dendrite-cluster (dendrite)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: dendrite-cons (instance)
Writer: (setf dendrite-cons) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

cons.

Reader: dendrite-depth (instance)
Writer: (setf dendrite-depth) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

depth.

Function: dendrite-kernel (dendrite)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: dendrite-p (object)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: dendrite-shape (instance)
Writer: (setf dendrite-shape) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

shape.

Reader: dendrite-stem (instance)
Writer: (setf dendrite-stem) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

stem.

Reader: dendrite-transformation (instance)
Writer: (setf dendrite-transformation) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

transformation.

Function: dendrite-validp (dendrite)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: dendrite-value-n (dendrite)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: denv-cenv (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

cenv.

Reader: denv-pointers (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

pointers.

Reader: denv-request (instance)
Writer: (setf denv-request) (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

request.

Reader: denv-result-arrays (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

result-arrays.

Reader: denv-serious-condition-lock (instance)
Writer: (setf denv-serious-condition-lock) (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

serious-condition-lock.

Reader: denv-serious-conditions (instance)
Writer: (setf denv-serious-conditions) (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

serious-conditions.

Function: denvp (object)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: destructure-transformoid (transformoid)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: differs-exactly-at (index)
Package

petalisp.ir.

Source

ir.lisp.

Function: duplicates (list)
Package

petalisp.ir.

Source

ir-checker.lisp.

Function: empty-range-size (instance)
Package

petalisp.core.

Source

range.lisp.

Function: ensure-actions (buffer-shard backend)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: ensure-buffer-task (buffer program)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: ensure-cluster (lazy-array)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: ensure-documentation (name new-value kind)
Package

petalisp.utilities.

Source

documentation.lisp.

Function: ensure-instruction-table (kernel transformation)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: ensure-kernel-shard-invocation (kernel-shard backend)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: ensure-node (kernel ir-backend)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Function: ensure-result (cenv index result)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: ensure-tasks (root-buffers)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: enter-test (test-name)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: evaluate (denv)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: evaluator-template (number-of-results number-of-arguments)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: event-horizon (buffers depth)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: execute-node (node)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Function: expand-transform (forms)
Package

petalisp.api.

Source

transform.lisp.

Function: expect-condition (expected thunk)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: f32-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf f32-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: f64-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf f64-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: factorize-shape (shape start end)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: fallback-host-device ()
Package

petalisp.ir.

Source

device.lisp.

Function: finalize-buffer (buffer)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: finalize-ir (root-buffers)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: finalize-kernel (kernel)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: find-optimal-buffer-shard-split-axis (buffer-shard)

Returns the axis where buffer shard can be split while introducing the minimum number of ghost points, or NIL, if the buffer-shard cannot be split further. If there are multiple axes with the same number of ghost points, pick the lowest axis.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: find-optimal-buffer-shard-split-position (buffer-shard axis)

Returns the position where buffer should be split such that both halves have similar size, but also such that recursive splitting results in shards that all have approximately the same split priority. The result of this function is a split position that is at most 1/6 away from the middle of the of the buffer shard’s range in the supplied axis.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: find-prune (buffer)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: flatten (thing)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: fnrecord-blueprint (fnrecord)
Package

petalisp.codegen.

Source

blueprint.lisp.

Function: fragment-difference-list (fragment1 fragment2)
Package

petalisp.core.

Source

shape.lisp.

Function: fragment-intersections (fragment1 fragment2)
Package

petalisp.core.

Source

shape.lisp.

Function: free-memory (allocation memory)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: free-variables (expression candidates)
Package

petalisp.api.

Source

transform.lisp.

Function: from-storage-transformation (shape)
Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: function-cpp-info (function-name)

Returns the C++ type, function name, and kind (:infix or :prefix) of the supplied Lisp function name. Signals an error if no equivalent C++ function exists.

Package

petalisp.codegen.

Source

cpp-from-lisp.lisp.

Function: function-cpp-translatable-p (function-name)
Package

petalisp.codegen.

Source

cpp-from-lisp.lisp.

Function: fusion-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: generate-double-float (&rest rest77 &key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-integer (&rest rest29 &key min max)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-lazy-array (&rest rest49 &key element-type element-generator shape-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-long-float (&rest rest77 &key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-matrix (&rest rest69 &key element-type element-generator size-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-range (&rest rest34 &key start-generator step-generator size-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-shape (&rest rest35 &key rank-generator range-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-short-float (&rest rest65 &key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: generate-single-float (&rest rest65 &key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: get-result (denv index)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Reader: ghostspec-buffer (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

buffer.

Function: ghostspec-left-padding (ghostspec axis)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: ghostspec-left-padding-vec (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

left-padding-vec.

Reader: ghostspec-pattern (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

pattern.

Function: ghostspec-right-padding (ghostspec axis)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: ghostspec-right-padding-vec (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

right-padding-vec.

Function: ghostspecp (object)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: graph-compute-distances (graph get-distance set-distance input-alist output-alist)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: graph-compute-node-depth (graph)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: graph-compute-node-height (graph)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: grow-dendrite (dendrite lazy-array)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: hairy-transformation-input-mask (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: hairy-transformation-input-rank (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: hairy-transformation-inverse (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: (setf hairy-transformation-inverse) (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: hairy-transformation-offsets (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: hairy-transformation-output-mask (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: hairy-transformation-output-rank (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: hairy-transformation-p (object)
Package

petalisp.core.

Source

transformation.lisp.

Function: hairy-transformation-scalings (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: identity-transformation-input-mask (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: identity-transformation-input-rank (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: identity-transformation-inverse (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: (setf identity-transformation-inverse) (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: identity-transformation-offsets (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: identity-transformation-output-mask (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: identity-transformation-output-rank (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: identity-transformation-scalings (instance)
Package

petalisp.core.

Source

transformation.lisp.

Function: indices-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: insert-axis-after (lazy-array axis k)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: insert-axis-before (lazy-array axis k)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: insert-copy-kernel (iteration-space target-buffer source-buffer)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: instruction-blueprints (kernel)
Package

petalisp.codegen.

Source

blueprint.lisp.

Reader: instruction-buffer (instance)
Writer: (setf instruction-buffer) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

buffer.

Function: interpret-kernel (kernel iteration-space targets sources environment)
Package

petalisp.codegen.

Source

lisp-interpreter.lisp.

Reader: invocation-iteration-space (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Target Slot

iteration-space.

Reader: invocation-kernel (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Target Slot

kernel.

Reader: invocation-kfn (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Target Slot

kfn.

Reader: invocation-sources (instance)
Writer: (setf invocation-sources) (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Target Slot

sources.

Reader: invocation-targets (instance)
Writer: (setf invocation-targets) (instance)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Target Slot

targets.

Function: invocationp (object)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: ir-backend-array (alist index)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Reader: ir-converter-array-table (instance)
Writer: (setf ir-converter-array-table) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

array-table.

Reader: ir-converter-buffer-dendrites-table (instance)
Writer: (setf ir-converter-buffer-dendrites-table) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

buffer-dendrites-table.

Reader: ir-converter-cluster-table (instance)
Writer: (setf ir-converter-cluster-table) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

cluster-table.

Reader: ir-converter-cons-updates (instance)
Writer: (setf ir-converter-cons-updates) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

cons-updates.

Function: ir-converter-empty-p (ir-converter)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: ir-converter-kernel-size-threshold (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

kernel-size-threshold.

Reader: ir-converter-leaf-alist (instance)
Writer: (setf ir-converter-leaf-alist) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

leaf-alist.

Function: ir-converter-next-cluster (ir-converter)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: ir-converter-p (object)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: ir-converter-potentially-superfluous-buffers (instance)
Writer: (setf ir-converter-potentially-superfluous-buffers) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

potentially-superfluous-buffers.

Reader: ir-converter-pqueue (instance)
Writer: (setf ir-converter-pqueue) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

pqueue.

Reader: ir-converter-scalar-table (instance)
Writer: (setf ir-converter-scalar-table) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

scalar-table.

Reader: ir-converter-unknown-table (instance)
Writer: (setf ir-converter-unknown-table) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

unknown-table.

Function: iref-instruction-inputs (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf iref-instruction-inputs) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: iref-instruction-number (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf iref-instruction-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: jacobi-test ()
Package

petalisp.test-suite.

Source

petalisp.examples.lisp.

Reader: kernel-data (instance)
Writer: (setf kernel-data) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

data.

Function: kernel-highest-instruction-number (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: kernel-number-of-inputs (kernel)
Package

petalisp.ir.

Source

ir.lisp.

Function: lazy-array-size-in-bytes (lazy-array)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: lazy-array-value (lazy-array index)
Package

petalisp.core.

Source

reference-backend.lisp.

Function: lazy-change-shape (lazy-array shape)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: lazy-change-shape/normalized (lazy-array output-shape)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: lazy-map-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: lazy-reduce-aux (function n-values inputs)
Package

petalisp.api.

Source

lazy-reduce.lisp.

Function: lazy-reshape-aux (lazy-array n-axes modifier)

An auxiliary function for LAZY-RESHAPE that processes a single modifier, and returns both the new lazy array and the new number of relevant axes obtained after applying the modifier.

Package

petalisp.api.

Source

lazy-reshape.lisp.

Function: lazy-reshape-aux/function (lazy-array n-axes function)
Package

petalisp.api.

Source

lazy-reshape.lisp.

Function: lazy-reshape-aux/integer (lazy-array n-axes integer)
Package

petalisp.api.

Source

lazy-reshape.lisp.

Function: lazy-reshape-aux/shape (lazy-array n-axes shape)
Package

petalisp.api.

Source

lazy-reshape.lisp.

Function: lazy-reshape-aux/transformation (lazy-array n-axes transformation)
Package

petalisp.api.

Source

lazy-reshape.lisp.

Function: lazy-sort-test ()
Package

petalisp.test-suite.

Source

petalisp.api.lisp.

Function: linear-algebra-test ()
Package

petalisp.test-suite.

Source

petalisp.examples.lisp.

Function: linux-host-device ()
Package

petalisp.ir.

Source

device.lisp.

Function: lisp-compile-blueprint (client blueprint)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: lisp-translate-blueprint (client blueprint)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: listify-range-for-printing (range)
Package

petalisp.api.

Source

shape-syntax.lisp.

Function: listify-shape-for-printing (shape)
Package

petalisp.api.

Source

shape-syntax.lisp.

Function: load-instruction-inputs (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf load-instruction-inputs) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: load-instruction-number (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf load-instruction-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: macro-name-p (symbol)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Function: make-action (&key copy-invocations work-invocations)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: make-ad-record (lazy-array)
Package

petalisp.api.

Source

differentiator.lisp.

Function: make-allocation (&key size-in-bytes category unboxed color)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: make-bpcall (&key level values function arguments)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpconstant (value)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpfunction (instruction-number)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpinfo (&key ranges indices targets sources functions ioffsets iscalings instructions levels)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpinstruction (&key level values)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpioffset (instruction-number)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpiref (&key level values offset scaling)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpiscaling (instruction-number)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpload (&key level values source index)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpmemref (&key ntype rank base start strides stencils)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bprange (&key start end step)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpstencil (&key center offsets scalings)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpstore (&key level values target index value)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpvalue (&key level ntype)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-bpvariable (&key level ntype name)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Function: make-broadcasting-transformation (source-shape target-shape &optional position)

Returns a transformation that maps every element of TARGET-SHAPE to an element of SOURCE-SHAPE. In case TARGET-SHAPE has a higher rank than SOURCE-SHAPE, insert additional axes at POSITION.

Package

petalisp.api.

Source

lazy-broadcast.lisp.

Function: make-buffer-shard (&key buffer parent domain shape readers writers split-priority-cache split storage)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-buffer-shard-queue ()
Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-call-form (function &rest arguments)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: make-call-instruction (number-of-values fnrecord inputs)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-cenv (backend unknowns lazy-arrays)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: make-cluster (lazy-array)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: make-cnode (&key neighbors object color colorset saturation degree queue-node)
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Function: make-compile-cache (&key table)
Package

petalisp.codegen.

Source

compile-cache.lisp.

Function: make-copy-invocation (iteration-space target source backend)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: make-delayed-failure (&key condition)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-fuse (&key inputs)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-map (&key fnrecord inputs)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-multiple-value-map (&key fnrecord inputs values-ntype refbits)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-nop (&key)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-nth-value (&key number input)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-range (&key)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-reshape (&key transformation input)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-unknown (&key)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-delayed-wait (&key request delayed-action)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-dendrite (cluster shape buffers)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: make-denv (cenv)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: make-double-float-generator (&key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-ghostspec (&key buffer left-padding-vec right-padding-vec pattern)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-identity-transformation (rank)
Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: make-integer-generator (&key min max)

Generate an integer between MIN (inclusive) and MAX (exclusive).

Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-invocation (&key kfn kernel iteration-space targets sources)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: make-ir-converter (&key pqueue cluster-table array-table scalar-table unknown-table leaf-alist cons-updates kernel-size-threshold potentially-superfluous-buffers buffer-dendrites-table)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: make-iref-instruction (transformation)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-kernel-shard (&key kernel iteration-space targets sources)

Returns a new kernel shard from the supplied keyword arguments. Ensure that this kernel shard appears in the list of writers of all of its target buffer shards, and in the list of readers of all its source buffer shards.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-lazy-array (&key shape ntype depth refcount delayed-action)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: make-lazy-array-generator (&key element-type element-generator shape-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-load-instruction (kernel buffer transformation)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-long-float-generator (&key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-matrix-generator (&key element-type element-generator size-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-node (&key kernel dependencies users fn)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Function: make-node (&key predecessor-alist successor-alist object depth height eagerness affinity counter position)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: make-non-empty-range (start step size)
Package

petalisp.core.

Source

range.lisp.

Function: make-pdfs-queue ()
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: make-prune (&key bits buffers)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: make-range (start end step)
Package

petalisp.core.

Source

range.lisp.

Function: make-range-generator (&key start-generator step-generator size-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-request (&key lock cvar done)
Package

petalisp.native-backend.

Source

request.lisp.

Function: make-shape-generator (&key rank-generator range-generator)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-short-float-generator (&key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-simulated-memory (allocation)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: make-single-float-generator (&key mean standard-deviation)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: make-split (&key axis position left-child right-child)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-split-queue ()
Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-stem (&key cluster kernel buffers validp)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: make-storage (&key offset strides ntype size ghost-layer-alist allocation)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-store-instruction (kernel input buffer transformation)
Package

petalisp.ir.

Source

ir.lisp.

Function: make-subset (&key elements weight)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: make-substitute-kernel (kernel)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: make-table-of-primes (size)
Package

petalisp.utilities.

Source

prime-factors.lisp.

Function: make-transform-transformation (input-mask output-mask functions variables forms)
Package

petalisp.api.

Source

transform.lisp.

Function: make-tuple (&key subsets weight)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: make-vicinity (&key left-neighbors-vec right-neighbors-vec)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: make-work-invocation (kernel-shard backend)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: make-worker-pool (size)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: maxdepth (lazy-arrays)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: maybe-add-to-stencil (instruction stencil)
Package

petalisp.ir.

Source

ir.lisp.

Function: maybe-prune (prune)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: merge-actions (action1 action2)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: mergeable-dendrites-p (d1 d2)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: message (format-string &rest arguments)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: mksym (fmt &rest args)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: multiple-arguments ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: native-backend-unpack (storage denv)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: ndarray (rank)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: network-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: next-bpvar (&key level ntype)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Reader: node-affinity (instance)
Writer: (setf node-affinity) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

affinity.

Reader: node-counter (instance)
Writer: (setf node-counter) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

counter.

Reader: node-dependencies (instance)
Writer: (setf node-dependencies) (instance)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Target Slot

dependencies.

Reader: node-eagerness (instance)
Writer: (setf node-eagerness) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

eagerness.

Reader: node-fn (instance)
Writer: (setf node-fn) (instance)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Target Slot

fn.

Reader: node-kernel (instance)
Writer: (setf node-kernel) (instance)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Target Slot

kernel.

Function: node-more-important-p (node1 node2)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Reader: node-object (instance)
Writer: (setf node-object) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

object.

Function: node-p (object)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Reader: node-position (instance)
Writer: (setf node-position) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

position.

Reader: node-users (instance)
Writer: (setf node-users) (instance)
Package

petalisp.codegen.

Source

ir-backend.lisp.

Target Slot

users.

Function: nth-prime-max-bits (n)
Package

petalisp.utilities.

Source

prime-factors.lisp.

Function: nth-prime-upper-bound (n)
Package

petalisp.utilities.

Source

prime-factors.lisp.

Function: ntype-bits-per-element (ntype)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: ntype-cpp-info (ntype &optional errorp)
Package

petalisp.codegen.

Source

cpp-from-lisp.lisp.

Function: ntype-cpp-translatable-p (ntype)
Package

petalisp.codegen.

Source

cpp-from-lisp.lisp.

Function: ntype-unboxed-p (ntype)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: parse-cache-type (string)
Package

petalisp.ir.

Source

device.lisp.

Function: parse-defwrapper-lambda-list (lambda-list)
Package

petalisp.test-suite.

Source

defgenerator.lisp.

Function: parse-integer-set (string)
Package

petalisp.ir.

Source

device.lisp.

Function: parse-shape (syntax)
Package

petalisp.api.

Source

shape-syntax.lisp.

Function: parse-shape-pattern (syntax)
Package

petalisp.api.

Source

shape-syntax.lisp.

Function: parse-size (string &key start end)
Package

petalisp.ir.

Source

device.lisp.

Function: parse-transform-inputs (inputs)
Package

petalisp.api.

Source

transform.lisp.

Function: parse-transform-output (output input-variables)
Package

petalisp.api.

Source

transform.lisp.

Function: parse-transform-outputs (outputs input-variables)
Package

petalisp.api.

Source

transform.lisp.

Function: partition-dendrites (dendrites)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: pass ()
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: pdfs-queue-increase-node-eagerness (pdfs-queue node increment)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: pdfs-queue-p (object)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: pdfs-queue-pop (pdfs-queue)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Reader: pdfs-queue-priority-queue (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

priority-queue.

Function: pdfs-queue-push (pdfs-queue node)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Function: pdfs-queue-size (pdfs-queue)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Reader: pdfs-queue-tmpnode (instance)
Writer: (setf pdfs-queue-tmpnode) (instance)
Package

petalisp.scheduling.

Source

scheduling.lisp.

Target Slot

tmpnode.

Function: pin-current-thread (cpu-number)

Ensure that the current thread will only run on the specified CPU. Returns whether the pinning was successful.

Package

petalisp.native-backend.

Source

pin-current-thread.lisp.

Function: potentially-superfluous-buffer-p (buffer dendrites)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: primogenitor-buffer-shard (buffer)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: print-package-statistics (package &optional stream)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Function: print-platform-information (&optional stream)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Function: print-system-statistics (system &optional stream)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Function: propagate-split (split)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: propagate-split/bmap (function kernel-shard axis position)

Map the supplied function over all split-worthy buffer shards neighboring the supplied kernel shard. At the same time, change the coordinate system from the supplied axis and position from to that of each buffer shard being mapped over and pass the resulting axis and position as additional arguments to the supplied function.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: propagate-split/kmap (function buffer-shard axis position)

Map the supplied function over all kernel shards neighboring the supplied buffer shard. At the same time, change the coordinate system from the supplied axis and position from to that of each kernel shard being mapped over and pass the resulting axis and position as additional arguments to the supplied function.

Package

petalisp.ir.

Source

partitioning.lisp.

Reader: prune-bits (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

bits.

Reader: prune-buffers (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

buffers.

Function: prune-p (object)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: prune-superfluous-buffers (potentially-superfluous-buffers)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: range-difference-list--contiguous (start1 last1 start2 last2 step2 make-range-fn)
Package

petalisp.core.

Source

range.lisp.

Function: range-difference-list--single (range index)
Package

petalisp.core.

Source

range.lisp.

Function: range-intersection-start-end-step (range1 range2)
Package

petalisp.core.

Source

range.lisp.

Function: range-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: ranges-blueprint (ranges)
Package

petalisp.codegen.

Source

blueprint.lisp.

Function: rbgs-test ()
Package

petalisp.test-suite.

Source

petalisp.examples.lisp.

Function: recompute-kernel-instruction-vector (kernel)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: recompute-program-task-vector (program)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: reduction-of-fusions ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: reduction-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: reference-to-delayed-unknown ()
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: refine-buffer-shard (iteration-space transformoid buffer-shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: refine-kernel-shard (kernel-shard)

Replace any of the kernel shard’s sources or targets that have one or more splits with the most specific buffer shard in that tree of splits that still provides all the data referenced by the kernel shard. Update the writers and readers slot of all affected buffers accordingly.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: refine-source (kernel-or-kernel-shard iteration-space source)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: refine-target (kernel-or-kernel-shard iteration-space target)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: register-free-variable (free-variable)
Package

petalisp.api.

Source

transform.lisp.

Function: relative-position (iteration-space transformoid axis position)

Returns either :LEFT, :RIGHT, or :BOTH, depending how the iteration space relates to the supplied transformoid.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: remove-axis-after (lazy-array axis)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: remove-axis-before (lazy-array axis)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: report (test-count pass-count)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Reader: request-cvar (instance)
Package

petalisp.native-backend.

Source

request.lisp.

Target Slot

cvar.

Reader: request-done (instance)
Writer: (setf request-done) (instance)
Package

petalisp.native-backend.

Source

request.lisp.

Target Slot

done.

Reader: request-lock (instance)
Package

petalisp.native-backend.

Source

request.lisp.

Target Slot

lock.

Function: reshape-randomly (array)
Package

petalisp.test-suite.

Source

generators.lisp.

Function: reshape-test ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: reshape/flatten (lazy-array start end)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: reshape/unflatten (lazy-array shape start end)
Package

petalisp.api.

Source

lazy-change-shape.lisp.

Function: result-variables (n)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: reverse-transform-axis-and-position (transformoid axis position)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: s16-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf s16-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: s32-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf s32-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: s64-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf s64-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: s8-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf s8-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: select-masked-elements (list bitmask)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Function: shape-strides (shape)
Package

petalisp.ir.

Source

partitioning.lisp.

Reader: shape-table-ht (instance)
Package

petalisp.core.

Source

shape.lisp.

Target Slot

ht.

Function: simplify-array (array)
Package

petalisp.core.

Source

lazy-array.lisp.

Function: simplify-input (input)
Package

petalisp.ir.

Source

ir.lisp.

Function: simulate-cenv-evaluation (cenv)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: simulate-storage-reference (storage shape)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Reader: simulated-memory-allocation (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

allocation.

Reader: simulated-memory-generation (instance)
Writer: (setf simulated-memory-generation) (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

generation.

Reader: simulated-memory-mode (instance)
Writer: (setf simulated-memory-mode) (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

mode.

Function: simulated-memory-p (object)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: simulated-memory-read-index (simulated-memory index)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: simulated-memory-read-shape (simulated-memory shape)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Reader: simulated-memory-table (instance)
Writer: (setf simulated-memory-table) (instance)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Target Slot

table.

Function: simulated-memory-write-index (simulated-memory index)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: simulated-memory-write-shape (simulated-memory shape)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Function: size-one-range-removing-transformation (shape)
Package

petalisp.core.

Source

transformation-constructors.lisp.

Function: split-more-important-p (split-1 split-2)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: split-queue-emptyp ()
Package

petalisp.ir.

Source

partitioning.lisp.

Function: split-queue-pop ()
Package

petalisp.ir.

Source

partitioning.lisp.

Function: split-queue-push (split)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: start-worker (worker)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Reader: stem-buffers (instance)
Writer: (setf stem-buffers) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

buffers.

Reader: stem-cluster (instance)
Writer: (setf stem-cluster) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

cluster.

Reader: stem-kernel (instance)
Writer: (setf stem-kernel) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

kernel.

Function: stem-p (object)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Reader: stem-validp (instance)
Writer: (setf stem-validp) (instance)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Target Slot

validp.

Function: stencil-instruction-offsets (stencil instruction)
Package

petalisp.codegen.

Source

blueprint.lisp.

Function: stencils-blueprint (stencils)
Package

petalisp.codegen.

Source

blueprint.lisp.

Function: storage-action (storage default)
Package

petalisp.native-backend.

Source

scheduling.lisp.

Function: storage-bind (storage allocation)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: storage-size-in-bytes (storage)
Package

petalisp.native-backend.

Source

allocation.lisp.

Function: store-instruction-inputs (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf store-instruction-inputs) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: store-instruction-number (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: (setf store-instruction-number) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Function: store-instruction-offsets (store-instruction)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: store-instruction-scalings (store-instruction)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Function: subdivide-fragments (old-fragments new-fragment)

Takes a list of fragments whose shapes are disjoint, and one new
fragment, and returns a list of disjoint fragments that partition both the old fragments and the new fragment. The resulting list consists of three parts:

1. For each old fragment that has an intersection with the new fragment, a fragment whose shape is that intersection, and whose mask is the LOGIOR of the mask of the old fragment and the mask of the new fragment.

2. For each old fragment, all elements of the fragment difference list of that fragment with the new fragment.

3. Fragments that, together, form the difference from the new fragment minus all the intersections from the first step.

Package

petalisp.core.

Source

shape.lisp.

Reader: subset-elements (instance)
Writer: (setf subset-elements) (instance)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Target Slot

elements.

Function: subset-p (object)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Reader: subset-weight (instance)
Writer: (setf subset-weight) (instance)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Target Slot

weight.

Function: subtract-fragment-lists (fragment-list1 fragment-list2)
Package

petalisp.core.

Source

shape.lisp.

Function: suffix-factor (suffix)
Package

petalisp.ir.

Source

device.lisp.

Function: sum-axis (array axis)
Package

petalisp.api.

Source

differentiator.lisp.

Function: sum-of-pairs ()
Package

petalisp.test-suite.

Source

petalisp.core.lisp.

Function: symbol-defined-p (symbol)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: symbol-methods (symbol)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Function: system-git-revision (system)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Function: system-source-file-pathnames (system)
Package

petalisp.test-suite.

Source

code-statistics.lisp.

Reader: task-defined-buffers (instance)
Writer: (setf task-defined-buffers) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

defined-buffers.

Reader: task-kernels (instance)
Writer: (setf task-kernels) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

kernels.

Reader: task-predecessors (instance)
Writer: (setf task-predecessors) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

predecessors.

Reader: task-successors (instance)
Writer: (setf task-successors) (instance)
Package

petalisp.ir.

Source

ir.lisp.

Target Slot

successors.

Function: touch (object)
Package

petalisp.utilities.

Source

with-pinned-objects.lisp.

Function: transform-axis-and-position (transformoid axis position)
Package

petalisp.ir.

Source

partitioning.lisp.

Function: transform-buffer (buffer transformation)
Package

petalisp.ir.

Source

ir.lisp.

Function: transform-kernel (kernel transformation)
Package

petalisp.ir.

Source

ir.lisp.

Function: transformation-input-symbol (position)
Package

petalisp.api.

Source

transform.lisp.

Reader: transformation-inverse (instance)
Writer: (setf transformation-inverse) (instance)
Package

petalisp.core.

Source

transformation.lisp.

Target Slot

inverse.

Function: trivial-object-p (object)

Returns whether the supplied OBJECT is an array, a lazy array that can be cheaply converted to an array, or a scalar.

Package

petalisp.core.

Source

lazy-array.lisp.

Function: trivial-object-value (object)

Returns the value of an OBJECT that is trivial in the sense of TRIVIAL-OBJECT-P.

Package

petalisp.core.

Source

lazy-array.lisp.

Function: tuple-from-object (object)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: tuple-p (object)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: tuple-subset (tuple index)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Reader: tuple-subsets (instance)
Writer: (setf tuple-subsets) (instance)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Target Slot

subsets.

Reader: tuple-weight (instance)
Writer: (setf tuple-weight) (instance)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Target Slot

weight.

Function: tuple> (tuple1 tuple2)
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Function: type-specifier-p (object)
Package

petalisp.test-suite.

Source

test-suite.lisp.

Function: u1-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf u1-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: u16-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf u16-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: u2-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf u2-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: u32-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf u32-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: u4-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf u4-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: u64-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf u64-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: u8-memref (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Function: (setf u8-memref) (pointer offset)
Package

petalisp.native-backend.

Source

compilation.lisp.

Ensure that no buffer shards reference this kernel shard.

Package

petalisp.ir.

Source

partitioning.lisp.

Function: v-cycle-test ()
Package

petalisp.test-suite.

Source

petalisp.examples.lisp.

Function: value-blueprint (value)
Package

petalisp.codegen.

Source

blueprint.lisp.

Reader: vicinity-left-neighbors-vec (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

left-neighbors-vec.

Reader: vicinity-right-neighbors-vec (instance)
Package

petalisp.ir.

Source

partitioning.lisp.

Target Slot

right-neighbors-vec.

Reader: worker-barrier-sense (instance)
Writer: (setf worker-barrier-sense) (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

barrier-sense.

Function: worker-enqueue (worker thunk)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: worker-evaluate (denv)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Reader: worker-id (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

id.

Function: worker-loop ()
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: worker-pool-active (worker-pool)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Reader: worker-pool-barrier-countdown (instance)
Writer: (setf worker-pool-barrier-countdown) (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

barrier-countdown.

Reader: worker-pool-barrier-sense (instance)
Writer: (setf worker-pool-barrier-sense) (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

barrier-sense.

Function: worker-pool-join (worker-pool)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Reader: worker-pool-liveness (instance)
Writer: (setf worker-pool-liveness) (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

liveness.

Function: worker-pool-p (object)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: worker-pool-size (worker-pool)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Function: worker-pool-worker (worker-pool worker-id)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Reader: worker-pool-workers (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

workers.

Reader: worker-queue (instance)
Writer: (setf worker-queue) (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

queue.

Reader: worker-serious-conditions (instance)
Writer: (setf worker-serious-conditions) (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

serious-conditions.

Function: worker-synchronize-and-invoke (denv invocations)
Package

petalisp.native-backend.

Source

evaluator.lisp.

Reader: worker-thread (instance)
Writer: (setf worker-thread) (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

thread.

Reader: worker-worker-pool (instance)
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Target Slot

worker-pool.

Function: workerp (object)
Package

petalisp.native-backend.

Source

worker-pool.lisp.


5.2.5 Generic functions

Generic Function: approximately-equal (a b)
Package

petalisp.test-suite.

Source

testing-backend.lisp.

Methods
Method: approximately-equal ((a double-float) (b double-float))
Method: approximately-equal ((a single-float) (b single-float))
Method: approximately-equal ((array-1 array) (array-2 array))
Method: approximately-equal (a b)
Method: approximately-equal ((a delayed-array) (b delayed-array))
Generic Reader: backend-worker-pool (backend)
Package

petalisp.native-backend.

Source

backend.lisp.

Methods
Reader Method: backend-worker-pool ((backend backend))

automatically generated reader method

Target Slot

%worker-pool.

Generic Function: bpinstruction-form (client bpinstruction)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Methods
Method: bpinstruction-form (client (bpcall bpcall))
Method: bpinstruction-form (client (bpload bpload))
Method: bpinstruction-form (client (bpstore bpstore))
Method: bpinstruction-form (client (bpiref bpiref))
Generic Function: bpvalue-form (client bpvalue)
Package

petalisp.codegen.

Source

lisp-compiler.lisp.

Methods
Method: bpvalue-form (client (bpconstant bpconstant))
Method: bpvalue-form (client (bpvariable bpvariable))
Generic Function: bpvalue= (v1 v2)
Package

petalisp.codegen.

Source

bpinfo.lisp.

Methods
Method: bpvalue= ((v1 bpvariable) (v2 bpvariable))
Method: bpvalue= ((v1 bpconstant) (v2 bpconstant))
Method: bpvalue= ((v1 bpvalue) (v2 bpvalue))
Generic Function: check-ir-node (node)
Package

petalisp.ir.

Source

ir-checker.lisp.

Methods
Method: check-ir-node ((task task))
Method: check-ir-node :after ((store-instruction store-instruction))
Method: check-ir-node ((instruction instruction))
Method: check-ir-node ((kernel kernel))
Method: check-ir-node ((buffer buffer))
Method: check-ir-node ((program program))
Method: check-ir-node :around (object)
Generic Function: check-shard (shard)
Package

petalisp.ir.

Source

partitioning.lisp.

Methods
Method: check-shard ((kernel-shard kernel-shard))
Method: check-shard ((buffer-shard buffer-shard))
Generic Function: clone-reference (value-n instruction kernel transformation)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Methods
Method: clone-reference ((value-n (eql 0)) (load-instruction load-instruction) (kernel kernel) (transformation transformation))
Method: clone-reference ((value-n (eql 0)) (iref-instruction iref-instruction) (kernel kernel) (transformation transformation))
Method: clone-reference ((value-n integer) (call-instruction call-instruction) (kernel kernel) (transformation transformation))
Generic Reader: compile-cache (object)
Package

petalisp.codegen.

Methods
Reader Method: compile-cache ((compile-cache-mixin compile-cache-mixin))

automatically generated reader method

Source

mixins.lisp.

Target Slot

%compile-cache.

Generic Function: compose-two-transformations (g f)
Package

petalisp.core.

Source

transformation.lisp.

Methods
Method: compose-two-transformations ((g hairy-transformation) (f hairy-transformation))
Method: compose-two-transformations ((g transformation) (f identity-transformation))
Method: compose-two-transformations ((g identity-transformation) (f transformation))
Method: compose-two-transformations :before ((g transformation) (f transformation))
Generic Function: convert-cluster (cluster lazy-array delayed-action)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Methods
Method: convert-cluster ((cluster cluster) (lazy-array lazy-array) (delayed-multiple-value-map delayed-multiple-value-map))
Method: convert-cluster ((cluster cluster) (lazy-array lazy-array) (delayed-action delayed-action))
Method: convert-cluster :around ((cluster cluster) (lazy-array lazy-array) (delayed-action delayed-action))
Generic Function: delayed-action-value (delayed-action index)
Package

petalisp.core.

Source

reference-backend.lisp.

Methods
Method: delayed-action-value ((delayed-failure delayed-failure) index)
Method: delayed-action-value ((delayed-unknown delayed-unknown) index)
Method: delayed-action-value ((delayed-nop delayed-nop) index)
Method: delayed-action-value ((delayed-array delayed-array) index)
Method: delayed-action-value ((delayed-range delayed-range) index)
Method: delayed-action-value ((delayed-fuse delayed-fuse) index)
Method: delayed-action-value ((delayed-reshape delayed-reshape) index)
Method: delayed-action-value ((delayed-nth-value delayed-nth-value) index)
Method: delayed-action-value ((delayed-multiple-value-map delayed-multiple-value-map) index)
Method: delayed-action-value ((delayed-map delayed-map) index)
Generic Function: grow-dendrite-aux (dendrite lazy-array delayed-action)
Package

petalisp.ir.

Source

ir-conversion.lisp.

Methods
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-failure delayed-failure))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-wait delayed-wait))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-unknown delayed-unknown))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-range delayed-range))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-array delayed-array))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-nth-value delayed-nth-value))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-map delayed-map))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-reshape delayed-reshape))
Method: grow-dendrite-aux ((dendrite dendrite) (lazy-array lazy-array) (delayed-fuse delayed-fuse))
Method: grow-dendrite-aux :around ((dendrite dendrite) (lazy-array lazy-array) (delayed-action delayed-action))
Generic Function: input-gradient (lazy-array delayed-action output-gradient index)
Package

petalisp.api.

Source

differentiator.lisp.

Methods
Method: input-gradient ((lazy-array lazy-array) (delayed-reshape delayed-reshape) (output-gradient lazy-array) (index (eql 0)))
Method: input-gradient ((lazy-array lazy-array) (delayed-fuse delayed-fuse) (output-gradient lazy-array) index)
Method: input-gradient ((lazy-array lazy-array) (delayed-map delayed-map) (output-gradient lazy-array) index)
Generic Function: instruction-blueprint (instruction kernel)
Package

petalisp.codegen.

Source

blueprint.lisp.

Methods
Method: instruction-blueprint ((iref-instruction iref-instruction) (kernel kernel))
Method: instruction-blueprint ((store-instruction store-instruction) (kernel kernel))
Method: instruction-blueprint ((load-instruction load-instruction) (kernel kernel))
Method: instruction-blueprint ((call-instruction call-instruction) (kernel kernel))
Generic Reader: ir-backend-compile-cache (object)
Package

petalisp.codegen.

Methods
Reader Method: ir-backend-compile-cache ((ir-backend ir-backend))

automatically generated reader method

Source

ir-backend.lisp.

Target Slot

%compile-cache.

Generic Reader: ir-backend-compiled (object)
Package

petalisp.test-suite.

Methods
Reader Method: ir-backend-compiled ((testing-backend testing-backend))

automatically generated reader method

Source

testing-backend.lisp.

Target Slot

%ir-backend-compiled.

Generic Reader: ir-backend-interpreted (object)
Package

petalisp.test-suite.

Methods
Reader Method: ir-backend-interpreted ((testing-backend testing-backend))

automatically generated reader method

Source

testing-backend.lisp.

Target Slot

%ir-backend-interpreted.

Generic Reader: ir-backend-mode (object)
Package

petalisp.codegen.

Methods
Reader Method: ir-backend-mode ((ir-backend ir-backend))

automatically generated reader method

Source

ir-backend.lisp.

Target Slot

%mode.

Generic Reader: memory-children-slot (object)
Package

petalisp.ir.

Methods
Reader Method: memory-children-slot ((memory memory))

automatically generated reader method

Source

device.lisp.

Target Slot

%children.

Generic Writer: (setf memory-children-slot) (object)
Package

petalisp.ir.

Methods
Writer Method: (setf memory-children-slot) ((memory memory))

automatically generated writer method

Source

device.lisp.

Target Slot

%children.

Generic Reader: memory-cores-slot (object)
Package

petalisp.ir.

Methods
Reader Method: memory-cores-slot ((memory memory))

automatically generated reader method

Source

device.lisp.

Target Slot

%cores.

Generic Writer: (setf memory-cores-slot) (object)
Package

petalisp.ir.

Methods
Writer Method: (setf memory-cores-slot) ((memory memory))

automatically generated writer method

Source

device.lisp.

Target Slot

%cores.

Generic Reader: native-backend (object)
Package

petalisp.test-suite.

Methods
Reader Method: native-backend ((testing-backend testing-backend))

automatically generated reader method

Source

testing-backend.lisp.

Target Slot

%native-backend.

Generic Reader: network-evaluator (object)
Package

petalisp.api.

Methods
Reader Method: network-evaluator ((network network))

automatically generated reader method

Source

network.lisp.

Target Slot

%evaluator.

Generic Reader: reference-backend (object)
Package

petalisp.test-suite.

Methods
Reader Method: reference-backend ((testing-backend testing-backend))

automatically generated reader method

Source

testing-backend.lisp.

Target Slot

%reference-backend.

Generic Reader: serious-conditions (condition)
Package

petalisp.native-backend.

Methods
Reader Method: serious-conditions ((condition evaluation-failure))
Source

evaluator.lisp.

Target Slot

%serious-conditions.

Generic Function: transform-instruction-input (instruction transformation)
Package

petalisp.ir.

Source

ir.lisp.

Methods
Method: transform-instruction-input ((instruction instruction) (transformation transformation))
Method: transform-instruction-input ((instruction iterating-instruction) (transformation transformation))
Generic Function: transform-instruction-output (instruction transformation)
Package

petalisp.ir.

Source

ir.lisp.

Methods
Method: transform-instruction-output ((instruction instruction) (transformation transformation))
Method: transform-instruction-output ((instruction iterating-instruction) (transformation transformation))
Generic Function: trivial-lazy-array-p (lazy-array delayed-action)

Returns whether the supplied LAZY-ARRAYS and its DELAYED-ACTION have a corresponding collapsed array that can be obtained cheaply.

Package

petalisp.core.

Source

lazy-array.lisp.

Methods
Method: trivial-lazy-array-p ((lazy-array lazy-array) (delayed-action delayed-action))
Method: trivial-lazy-array-p ((lazy-array lazy-array) (delayed-array delayed-array))
Method: trivial-lazy-array-p ((lazy-array lazy-array) (delayed-reshape delayed-reshape))
Generic Function: trivial-lazy-array-value (lazy-array delayed-action)

Obtain the array corresponding to the supplied LAZY-ARRAY, which must be trivial in the sense of TRIVIAL-LAZY-ARRAY-P.

Package

petalisp.core.

Source

lazy-array.lisp.

Methods
Method: trivial-lazy-array-value ((lazy-array lazy-array) (delayed-array delayed-array))
Method: trivial-lazy-array-value ((lazy-array lazy-array) (delayed-reshape delayed-reshape))

5.2.6 Conditions

Condition: evaluation-failure
Package

petalisp.native-backend.

Source

evaluator.lisp.

Direct superclasses

error.

Direct methods

serious-conditions.

Direct slots
Slot: %serious-conditions
Initform

(quote (alexandria:required-argument :serious-conditions))

Initargs

:serious-conditions

Readers

serious-conditions.

Writers

This slot is read-only.


5.2.7 Structures

Structure: action
Package

petalisp.native-backend.

Source

scheduling.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: copy-invocations
Type

list

Initform

(quote nil)

Readers

action-copy-invocations.

Writers

(setf action-copy-invocations).

Slot: work-invocations
Type

list

Initform

(quote nil)

Readers

action-work-invocations.

Writers

(setf action-work-invocations).

Structure: ad-record
Package

petalisp.api.

Source

differentiator.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: lazy-array
Package

petalisp.core.

Type

petalisp.core:lazy-array

Readers

ad-record-lazy-array.

Writers

This slot is read-only.

Slot: alist
Type

list

Readers

ad-record-alist.

Writers

(setf ad-record-alist).

Slot: output-gradient-cache
Type

(or null petalisp.core:lazy-array)

Readers

ad-record-output-gradient-cache.

Writers

(setf ad-record-output-gradient-cache).

Slot: input-gradient-caches
Type

vector

Readers

ad-record-input-gradient-caches.

Writers

(setf ad-record-input-gradient-caches).

Structure: allocation
Package

petalisp.native-backend.

Source

allocation.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: size-in-bytes
Type

unsigned-byte

Readers

allocation-size-in-bytes.

Writers

This slot is read-only.

Slot: category
Type

unsigned-byte

Readers

allocation-category.

Writers

(setf allocation-category).

Slot: unboxed
Type

boolean

Readers

allocation-unboxed.

Writers

(setf allocation-unboxed).

Slot: color
Type

unsigned-byte

Readers

allocation-color.

Writers

This slot is read-only.

Structure: bpcall
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpinstruction.

Direct methods

bpinstruction-form.

Direct slots
Slot: function
Package

common-lisp.

Type

(or petalisp.codegen::bpfunction petalisp.codegen::bpconstant)

Readers

bpcall-function.

Writers

This slot is read-only.

Slot: arguments
Type

(simple-array petalisp.codegen::bpvalue (*))

Initform

#()

Readers

bpcall-arguments.

Writers

This slot is read-only.

Structure: bpconstant
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpvalue.

Direct methods
Direct slots
Slot: value
Readers

bpconstant-value.

Writers

This slot is read-only.

Structure: bpfunction
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpinstinfo.

Structure: bpinfo
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: ranges
Type

(simple-array petalisp.codegen::bprange (*))

Readers

bpinfo-ranges.

Writers

This slot is read-only.

Slot: indices
Type

(simple-array petalisp.codegen::bpvalue (*))

Readers

bpinfo-indices.

Writers

This slot is read-only.

Slot: targets
Type

(simple-array petalisp.codegen::bpmemref (*))

Readers

bpinfo-targets.

Writers

This slot is read-only.

Slot: sources
Type

(simple-array petalisp.codegen::bpmemref (*))

Readers

bpinfo-sources.

Writers

This slot is read-only.

Slot: functions
Type

list

Readers

bpinfo-functions.

Writers

This slot is read-only.

Slot: ioffsets
Type

list

Readers

bpinfo-ioffsets.

Writers

This slot is read-only.

Slot: iscalings
Type

list

Readers

bpinfo-iscalings.

Writers

This slot is read-only.

Slot: instructions
Type

(simple-array petalisp.codegen::bpinstruction (*))

Readers

bpinfo-instructions.

Writers

This slot is read-only.

Slot: levels
Type

(simple-array list (*))

Readers

bpinfo-levels.

Writers

(setf bpinfo-levels).

Structure: bpinstinfo
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpvariable.

Direct subclasses
Direct slots
Slot: instruction-number
Package

petalisp.ir.

Type

unsigned-byte

Readers

bpinstinfo-instruction-number.

Writers

This slot is read-only.

Structure: bpinstruction
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct slots
Slot: level
Type

unsigned-byte

Readers

bpinstruction-level.

Writers

This slot is read-only.

Slot: values
Package

common-lisp.

Type

(simple-array petalisp.codegen::bpvariable (*))

Initform

#()

Readers

bpinstruction-values.

Writers

This slot is read-only.

Structure: bpioffset
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpinstinfo.

Structure: bpiref
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpinstruction.

Direct methods

bpinstruction-form.

Direct slots
Slot: offset
Type

petalisp.codegen::bpvariable

Readers

bpiref-offset.

Writers

This slot is read-only.

Slot: scaling
Type

petalisp.codegen::bpvalue

Readers

bpiref-scaling.

Writers

This slot is read-only.

Structure: bpiscaling
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpinstinfo.

Structure: bpload
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpinstruction.

Direct methods

bpinstruction-form.

Direct slots
Slot: source
Type

petalisp.codegen::bpmemref

Readers

bpload-source.

Writers

This slot is read-only.

Slot: index
Type

petalisp.codegen::bpvalue

Readers

bpload-index.

Writers

This slot is read-only.

Structure: bpmemref
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: ntype
Type

typo:ntype

Readers

bpmemref-ntype.

Writers

(setf bpmemref-ntype).

Slot: rank
Package

petalisp.core.

Type

petalisp.core:rank

Readers

bpmemref-rank.

Writers

(setf bpmemref-rank).

Slot: base
Type

petalisp.codegen::bpvariable

Readers

bpmemref-base.

Writers

(setf bpmemref-base).

Slot: start
Type

petalisp.codegen::bpvariable

Readers

bpmemref-start.

Writers

(setf bpmemref-start).

Slot: strides
Type

(simple-array petalisp.codegen::bpvalue (*))

Readers

bpmemref-strides.

Writers

(setf bpmemref-strides).

Slot: stencils
Type

(simple-array petalisp.codegen::bpstencil (*))

Readers

bpmemref-stencils.

Writers

(setf bpmemref-stencils).

Structure: bprange
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: start
Type

petalisp.codegen::bpvariable

Readers

bprange-start.

Writers

This slot is read-only.

Slot: end
Type

petalisp.codegen::bpvariable

Readers

bprange-end.

Writers

This slot is read-only.

Slot: step
Package

common-lisp.

Type

petalisp.codegen::bpvalue

Readers

bprange-step.

Writers

This slot is read-only.

Structure: bpstencil
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: center
Type

petalisp.codegen::bpvalue

Readers

bpstencil-center.

Writers

(setf bpstencil-center).

Slot: offsets
Type

(simple-array petalisp.codegen::bpvariable (*))

Readers

bpstencil-offsets.

Writers

This slot is read-only.

Slot: scalings
Type

(simple-array petalisp.codegen::bpvalue (*))

Readers

bpstencil-scalings.

Writers

This slot is read-only.

Structure: bpstore
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpinstruction.

Direct methods

bpinstruction-form.

Direct slots
Slot: target
Type

petalisp.codegen::bpmemref

Readers

bpstore-target.

Writers

This slot is read-only.

Slot: index
Type

petalisp.codegen::bpvalue

Readers

bpstore-index.

Writers

This slot is read-only.

Slot: value
Type

petalisp.codegen::bpvalue

Readers

bpstore-value.

Writers

This slot is read-only.

Structure: bpvalue
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods

bpvalue=.

Direct slots
Slot: level
Type

unsigned-byte

Initform

0

Readers

bpvalue-level.

Writers

This slot is read-only.

Slot: ntype
Type

typo:ntype

Initform

(typo:universal-ntype)

Readers

bpvalue-ntype.

Writers

This slot is read-only.

Structure: bpvariable
Package

petalisp.codegen.

Source

bpinfo.lisp.

Direct superclasses

bpvalue.

Direct subclasses

bpinstinfo.

Direct methods
Direct slots
Slot: name
Type

typo:variable-name

Readers

bpvariable-name.

Writers

This slot is read-only.

Structure: cenv
Package

petalisp.native-backend.

Source

evaluator.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: backend
Type

petalisp.native-backend::backend

Readers

cenv-backend.

Writers

This slot is read-only.

Slot: schedule
Type

list

Readers

cenv-schedule.

Writers

This slot is read-only.

Slot: result-shapes
Type

(simple-array petalisp.core:shape (*))

Readers

cenv-result-shapes.

Writers

This slot is read-only.

Slot: result-ntypes
Type

(simple-array typo:ntype (*))

Readers

cenv-result-ntypes.

Writers

This slot is read-only.

Slot: argument-shapes
Type

(simple-array petalisp.core:shape (*))

Readers

cenv-argument-shapes.

Writers

This slot is read-only.

Slot: argument-ntypes
Type

(simple-array typo:ntype (*))

Readers

cenv-argument-ntypes.

Writers

This slot is read-only.

Slot: constant-arrays
Type

(simple-array array (*))

Readers

cenv-constant-arrays.

Writers

This slot is read-only.

Slot: constant-storage-vectors
Type

(simple-array vector (*))

Readers

cenv-constant-storage-vectors.

Writers

This slot is read-only.

Slot: allocations
Type

(simple-array simple-vector (*))

Readers

cenv-allocations.

Writers

This slot is read-only.

Structure: cgraph
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: table
Initform

(make-hash-table)

Readers

cgraph-table.

Writers

(setf cgraph-table).

Structure: cluster
Package

petalisp.ir.

Source

ir-conversion.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: lazy-array
Package

petalisp.core.

Type

petalisp.core:lazy-array

Readers

cluster-lazy-array.

Writers

(setf cluster-lazy-array).

Slot: dendrites
Type

list

Initform

(quote nil)

Readers

cluster-dendrites.

Writers

(setf cluster-dendrites).

Structure: cnode
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: neighbors
Type

list

Initform

(quote nil)

Readers

cnode-neighbors.

Writers

(setf cnode-neighbors).

Slot: object
Initform

(alexandria:required-argument :object)

Readers

cnode-object.

Writers

This slot is read-only.

Slot: color
Type

(or petalisp.utilities::color null)

Readers

cnode-color.

Writers

(setf cnode-color).

Slot: colorset
Type

petalisp.utilities::colorset

Initform

petalisp.utilities::+empty-colorset+

Readers

cnode-colorset.

Writers

(setf cnode-colorset).

Slot: saturation
Type

(and unsigned-byte fixnum)

Initform

0

Readers

cnode-saturation.

Writers

(setf cnode-saturation).

Slot: degree
Type

(and unsigned-byte fixnum)

Initform

0

Readers

cnode-degree.

Writers

(setf cnode-degree).

Slot: queue-node
Readers

cnode-queue-node.

Writers

(setf cnode-queue-node).

Structure: compile-cache
Package

petalisp.codegen.

Source

compile-cache.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: table
Type

hash-table

Initform

(make-hash-table :test (function eql) :synchronized t)

Readers

compile-cache-table.

Writers

This slot is read-only.

Structure: dendrite
Package

petalisp.ir.

Source

ir-conversion.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: stem
Type

petalisp.ir::stem

Readers

dendrite-stem.

Writers

(setf dendrite-stem).

Slot: shape
Package

petalisp.core.

Type

petalisp.core:shape

Readers

dendrite-shape.

Writers

(setf dendrite-shape).

Slot: transformation
Package

petalisp.core.

Type

petalisp.core:transformation

Readers

dendrite-transformation.

Writers

(setf dendrite-transformation).

Slot: depth
Type

unsigned-byte

Readers

dendrite-depth.

Writers

(setf dendrite-depth).

Slot: cons
Package

common-lisp.

Type

cons

Readers

dendrite-cons.

Writers

(setf dendrite-cons).

Structure: denv
Package

petalisp.native-backend.

Source

evaluator.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: cenv
Type

petalisp.native-backend::cenv

Initform

(alexandria:required-argument :cenv)

Readers

denv-cenv.

Writers

This slot is read-only.

Slot: result-arrays
Type

(simple-array array (*))

Initform

(alexandria:required-argument :result-arrays)

Readers

denv-result-arrays.

Writers

This slot is read-only.

Slot: pointers
Type

(simple-array simple-vector (*))

Readers

denv-pointers.

Writers

This slot is read-only.

Slot: serious-conditions
Type

list

Readers

denv-serious-conditions.

Writers

(setf denv-serious-conditions).

Slot: serious-condition-lock
Type

bordeaux-threads-2:lock

Initform

(bordeaux-threads-2:make-lock :name "denv serious condition lock")

Readers

denv-serious-condition-lock.

Writers

(setf denv-serious-condition-lock).

Slot: request
Type

petalisp.native-backend::request

Readers

denv-request.

Writers

(setf denv-request).

Structure: ghostspec
Package

petalisp.ir.

Source

partitioning.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: buffer
Type

petalisp.ir:buffer

Readers

ghostspec-buffer.

Writers

This slot is read-only.

Slot: left-padding-vec
Type

simple-vector

Readers

ghostspec-left-padding-vec.

Writers

This slot is read-only.

Slot: right-padding-vec
Type

simple-vector

Readers

ghostspec-right-padding-vec.

Writers

This slot is read-only.

Slot: pattern
Type

(simple-array bit)

Readers

ghostspec-pattern.

Writers

This slot is read-only.

Structure: hairy-transformation
Package

petalisp.core.

Source

transformation.lisp.

Direct superclasses

transformation.

Direct methods
Structure: invocation
Package

petalisp.native-backend.

Source

scheduling.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: kfn
Type

function

Readers

invocation-kfn.

Writers

This slot is read-only.

Slot: kernel
Package

petalisp.ir.

Type

petalisp.ir:kernel

Readers

invocation-kernel.

Writers

This slot is read-only.

Slot: iteration-space
Type

petalisp.core:shape

Readers

invocation-iteration-space.

Writers

This slot is read-only.

Slot: targets
Package

petalisp.ir.

Type

(simple-array petalisp.ir:storage (*))

Readers

invocation-targets.

Writers

(setf invocation-targets).

Slot: sources
Package

petalisp.ir.

Type

(simple-array petalisp.ir:storage (*))

Readers

invocation-sources.

Writers

(setf invocation-sources).

Structure: ir-converter
Package

petalisp.ir.

Source

ir-conversion.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: pqueue
Initform

(priority-queue:make-pqueue (function >))

Readers

ir-converter-pqueue.

Writers

(setf ir-converter-pqueue).

Slot: cluster-table
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

ir-converter-cluster-table.

Writers

(setf ir-converter-cluster-table).

Slot: array-table
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

ir-converter-array-table.

Writers

(setf ir-converter-array-table).

Slot: scalar-table
Type

hash-table

Initform

(make-hash-table :test (function eql))

Readers

ir-converter-scalar-table.

Writers

(setf ir-converter-scalar-table).

Slot: unknown-table
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

ir-converter-unknown-table.

Writers

(setf ir-converter-unknown-table).

Slot: leaf-alist
Type

list

Initform

(quote nil)

Readers

ir-converter-leaf-alist.

Writers

(setf ir-converter-leaf-alist).

Slot: cons-updates
Type

list

Initform

(quote nil)

Readers

ir-converter-cons-updates.

Writers

(setf ir-converter-cons-updates).

Slot: kernel-size-threshold
Type

unsigned-byte

Readers

ir-converter-kernel-size-threshold.

Writers

This slot is read-only.

Slot: potentially-superfluous-buffers
Type

list

Initform

(quote nil)

Readers

ir-converter-potentially-superfluous-buffers.

Writers

(setf ir-converter-potentially-superfluous-buffers).

Slot: buffer-dendrites-table
Type

hash-table

Initform

(make-hash-table :test (function eq))

Readers

ir-converter-buffer-dendrites-table.

Writers

(setf ir-converter-buffer-dendrites-table).

Structure: node
Package

petalisp.codegen.

Source

ir-backend.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: kernel
Package

petalisp.ir.

Type

petalisp.ir:kernel

Readers

node-kernel.

Writers

(setf node-kernel).

Slot: dependencies
Type

list

Initform

(quote nil)

Readers

node-dependencies.

Writers

(setf node-dependencies).

Slot: users
Type

list

Initform

(quote nil)

Readers

node-users.

Writers

(setf node-users).

Slot: fn
Type

(or function null)

Readers

node-fn.

Writers

(setf node-fn).

Structure: pdfs-queue
Package

petalisp.scheduling.

Source

scheduling.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: priority-queue
Type

queues:priority-queue

Initform

(queues:make-queue :priority-queue :compare (function petalisp.scheduling::node-more-important-p))

Readers

pdfs-queue-priority-queue.

Writers

This slot is read-only.

Slot: tmpnode
Type

petalisp.scheduling:node

Initform

(petalisp.scheduling::make-node)

Readers

pdfs-queue-tmpnode.

Writers

(setf pdfs-queue-tmpnode).

Structure: prune
Package

petalisp.ir.

Source

ir-conversion.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: bits
Type

unsigned-byte

Readers

prune-bits.

Writers

This slot is read-only.

Slot: buffers
Type

list

Initform

(quote nil)

Readers

prune-buffers.

Writers

This slot is read-only.

Structure: request
Package

petalisp.native-backend.

Source

request.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: lock
Initform

(bordeaux-threads-2:make-lock)

Readers

request-lock.

Writers

This slot is read-only.

Slot: cvar
Initform

(bordeaux-threads-2:make-condition-variable)

Readers

request-cvar.

Writers

This slot is read-only.

Slot: done
Type

boolean

Readers

request-done.

Writers

(setf request-done).

Structure: simulated-memory
Package

petalisp.native-backend.

Source

evaluator.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: allocation
Type

petalisp.native-backend::allocation

Readers

simulated-memory-allocation.

Writers

This slot is read-only.

Slot: table
Type

hash-table

Initform

(make-hash-table :test (function equal))

Readers

simulated-memory-table.

Writers

(setf simulated-memory-table).

Slot: generation
Type

unsigned-byte

Initform

0

Readers

simulated-memory-generation.

Writers

(setf simulated-memory-generation).

Slot: mode
Type

(member :r :w)

Initform

:w

Readers

simulated-memory-mode.

Writers

(setf simulated-memory-mode).

Structure: stem
Package

petalisp.ir.

Source

ir-conversion.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: cluster
Type

petalisp.ir::cluster

Readers

stem-cluster.

Writers

(setf stem-cluster).

Slot: kernel
Type

petalisp.ir:kernel

Readers

stem-kernel.

Writers

(setf stem-kernel).

Slot: buffers
Type

list

Readers

stem-buffers.

Writers

(setf stem-buffers).

Slot: validp
Type

boolean

Initform

t

Readers

stem-validp.

Writers

(setf stem-validp).

Structure: subset
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: elements
Type

list

Initform

(quote nil)

Readers

subset-elements.

Writers

(setf subset-elements).

Slot: weight
Type

real

Initform

0

Readers

subset-weight.

Writers

(setf subset-weight).

Structure: tuple
Package

petalisp.karmarkar-karp.

Source

karmarkar-karp.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: subsets
Type

simple-vector

Initform

#()

Readers

tuple-subsets.

Writers

(setf tuple-subsets).

Slot: weight
Type

number

Initform

0

Readers

tuple-weight.

Writers

(setf tuple-weight).

Structure: worker
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: worker-pool
Type

petalisp.native-backend::worker-pool

Readers

worker-worker-pool.

Writers

This slot is read-only.

Slot: id
Type

petalisp.native-backend::worker-id

Readers

worker-id.

Writers

This slot is read-only.

Slot: thread
Type

(or bordeaux-threads-2:thread null)

Readers

worker-thread.

Writers

(setf worker-thread).

Slot: queue
Initform

(lparallel.queue:make-queue)

Readers

worker-queue.

Writers

(setf worker-queue).

Slot: barrier-sense
Type

(member :a :b)

Initform

:b

Readers

worker-barrier-sense.

Writers

(setf worker-barrier-sense).

Slot: serious-conditions
Type

list

Initform

(quote nil)

Readers

worker-serious-conditions.

Writers

(setf worker-serious-conditions).

Structure: worker-pool
Package

petalisp.native-backend.

Source

worker-pool.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: workers
Type

simple-vector

Readers

worker-pool-workers.

Writers

This slot is read-only.

Slot: liveness
Initform

(bordeaux-threads-2:make-atomic-integer :value 1)

Readers

worker-pool-liveness.

Writers

(setf worker-pool-liveness).

Slot: barrier-sense
Type

(member :a :b)

Initform

:a

Readers

worker-pool-barrier-sense.

Writers

(setf worker-pool-barrier-sense).

Slot: barrier-countdown
Readers

worker-pool-barrier-countdown.

Writers

(setf worker-pool-barrier-countdown).


5.2.8 Classes

Class: backend
Package

petalisp.native-backend.

Source

backend.lisp.

Direct superclasses
Direct methods
Direct slots
Slot: %worker-pool
Type

petalisp.native-backend::worker-pool

Initform

(alexandria:required-argument :worker-pool)

Initargs

:worker-pool

Readers

backend-worker-pool.

Writers

This slot is read-only.

Class: backend-stats
Package

petalisp.core.

Source

backend.lisp.

Class: completed-request
Package

petalisp.core.

Source

backend.lisp.

Direct superclasses

request.

Direct methods
Class: deleted-backend
Package

petalisp.core.

Source

backend.lisp.

Class: ir-backend
Package

petalisp.codegen.

Source

ir-backend.lisp.

Direct superclasses

backend.

Direct methods
Direct slots
Slot: %mode
Type

(member :interpreted :compiled)

Initform

:interpreted

Initargs

:mode

Readers

ir-backend-mode.

Writers

This slot is read-only.

Slot: %compile-cache
Type

hash-table

Initform

(make-hash-table)

Readers

ir-backend-compile-cache.

Writers

This slot is read-only.

Class: reference-backend
Package

petalisp.core.

Source

reference-backend.lisp.

Direct superclasses

backend.

Direct methods

backend-compute.

Class: testing-backend
Package

petalisp.test-suite.

Source

testing-backend.lisp.

Direct superclasses

backend.

Direct methods
Direct slots
Slot: %reference-backend
Initform

(petalisp.core:make-reference-backend)

Readers

reference-backend.

Writers

This slot is read-only.

Slot: %ir-backend-interpreted
Initform

(petalisp.codegen:make-ir-backend :mode :interpreted)

Readers

ir-backend-interpreted.

Writers

This slot is read-only.

Slot: %ir-backend-compiled
Initform

(petalisp.codegen:make-ir-backend :mode :compiled)

Readers

ir-backend-compiled.

Writers

This slot is read-only.

Slot: %native-backend
Initform

(petalisp.native-backend:make-native-backend :debug t)

Readers

native-backend.

Writers

This slot is read-only.


5.2.9 Types

Type: clp2-fixnum ()
Package

petalisp.utilities.

Source

powers-of-two.lisp.

Type: color ()
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Type: colorset ()
Package

petalisp.utilities.

Source

graph-coloring.lisp.

Type: shape-syntax-delimiter ()
Package

petalisp.api.

Source

shape-syntax.lisp.

Type: small-fixnum ()
Package

petalisp.utilities.

Source

extended-euclid.lisp.

Type: small-non-negative-fixnum ()
Package

petalisp.utilities.

Source

extended-euclid.lisp.

Type: worker-id ()
Package

petalisp.native-backend.

Source

worker-pool.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (   ~  
A   B   C   D   E   F   G   H   I   J   K   L   M   N   P   R   S   T   U   V   W  
Index Entry  Section

%
%make-cenv: Private ordinary functions
%make-delayed-array: Private ordinary functions
%make-delayed-fuse: Private ordinary functions
%make-delayed-map: Private ordinary functions
%make-delayed-multiple-value-map: Private ordinary functions
%make-delayed-nth-value: Private ordinary functions
%make-delayed-reshape: Private ordinary functions
%make-dendrite: Private ordinary functions
%make-denv: Private ordinary functions
%make-empty-range: Private ordinary functions
%make-hairy-transformation: Private ordinary functions
%make-identity-transformation: Private ordinary functions
%make-kernel-shard: Private ordinary functions
%make-load-instruction: Private ordinary functions
%make-shape: Private ordinary functions
%make-stencil: Private ordinary functions
%make-store-instruction: Private ordinary functions
%make-worker: Private ordinary functions
%make-worker-pool: Private ordinary functions
%requestp: Private ordinary functions

(
(setf action-copy-invocations): Private ordinary functions
(setf action-work-invocations): Private ordinary functions
(setf ad-record-alist): Private ordinary functions
(setf ad-record-input-gradient-caches): Private ordinary functions
(setf ad-record-output-gradient-cache): Private ordinary functions
(setf allocation-category): Private ordinary functions
(setf allocation-unboxed): Private ordinary functions
(setf backend-debug-flag): Public generic functions
(setf backend-debug-flag): Public generic functions
(setf base-char-memref): Private ordinary functions
(setf bpinfo-levels): Private ordinary functions
(setf bpmemref-base): Private ordinary functions
(setf bpmemref-ntype): Private ordinary functions
(setf bpmemref-rank): Private ordinary functions
(setf bpmemref-start): Private ordinary functions
(setf bpmemref-stencils): Private ordinary functions
(setf bpmemref-strides): Private ordinary functions
(setf bpstencil-center): Private ordinary functions
(setf buffer-depth): Public ordinary functions
(setf buffer-ntype): Public ordinary functions
(setf buffer-number): Public ordinary functions
(setf buffer-readers): Private ordinary functions
(setf buffer-shape): Public ordinary functions
(setf buffer-shard-readers): Public ordinary functions
(setf buffer-shard-split): Public ordinary functions
(setf buffer-shard-split-priority-cache): Private ordinary functions
(setf buffer-shard-storage): Public ordinary functions
(setf buffer-shard-writers): Public ordinary functions
(setf buffer-storage): Public ordinary functions
(setf buffer-task): Public ordinary functions
(setf buffer-writers): Private ordinary functions
(setf c128-memref): Private ordinary functions
(setf c64-memref): Private ordinary functions
(setf call-instruction-fnrecord): Public ordinary functions
(setf call-instruction-inputs): Public ordinary functions
(setf call-instruction-number): Private ordinary functions
(setf call-instruction-number-of-values): Public ordinary functions
(setf cgraph-table): Private ordinary functions
(setf character-memref): Private ordinary functions
(setf cluster-dendrites): Private ordinary functions
(setf cluster-lazy-array): Private ordinary functions
(setf cnode-color): Private ordinary functions
(setf cnode-colorset): Private ordinary functions
(setf cnode-degree): Private ordinary functions
(setf cnode-neighbors): Private ordinary functions
(setf cnode-queue-node): Private ordinary functions
(setf cnode-saturation): Private ordinary functions
(setf cqueue-h-lock): Private ordinary functions
(setf cqueue-head): Private ordinary functions
(setf cqueue-t-lock): Private ordinary functions
(setf cqueue-tail): Private ordinary functions
(setf delayed-array-storage): Public ordinary functions
(setf delayed-fuse-inputs): Public ordinary functions
(setf delayed-map-fnrecord): Public ordinary functions
(setf delayed-map-inputs): Public ordinary functions
(setf delayed-multiple-value-map-fnrecord): Public ordinary functions
(setf delayed-multiple-value-map-inputs): Public ordinary functions
(setf delayed-multiple-value-map-refbits): Public ordinary functions
(setf delayed-multiple-value-map-refbits-lock): Private ordinary functions
(setf delayed-nth-value-input): Public ordinary functions
(setf delayed-nth-value-number): Public ordinary functions
(setf delayed-reshape-input): Public ordinary functions
(setf delayed-reshape-transformation): Public ordinary functions
(setf delayed-wait-delayed-action): Public ordinary functions
(setf dendrite-cons): Private ordinary functions
(setf dendrite-depth): Private ordinary functions
(setf dendrite-shape): Private ordinary functions
(setf dendrite-stem): Private ordinary functions
(setf dendrite-transformation): Private ordinary functions
(setf denv-request): Private ordinary functions
(setf denv-serious-condition-lock): Private ordinary functions
(setf denv-serious-conditions): Private ordinary functions
(setf f32-memref): Private ordinary functions
(setf f64-memref): Private ordinary functions
(setf graph-object-nodes): Public ordinary functions
(setf hairy-transformation-inverse): Private ordinary functions
(setf identity-transformation-inverse): Private ordinary functions
(setf instruction-buffer): Private ordinary functions
(setf instruction-inputs): Public ordinary functions
(setf instruction-number): Public ordinary functions
(setf instruction-transformation): Public ordinary functions
(setf invocation-sources): Private ordinary functions
(setf invocation-targets): Private ordinary functions
(setf ir-converter-array-table): Private ordinary functions
(setf ir-converter-buffer-dendrites-table): Private ordinary functions
(setf ir-converter-cluster-table): Private ordinary functions
(setf ir-converter-cons-updates): Private ordinary functions
(setf ir-converter-leaf-alist): Private ordinary functions
(setf ir-converter-potentially-superfluous-buffers): Private ordinary functions
(setf ir-converter-pqueue): Private ordinary functions
(setf ir-converter-scalar-table): Private ordinary functions
(setf ir-converter-unknown-table): Private ordinary functions
(setf iref-instruction-inputs): Private ordinary functions
(setf iref-instruction-number): Private ordinary functions
(setf iref-instruction-transformation): Public ordinary functions
(setf kernel-data): Private ordinary functions
(setf kernel-instruction-vector): Public ordinary functions
(setf kernel-iteration-space): Public ordinary functions
(setf kernel-number): Public ordinary functions
(setf kernel-shard-sources): Public ordinary functions
(setf kernel-shard-targets): Public ordinary functions
(setf kernel-sources): Public ordinary functions
(setf kernel-targets): Public ordinary functions
(setf kernel-task): Public ordinary functions
(setf lazy-array-delayed-action): Public ordinary functions
(setf lazy-array-refcount): Public ordinary functions
(setf load-instruction-buffer): Public ordinary functions
(setf load-instruction-inputs): Private ordinary functions
(setf load-instruction-number): Private ordinary functions
(setf load-instruction-transformation): Public ordinary functions
(setf memory-children-slot): Private generic functions
(setf memory-children-slot): Private generic functions
(setf memory-cores-slot): Private generic functions
(setf memory-cores-slot): Private generic functions
(setf node-affinity): Private ordinary functions
(setf node-counter): Private ordinary functions
(setf node-dependencies): Private ordinary functions
(setf node-depth): Public ordinary functions
(setf node-eagerness): Private ordinary functions
(setf node-fn): Private ordinary functions
(setf node-height): Public ordinary functions
(setf node-kernel): Private ordinary functions
(setf node-object): Private ordinary functions
(setf node-position): Private ordinary functions
(setf node-predecessor-alist): Public ordinary functions
(setf node-successor-alist): Public ordinary functions
(setf node-users): Private ordinary functions
(setf pdfs-queue-tmpnode): Private ordinary functions
(setf program-final-task): Public ordinary functions
(setf program-initial-task): Public ordinary functions
(setf program-leaf-alist): Public ordinary functions
(setf program-number-of-buffers): Public ordinary functions
(setf program-number-of-kernels): Public ordinary functions
(setf program-root-buffers): Public ordinary functions
(setf program-task-vector): Public ordinary functions
(setf request-done): Private ordinary functions
(setf s16-memref): Private ordinary functions
(setf s32-memref): Private ordinary functions
(setf s64-memref): Private ordinary functions
(setf s8-memref): Private ordinary functions
(setf shape-table-value): Public ordinary functions
(setf simulated-memory-generation): Private ordinary functions
(setf simulated-memory-mode): Private ordinary functions
(setf simulated-memory-table): Private ordinary functions
(setf stem-buffers): Private ordinary functions
(setf stem-cluster): Private ordinary functions
(setf stem-kernel): Private ordinary functions
(setf stem-validp): Private ordinary functions
(setf stencil-center): Public ordinary functions
(setf stencil-instructions): Public ordinary functions
(setf storage-allocation): Public ordinary functions
(setf storage-ghost-layer-alist): Public ordinary functions
(setf store-instruction-buffer): Public ordinary functions
(setf store-instruction-inputs): Private ordinary functions
(setf store-instruction-number): Private ordinary functions
(setf store-instruction-transformation): Public ordinary functions
(setf subset-elements): Private ordinary functions
(setf subset-weight): Private ordinary functions
(setf task-defined-buffers): Private ordinary functions
(setf task-kernels): Private ordinary functions
(setf task-number): Public ordinary functions
(setf task-predecessors): Private ordinary functions
(setf task-program): Public ordinary functions
(setf task-successors): Private ordinary functions
(setf transformation-inverse): Private ordinary functions
(setf tuple-subsets): Private ordinary functions
(setf tuple-weight): Private ordinary functions
(setf u1-memref): Private ordinary functions
(setf u16-memref): Private ordinary functions
(setf u2-memref): Private ordinary functions
(setf u32-memref): Private ordinary functions
(setf u4-memref): Private ordinary functions
(setf u64-memref): Private ordinary functions
(setf u8-memref): Private ordinary functions
(setf worker-barrier-sense): Private ordinary functions
(setf worker-pool-barrier-countdown): Private ordinary functions
(setf worker-pool-barrier-sense): Private ordinary functions
(setf worker-pool-liveness): Private ordinary functions
(setf worker-queue): Private ordinary functions
(setf worker-serious-conditions): Private ordinary functions
(setf worker-thread): Private ordinary functions

~
~: Public ordinary functions
~*: Public ordinary functions

A
action-copy-invocations: Private ordinary functions
action-work-invocations: Private ordinary functions
actionp: Private ordinary functions
ad-record-alist: Private ordinary functions
ad-record-input-gradient: Private ordinary functions
ad-record-input-gradient-cache: Private macros
ad-record-input-gradient-caches: Private ordinary functions
ad-record-lazy-array: Private ordinary functions
ad-record-output-gradient: Private ordinary functions
ad-record-output-gradient-cache: Private ordinary functions
add-child-kernel-shard: Private ordinary functions
add-transformation-constraints: Private ordinary functions
all-tests: Public ordinary functions
allocate-memory: Private ordinary functions
allocation-category: Private ordinary functions
allocation-color: Private ordinary functions
allocation-size-in-bytes: Private ordinary functions
allocation-unboxed: Private ordinary functions
allocationp: Private ordinary functions
approximately-equal: Private generic functions
approximately-equal: Private generic functions
approximately-equal: Private generic functions
approximately-equal: Private generic functions
approximately-equal: Private generic functions
approximately-equal: Private generic functions
argument-variables: Private ordinary functions
array-element-test: Private ordinary functions
array-has-shape-p: Public ordinary functions
array-shape: Public ordinary functions
array-size-in-bytes: Private ordinary functions
array-storage-pointer: Private ordinary functions
array-storage-vector: Private ordinary functions
array-value: Public ordinary functions
assign-storage: Private ordinary functions
assign-storage-ghost-layer-alist: Private ordinary functions
attempt-split: Private ordinary functions

B
backend-compute: Public generic functions
backend-compute: Public generic functions
backend-compute: Public generic functions
backend-compute: Public generic functions
backend-compute: Public generic functions
backend-compute: Public generic functions
backend-compute-asynchronously: Public generic functions
backend-compute-asynchronously: Public generic functions
backend-compute-asynchronously: Public generic functions
backend-debug-flag: Public generic functions
backend-debug-flag: Public generic functions
backend-evaluator: Public generic functions
backend-evaluator: Public generic functions
backend-evaluator: Public generic functions
backend-evaluator: Public generic functions
backend-evaluator: Public generic functions
backend-worker-pool: Private generic functions
backend-worker-pool: Private generic functions
backendp: Public generic functions
backendp: Public generic functions
backendp: Public generic functions
barrier: Private ordinary functions
base-char-memref: Private ordinary functions
bind: Private macros
bind-argument: Private ordinary functions
bind-result: Private ordinary functions
blueprint-bpinfo: Private ordinary functions
blueprint-cpp-translatable-p: Private ordinary functions
bpcall: Private ordinary functions
bpcall-argument: Private ordinary functions
bpcall-arguments: Private ordinary functions
bpcall-function: Private ordinary functions
bpcall-level: Private ordinary functions
bpcall-value: Private ordinary functions
bpcall-values: Private ordinary functions
bpcallp: Private ordinary functions
bpconstant-level: Private ordinary functions
bpconstant-ntype: Private ordinary functions
bpconstant-value: Private ordinary functions
bpconstantp: Private ordinary functions
bpeval: Private ordinary functions
bpfunction-instruction-number: Private ordinary functions
bpfunction-level: Private ordinary functions
bpfunction-name: Private ordinary functions
bpfunction-ntype: Private ordinary functions
bpfunctionp: Private ordinary functions
bpindex*: Private ordinary functions
bpindex+: Private ordinary functions
bpinfo-cpp-arguments: Private ordinary functions
bpinfo-functions: Private ordinary functions
bpinfo-indices: Private ordinary functions
bpinfo-instructions: Private ordinary functions
bpinfo-ioffsets: Private ordinary functions
bpinfo-iscalings: Private ordinary functions
bpinfo-levels: Private ordinary functions
bpinfo-ranges: Private ordinary functions
bpinfo-rank: Private ordinary functions
bpinfo-sources: Private ordinary functions
bpinfo-targets: Private ordinary functions
bpinfop: Private ordinary functions
bpinstinfo: Private ordinary functions
bpinstinfo-instruction-number: Private ordinary functions
bpinstinfo-level: Private ordinary functions
bpinstinfo-name: Private ordinary functions
bpinstinfo-ntype: Private ordinary functions
bpinstruction-form: Private generic functions
bpinstruction-form: Private generic functions
bpinstruction-form: Private generic functions
bpinstruction-form: Private generic functions
bpinstruction-form: Private generic functions
bpinstruction-level: Private ordinary functions
bpinstruction-value: Private ordinary functions
bpinstruction-values: Private ordinary functions
bpinstruction-values-ntype: Private ordinary functions
bpinstructionp: Private ordinary functions
bpioffset-instruction-number: Private ordinary functions
bpioffset-level: Private ordinary functions
bpioffset-name: Private ordinary functions
bpioffset-ntype: Private ordinary functions
bpioffsetp: Private ordinary functions
bpiref-level: Private ordinary functions
bpiref-offset: Private ordinary functions
bpiref-scaling: Private ordinary functions
bpiref-values: Private ordinary functions
bpirefp: Private ordinary functions
bpiscaling-instruction-number: Private ordinary functions
bpiscaling-level: Private ordinary functions
bpiscaling-name: Private ordinary functions
bpiscaling-ntype: Private ordinary functions
bpiscalingp: Private ordinary functions
bpload-index: Private ordinary functions
bpload-level: Private ordinary functions
bpload-source: Private ordinary functions
bpload-values: Private ordinary functions
bploadp: Private ordinary functions
bpmemref-base: Private ordinary functions
bpmemref-ntype: Private ordinary functions
bpmemref-rank: Private ordinary functions
bpmemref-start: Private ordinary functions
bpmemref-stencil: Private ordinary functions
bpmemref-stencils: Private ordinary functions
bpmemref-stride: Private ordinary functions
bpmemref-strides: Private ordinary functions
bpmemrefp: Private ordinary functions
bpname: Private ordinary functions
bprange-end: Private ordinary functions
bprange-start: Private ordinary functions
bprange-step: Private ordinary functions
bprangep: Private ordinary functions
bpref: Private ordinary functions
bpstencil-center: Private ordinary functions
bpstencil-offsets: Private ordinary functions
bpstencil-scalings: Private ordinary functions
bpstencilp: Private ordinary functions
bpstore-index: Private ordinary functions
bpstore-level: Private ordinary functions
bpstore-target: Private ordinary functions
bpstore-value: Private ordinary functions
bpstore-values: Private ordinary functions
bpstorep: Private ordinary functions
bpvalue-cffi-type: Private ordinary functions
bpvalue-cpp-string: Private ordinary functions
bpvalue-cpp-type: Private ordinary functions
bpvalue-form: Private generic functions
bpvalue-form: Private generic functions
bpvalue-form: Private generic functions
bpvalue-level: Private ordinary functions
bpvalue-ntype: Private ordinary functions
bpvalue=: Private generic functions
bpvalue=: Private generic functions
bpvalue=: Private generic functions
bpvalue=: Private generic functions
bpvaluep: Private ordinary functions
bpvariable-level: Private ordinary functions
bpvariable-name: Private ordinary functions
bpvariable-ntype: Private ordinary functions
bpvariablep: Private ordinary functions
broadcast-ranges: Private ordinary functions
buffer-bits: Public ordinary functions
buffer-dendrites: Private macros
buffer-depth: Public ordinary functions
buffer-ghostspec: Private ordinary functions
buffer-ntype: Public ordinary functions
buffer-number: Public ordinary functions
buffer-number-of-inputs: Public ordinary functions
buffer-number-of-loads: Public ordinary functions
buffer-number-of-outputs: Public ordinary functions
buffer-number-of-stores: Public ordinary functions
buffer-program: Public ordinary functions
buffer-readers: Private ordinary functions
buffer-reuse-potential: Public ordinary functions
buffer-shape: Public ordinary functions
buffer-shard-add-reader: Private ordinary functions
buffer-shard-add-writer: Private ordinary functions
buffer-shard-bind: Private ordinary functions
buffer-shard-bits: Public ordinary functions
buffer-shard-buffer: Public ordinary functions
buffer-shard-chains: Private ordinary functions
buffer-shard-domain: Public ordinary functions
buffer-shard-guardian: Private ordinary functions
buffer-shard-infants: Private ordinary functions
buffer-shard-maxdepth: Public ordinary functions
buffer-shard-more-important-p: Private ordinary functions
buffer-shard-p: Public ordinary functions
buffer-shard-parent: Public ordinary functions
buffer-shard-path: Public ordinary functions
buffer-shard-primogenitor: Public ordinary functions
buffer-shard-queue-cleanup: Private ordinary functions
buffer-shard-queue-emptyp: Private ordinary functions
buffer-shard-queue-maybe-push: Private ordinary functions
buffer-shard-queue-pop: Private ordinary functions
buffer-shard-readers: Public ordinary functions
buffer-shard-shape: Public ordinary functions
buffer-shard-split: Public ordinary functions
buffer-shard-split-priority: Private ordinary functions
buffer-shard-split-priority-cache: Private ordinary functions
buffer-shard-storage: Public ordinary functions
buffer-shard-writers: Public ordinary functions
buffer-size: Public ordinary functions
buffer-size-in-bytes: Private ordinary functions
buffer-stencils-alist-blueprint: Private ordinary functions
buffer-storage: Public ordinary functions
buffer-task: Public ordinary functions
buffer-writers: Private ordinary functions
bufferp: Public ordinary functions
build-documentation: Private ordinary functions
bytes-from-bits: Private ordinary functions

C
c128-memref: Private ordinary functions
c64-memref: Private ordinary functions
call-instruction-fnrecord: Public ordinary functions
call-instruction-function: Public ordinary functions
call-instruction-inputs: Public ordinary functions
call-instruction-number: Private ordinary functions
call-instruction-number-of-values: Public ordinary functions
call-instruction-p: Public ordinary functions
call-network: Public ordinary functions
call-with-pinned-objects: Private ordinary functions
call-with-random-state: Private ordinary functions
call-with-test-harness: Private ordinary functions
call-with-testing-backend: Private ordinary functions
canonicalize-inputs: Private ordinary functions
canonicalize-outputs: Private ordinary functions
canonicalize-transform-input: Private ordinary functions
cenv-allocations: Private ordinary functions
cenv-argument-ntypes: Private ordinary functions
cenv-argument-shapes: Private ordinary functions
cenv-backend: Private ordinary functions
cenv-constant-arrays: Private ordinary functions
cenv-constant-storage-vectors: Private ordinary functions
cenv-result-ntypes: Private ordinary functions
cenv-result-shapes: Private ordinary functions
cenv-schedule: Private ordinary functions
cenvp: Private ordinary functions
cgraph-add-conflict: Public ordinary functions
cgraph-coloring: Public ordinary functions
cgraph-ensure-cnode: Public ordinary functions
cgraph-p: Private ordinary functions
cgraph-table: Private ordinary functions
character-memref: Private ordinary functions
check-cenv: Private ordinary functions
check-ir: Public ordinary functions
check-ir-node: Private generic functions
check-ir-node: Private generic functions
check-ir-node: Private generic functions
check-ir-node: Private generic functions
check-ir-node: Private generic functions
check-ir-node: Private generic functions
check-ir-node: Private generic functions
check-ir-node: Private generic functions
check-ir-node-eventually: Private ordinary functions
check-package: Public ordinary functions
check-program: Private ordinary functions
check-reverse-link: Private ordinary functions
check-shard: Private generic functions
check-shard: Private generic functions
check-shard: Private generic functions
check-shard-eventually: Private ordinary functions
check-shards: Private ordinary functions
class-name-p: Private ordinary functions
clear-shape-table: Public ordinary functions
clone-reference: Private generic functions
clone-reference: Private generic functions
clone-reference: Private generic functions
clone-reference: Private generic functions
clp2: Public ordinary functions
cluster-dendrites: Private ordinary functions
cluster-lazy-array: Private ordinary functions
cluster-ntype: Private ordinary functions
cluster-p: Private ordinary functions
cluster-shape: Private ordinary functions
cnode-color: Private ordinary functions
cnode-colorset: Private ordinary functions
cnode-degree: Private ordinary functions
cnode-neighbors: Private ordinary functions
cnode-object: Private ordinary functions
cnode-p: Private ordinary functions
cnode-queue-node: Private ordinary functions
cnode-saturation: Private ordinary functions
cnode>: Private ordinary functions
coerce-to-ntype: Private ordinary functions
collapsing-reshaper: Public ordinary functions
collapsing-transformation: Public ordinary functions
collect-prune-buffer-dendrites-alist: Private ordinary functions
colorset-add: Private ordinary functions
colorset-contains: Private ordinary functions
colorset-next-free-color: Private ordinary functions
colorset-union: Private ordinary functions
combine-subsets: Private ordinary functions
combine-tuples: Private ordinary functions
compare-solutions: Private ordinary functions
compatible-with-lazy-array-p: Public ordinary functions
compile-blueprint: Public generic functions
compile-blueprint: Public generic functions
compile-blueprint: Public generic functions
compile-blueprint: Public generic functions
compile-blueprint: Public generic functions
compile-blueprint: Public generic functions
compile-blueprint: Public generic functions
compile-cache: Private generic functions
compile-cache: Private generic functions
compile-cache-p: Private ordinary functions
compile-cache-table: Private ordinary functions
compile-kernel: Public generic functions
compile-kernel: Public generic functions
Compiler Macro, compose-transformations: Public compiler macros
Compiler Macro, index*: Public compiler macros
Compiler Macro, index+: Public compiler macros
Compiler Macro, range: Public compiler macros
completedp: Public ordinary functions
compose-transformations: Public compiler macros
compose-transformations: Public ordinary functions
compose-two-transformations: Private generic functions
compose-two-transformations: Private generic functions
compose-two-transformations: Private generic functions
compose-two-transformations: Private generic functions
compose-two-transformations: Private generic functions
compute: Public ordinary functions
compute-allocations: Private ordinary functions
compute-asynchronously: Public ordinary functions
compute-bpinfo-index: Private ordinary functions
compute-bpinfo-indices: Private ordinary functions
compute-bpinfo-ranges: Private ordinary functions
compute-bpmemref: Private ordinary functions
compute-bpmemrefs: Private ordinary functions
compute-bprange: Private ordinary functions
compute-bpstencil: Private ordinary functions
compute-buffer-ghostspec: Private ordinary functions
compute-buffer-shard-shape: Private ordinary functions
compute-buffer-shard-vicinity: Public ordinary functions
compute-delayed-array: Private ordinary functions
compute-list-of-arrays: Public ordinary functions
compute-program-buffer-coloring: Public ordinary functions
compute-program-primogenitor-buffer-shard-vector: Private ordinary functions
compute-schedule: Private ordinary functions
compute-stencil-center: Public ordinary functions
compute-transform-input-mask: Private ordinary functions
compute-transform-output-functions: Private ordinary functions
convert-cluster: Private generic functions
convert-cluster: Private generic functions
convert-cluster: Private generic functions
convert-cluster: Private generic functions
copy-action: Private ordinary functions
copy-allocation: Private ordinary functions
copy-bpcall: Private ordinary functions
copy-bpconstant: Private ordinary functions
copy-bpfunction: Private ordinary functions
copy-bpinfo: Private ordinary functions
copy-bpinstinfo: Private ordinary functions
copy-bpinstruction: Private ordinary functions
copy-bpioffset: Private ordinary functions
copy-bpiref: Private ordinary functions
copy-bpiscaling: Private ordinary functions
copy-bpload: Private ordinary functions
copy-bpmemref: Private ordinary functions
copy-bprange: Private ordinary functions
copy-bpstencil: Private ordinary functions
copy-bpstore: Private ordinary functions
copy-bpvalue: Private ordinary functions
copy-bpvariable: Private ordinary functions
copy-buffer: Private ordinary functions
copy-buffer-shard: Private ordinary functions
copy-cenv: Private ordinary functions
copy-cgraph: Private ordinary functions
copy-cluster: Private ordinary functions
copy-cnode: Private ordinary functions
copy-compile-cache: Private ordinary functions
copy-delayed-array: Private ordinary functions
copy-delayed-failure: Private ordinary functions
copy-delayed-fuse: Private ordinary functions
copy-delayed-map: Private ordinary functions
copy-delayed-multiple-value-map: Private ordinary functions
copy-delayed-nop: Private ordinary functions
copy-delayed-nth-value: Private ordinary functions
copy-delayed-range: Private ordinary functions
copy-delayed-reshape: Private ordinary functions
copy-delayed-unknown: Private ordinary functions
copy-delayed-wait: Private ordinary functions
copy-dendrite: Private ordinary functions
copy-denv: Private ordinary functions
copy-ghostspec: Private ordinary functions
copy-graph: Private ordinary functions
copy-invocation: Private ordinary functions
copy-ir-converter: Private ordinary functions
copy-kernel: Private ordinary functions
copy-kernel-shard: Private ordinary functions
copy-lazy-arrays: Public ordinary functions
copy-node: Private ordinary functions
copy-node: Private ordinary functions
copy-node-into: Private ordinary functions
copy-pdfs-queue: Private ordinary functions
copy-program: Private ordinary functions
copy-prune: Private ordinary functions
copy-simulated-memory: Private ordinary functions
copy-split: Private ordinary functions
copy-stem: Private ordinary functions
copy-storage: Private ordinary functions
copy-subset: Private ordinary functions
copy-task: Private ordinary functions
copy-tuple: Private ordinary functions
copy-vicinity: Private ordinary functions
core-memory: Public generic functions
core-memory: Public generic functions
core-name: Public generic functions
core-name: Public generic functions
count-mapped-elements: Private ordinary functions
cpp-compile-blueprint: Private ordinary functions
cpp-translate-argument: Private ordinary functions
cpp-translate-blueprint: Private ordinary functions
cpp-write-defun: Private ordinary functions
cpp-write-instructions: Private ordinary functions
cpp-write-loop: Private ordinary functions
cqueue-dequeue: Public ordinary functions
cqueue-enqueue: Public ordinary functions
cqueue-h-lock: Private ordinary functions
cqueue-head: Private ordinary functions
cqueue-t-lock: Private ordinary functions
cqueue-tail: Private ordinary functions
cqueuep: Public ordinary functions

D
defgenerator: Private macros
defgeneric-name-p: Private ordinary functions
define-float-generator: Private macros
define-test: Public macros
defun-name-p: Private ordinary functions
defwrapper: Private macros
delayed-action-inputs: Public generic functions
delayed-action-inputs: Public generic functions
delayed-action-inputs: Public generic functions
delayed-action-inputs: Public generic functions
delayed-action-inputs: Public generic functions
delayed-action-inputs: Public generic functions
delayed-action-p: Public ordinary functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-action-value: Private generic functions
delayed-array-p: Public ordinary functions
delayed-array-storage: Public ordinary functions
delayed-failure-condition: Public ordinary functions
delayed-failure-p: Public ordinary functions
delayed-fuse-inputs: Public ordinary functions
delayed-fuse-p: Public ordinary functions
delayed-map-fnrecord: Public ordinary functions
delayed-map-inputs: Public ordinary functions
delayed-map-number-of-values: Public ordinary functions
delayed-map-p: Public ordinary functions
delayed-multiple-value-map-fnrecord: Public ordinary functions
delayed-multiple-value-map-inputs: Public ordinary functions
delayed-multiple-value-map-p: Public ordinary functions
delayed-multiple-value-map-refbits: Public ordinary functions
delayed-multiple-value-map-refbits-lock: Private ordinary functions
delayed-multiple-value-map-values-ntype: Public ordinary functions
delayed-nop-p: Public ordinary functions
delayed-nth-value-input: Public ordinary functions
delayed-nth-value-number: Public ordinary functions
delayed-nth-value-p: Public ordinary functions
delayed-range-p: Public ordinary functions
delayed-reshape-input: Public ordinary functions
delayed-reshape-p: Public ordinary functions
delayed-reshape-transformation: Public ordinary functions
delayed-unknown-p: Public ordinary functions
delayed-wait-delayed-action: Public ordinary functions
delayed-wait-p: Public ordinary functions
delayed-wait-request: Public ordinary functions
delete-backend: Public generic functions
delete-backend: Public generic functions
delete-backend: Public generic functions
delete-backend: Public generic functions
delete-kernel: Private ordinary functions
dendrite-cluster: Private ordinary functions
dendrite-cons: Private ordinary functions
dendrite-depth: Private ordinary functions
dendrite-kernel: Private ordinary functions
dendrite-p: Private ordinary functions
dendrite-shape: Private ordinary functions
dendrite-stem: Private ordinary functions
dendrite-transformation: Private ordinary functions
dendrite-validp: Private ordinary functions
dendrite-value-n: Private ordinary functions
denv-cenv: Private ordinary functions
denv-pointers: Private ordinary functions
denv-request: Private ordinary functions
denv-result-arrays: Private ordinary functions
denv-serious-condition-lock: Private ordinary functions
denv-serious-conditions: Private ordinary functions
denvp: Private ordinary functions
destructure-transformoid: Private ordinary functions
device-cores: Public generic functions
device-cores: Public generic functions
device-memory: Public generic functions
device-memory: Public generic functions
device-name: Public generic functions
device-name: Public generic functions
differentiator: Public ordinary functions
differs-exactly-at: Private ordinary functions
do-buffer-inputs: Public macros
do-buffer-load-instructions: Public macros
do-buffer-outputs: Public macros
do-buffer-store-instructions: Public macros
do-instruction-inputs: Public macros
do-kernel-inputs: Public macros
do-kernel-instructions: Public macros
do-kernel-load-instructions: Public macros
do-kernel-outputs: Public macros
do-kernel-stencils: Private macros
do-kernel-store-instructions: Public macros
do-program-buffer-groups: Public macros
do-program-buffers: Public macros
do-program-kernels: Public macros
do-program-tasks: Public macros
do-stencil-instructions: Public macros
do-task-defined-buffers: Public macros
do-task-kernels: Public macros
do-task-predecessors: Public macros
do-task-successors: Public macros
document-compiler-macro: Public macros
document-compiler-macros: Public macros
document-function: Public macros
document-functions: Public macros
document-method-combination: Public macros
document-method-combinations: Public macros
document-setf-expander: Public macros
document-setf-expanders: Public macros
document-structure: Public macros
document-structures: Public macros
document-type: Private macros
document-types: Private macros
document-variable: Public macros
document-variables: Public macros
duplicates: Private ordinary functions

E
empty-lazy-array: Public ordinary functions
empty-lazy-arrays: Public ordinary functions
empty-range: Public ordinary functions
empty-range-p: Public ordinary functions
empty-range-size: Private ordinary functions
empty-shape-p: Public ordinary functions
enlarge-shape: Public ordinary functions
enlarge-transformation: Public generic functions
enlarge-transformation: Public generic functions
enlarge-transformation: Public generic functions
enlarge-transformation: Public generic functions
ensure-actions: Private ordinary functions
ensure-array-buffer-compatibility: Public ordinary functions
ensure-array-shape-ntype-compatibility: Public ordinary functions
ensure-buffer-task: Private ordinary functions
ensure-cluster: Private ordinary functions
ensure-documentation: Private ordinary functions
ensure-instruction-clone: Private macros
ensure-instruction-table: Private ordinary functions
ensure-kernel-shard-invocation: Private ordinary functions
ensure-node: Private ordinary functions
ensure-result: Private ordinary functions
ensure-tasks: Private ordinary functions
enter-test: Private ordinary functions
evaluate: Private ordinary functions
evaluator: Public ordinary functions
evaluator-template: Private ordinary functions
event-horizon: Private ordinary functions
execute-node: Private ordinary functions
expand-documentation: Private macros
expand-transform: Private ordinary functions
expect-condition: Private ordinary functions
extended-euclid: Public ordinary functions

F
f32-memref: Private ordinary functions
f64-memref: Private ordinary functions
factorize-shape: Private ordinary functions
fallback-host-device: Private ordinary functions
finalize-buffer: Private ordinary functions
finalize-ir: Private ordinary functions
finalize-kernel: Private ordinary functions
find-optimal-buffer-shard-split-axis: Private ordinary functions
find-optimal-buffer-shard-split-position: Private ordinary functions
find-prune: Private ordinary functions
flatten: Private ordinary functions
flattening-reshaper: Public ordinary functions
flp2: Public ordinary functions
fnrecord-blueprint: Private ordinary functions
fragment-difference-list: Private ordinary functions
fragment-intersections: Private ordinary functions
free-memory: Private ordinary functions
free-variables: Private ordinary functions
from-storage-transformation: Private ordinary functions
Function, %make-cenv: Private ordinary functions
Function, %make-delayed-array: Private ordinary functions
Function, %make-delayed-fuse: Private ordinary functions
Function, %make-delayed-map: Private ordinary functions
Function, %make-delayed-multiple-value-map: Private ordinary functions
Function, %make-delayed-nth-value: Private ordinary functions
Function, %make-delayed-reshape: Private ordinary functions
Function, %make-dendrite: Private ordinary functions
Function, %make-denv: Private ordinary functions
Function, %make-empty-range: Private ordinary functions
Function, %make-hairy-transformation: Private ordinary functions
Function, %make-identity-transformation: Private ordinary functions
Function, %make-kernel-shard: Private ordinary functions
Function, %make-load-instruction: Private ordinary functions
Function, %make-shape: Private ordinary functions
Function, %make-stencil: Private ordinary functions
Function, %make-store-instruction: Private ordinary functions
Function, %make-worker: Private ordinary functions
Function, %make-worker-pool: Private ordinary functions
Function, %requestp: Private ordinary functions
Function, (setf action-copy-invocations): Private ordinary functions
Function, (setf action-work-invocations): Private ordinary functions
Function, (setf ad-record-alist): Private ordinary functions
Function, (setf ad-record-input-gradient-caches): Private ordinary functions
Function, (setf ad-record-output-gradient-cache): Private ordinary functions
Function, (setf allocation-category): Private ordinary functions
Function, (setf allocation-unboxed): Private ordinary functions
Function, (setf base-char-memref): Private ordinary functions
Function, (setf bpinfo-levels): Private ordinary functions
Function, (setf bpmemref-base): Private ordinary functions
Function, (setf bpmemref-ntype): Private ordinary functions
Function, (setf bpmemref-rank): Private ordinary functions
Function, (setf bpmemref-start): Private ordinary functions
Function, (setf bpmemref-stencils): Private ordinary functions
Function, (setf bpmemref-strides): Private ordinary functions
Function, (setf bpstencil-center): Private ordinary functions
Function, (setf buffer-depth): Public ordinary functions
Function, (setf buffer-ntype): Public ordinary functions
Function, (setf buffer-number): Public ordinary functions
Function, (setf buffer-readers): Private ordinary functions
Function, (setf buffer-shape): Public ordinary functions
Function, (setf buffer-shard-readers): Public ordinary functions
Function, (setf buffer-shard-split): Public ordinary functions
Function, (setf buffer-shard-split-priority-cache): Private ordinary functions
Function, (setf buffer-shard-storage): Public ordinary functions
Function, (setf buffer-shard-writers): Public ordinary functions
Function, (setf buffer-storage): Public ordinary functions
Function, (setf buffer-task): Public ordinary functions
Function, (setf buffer-writers): Private ordinary functions
Function, (setf c128-memref): Private ordinary functions
Function, (setf c64-memref): Private ordinary functions
Function, (setf call-instruction-fnrecord): Public ordinary functions
Function, (setf call-instruction-inputs): Public ordinary functions
Function, (setf call-instruction-number): Private ordinary functions
Function, (setf call-instruction-number-of-values): Public ordinary functions
Function, (setf cgraph-table): Private ordinary functions
Function, (setf character-memref): Private ordinary functions
Function, (setf cluster-dendrites): Private ordinary functions
Function, (setf cluster-lazy-array): Private ordinary functions
Function, (setf cnode-color): Private ordinary functions
Function, (setf cnode-colorset): Private ordinary functions
Function, (setf cnode-degree): Private ordinary functions
Function, (setf cnode-neighbors): Private ordinary functions
Function, (setf cnode-queue-node): Private ordinary functions
Function, (setf cnode-saturation): Private ordinary functions
Function, (setf cqueue-h-lock): Private ordinary functions
Function, (setf cqueue-head): Private ordinary functions
Function, (setf cqueue-t-lock): Private ordinary functions
Function, (setf cqueue-tail): Private ordinary functions
Function, (setf delayed-array-storage): Public ordinary functions
Function, (setf delayed-fuse-inputs): Public ordinary functions
Function, (setf delayed-map-fnrecord): Public ordinary functions
Function, (setf delayed-map-inputs): Public ordinary functions
Function, (setf delayed-multiple-value-map-fnrecord): Public ordinary functions
Function, (setf delayed-multiple-value-map-inputs): Public ordinary functions
Function, (setf delayed-multiple-value-map-refbits): Public ordinary functions
Function, (setf delayed-multiple-value-map-refbits-lock): Private ordinary functions
Function, (setf delayed-nth-value-input): Public ordinary functions
Function, (setf delayed-nth-value-number): Public ordinary functions
Function, (setf delayed-reshape-input): Public ordinary functions
Function, (setf delayed-reshape-transformation): Public ordinary functions
Function, (setf delayed-wait-delayed-action): Public ordinary functions
Function, (setf dendrite-cons): Private ordinary functions
Function, (setf dendrite-depth): Private ordinary functions
Function, (setf dendrite-shape): Private ordinary functions
Function, (setf dendrite-stem): Private ordinary functions
Function, (setf dendrite-transformation): Private ordinary functions
Function, (setf denv-request): Private ordinary functions
Function, (setf denv-serious-condition-lock): Private ordinary functions
Function, (setf denv-serious-conditions): Private ordinary functions
Function, (setf f32-memref): Private ordinary functions
Function, (setf f64-memref): Private ordinary functions
Function, (setf graph-object-nodes): Public ordinary functions
Function, (setf hairy-transformation-inverse): Private ordinary functions
Function, (setf identity-transformation-inverse): Private ordinary functions
Function, (setf instruction-buffer): Private ordinary functions
Function, (setf instruction-inputs): Public ordinary functions
Function, (setf instruction-number): Public ordinary functions
Function, (setf instruction-transformation): Public ordinary functions
Function, (setf invocation-sources): Private ordinary functions
Function, (setf invocation-targets): Private ordinary functions
Function, (setf ir-converter-array-table): Private ordinary functions
Function, (setf ir-converter-buffer-dendrites-table): Private ordinary functions
Function, (setf ir-converter-cluster-table): Private ordinary functions
Function, (setf ir-converter-cons-updates): Private ordinary functions
Function, (setf ir-converter-leaf-alist): Private ordinary functions
Function, (setf ir-converter-potentially-superfluous-buffers): Private ordinary functions
Function, (setf ir-converter-pqueue): Private ordinary functions
Function, (setf ir-converter-scalar-table): Private ordinary functions
Function, (setf ir-converter-unknown-table): Private ordinary functions
Function, (setf iref-instruction-inputs): Private ordinary functions
Function, (setf iref-instruction-number): Private ordinary functions
Function, (setf iref-instruction-transformation): Public ordinary functions
Function, (setf kernel-data): Private ordinary functions
Function, (setf kernel-instruction-vector): Public ordinary functions
Function, (setf kernel-iteration-space): Public ordinary functions
Function, (setf kernel-number): Public ordinary functions
Function, (setf kernel-shard-sources): Public ordinary functions
Function, (setf kernel-shard-targets): Public ordinary functions
Function, (setf kernel-sources): Public ordinary functions
Function, (setf kernel-targets): Public ordinary functions
Function, (setf kernel-task): Public ordinary functions
Function, (setf lazy-array-delayed-action): Public ordinary functions
Function, (setf lazy-array-refcount): Public ordinary functions
Function, (setf load-instruction-buffer): Public ordinary functions
Function, (setf load-instruction-inputs): Private ordinary functions
Function, (setf load-instruction-number): Private ordinary functions
Function, (setf load-instruction-transformation): Public ordinary functions
Function, (setf node-affinity): Private ordinary functions
Function, (setf node-counter): Private ordinary functions
Function, (setf node-dependencies): Private ordinary functions
Function, (setf node-depth): Public ordinary functions
Function, (setf node-eagerness): Private ordinary functions
Function, (setf node-fn): Private ordinary functions
Function, (setf node-height): Public ordinary functions
Function, (setf node-kernel): Private ordinary functions
Function, (setf node-object): Private ordinary functions
Function, (setf node-position): Private ordinary functions
Function, (setf node-predecessor-alist): Public ordinary functions
Function, (setf node-successor-alist): Public ordinary functions
Function, (setf node-users): Private ordinary functions
Function, (setf pdfs-queue-tmpnode): Private ordinary functions
Function, (setf program-final-task): Public ordinary functions
Function, (setf program-initial-task): Public ordinary functions
Function, (setf program-leaf-alist): Public ordinary functions
Function, (setf program-number-of-buffers): Public ordinary functions
Function, (setf program-number-of-kernels): Public ordinary functions
Function, (setf program-root-buffers): Public ordinary functions
Function, (setf program-task-vector): Public ordinary functions
Function, (setf request-done): Private ordinary functions
Function, (setf s16-memref): Private ordinary functions
Function, (setf s32-memref): Private ordinary functions
Function, (setf s64-memref): Private ordinary functions
Function, (setf s8-memref): Private ordinary functions
Function, (setf shape-table-value): Public ordinary functions
Function, (setf simulated-memory-generation): Private ordinary functions
Function, (setf simulated-memory-mode): Private ordinary functions
Function, (setf simulated-memory-table): Private ordinary functions
Function, (setf stem-buffers): Private ordinary functions
Function, (setf stem-cluster): Private ordinary functions
Function, (setf stem-kernel): Private ordinary functions
Function, (setf stem-validp): Private ordinary functions
Function, (setf stencil-center): Public ordinary functions
Function, (setf stencil-instructions): Public ordinary functions
Function, (setf storage-allocation): Public ordinary functions
Function, (setf storage-ghost-layer-alist): Public ordinary functions
Function, (setf store-instruction-buffer): Public ordinary functions
Function, (setf store-instruction-inputs): Private ordinary functions
Function, (setf store-instruction-number): Private ordinary functions
Function, (setf store-instruction-transformation): Public ordinary functions
Function, (setf subset-elements): Private ordinary functions
Function, (setf subset-weight): Private ordinary functions
Function, (setf task-defined-buffers): Private ordinary functions
Function, (setf task-kernels): Private ordinary functions
Function, (setf task-number): Public ordinary functions
Function, (setf task-predecessors): Private ordinary functions
Function, (setf task-program): Public ordinary functions
Function, (setf task-successors): Private ordinary functions
Function, (setf transformation-inverse): Private ordinary functions
Function, (setf tuple-subsets): Private ordinary functions
Function, (setf tuple-weight): Private ordinary functions
Function, (setf u1-memref): Private ordinary functions
Function, (setf u16-memref): Private ordinary functions
Function, (setf u2-memref): Private ordinary functions
Function, (setf u32-memref): Private ordinary functions
Function, (setf u4-memref): Private ordinary functions
Function, (setf u64-memref): Private ordinary functions
Function, (setf u8-memref): Private ordinary functions
Function, (setf worker-barrier-sense): Private ordinary functions
Function, (setf worker-pool-barrier-countdown): Private ordinary functions
Function, (setf worker-pool-barrier-sense): Private ordinary functions
Function, (setf worker-pool-liveness): Private ordinary functions
Function, (setf worker-queue): Private ordinary functions
Function, (setf worker-serious-conditions): Private ordinary functions
Function, (setf worker-thread): Private ordinary functions
Function, action-copy-invocations: Private ordinary functions
Function, action-work-invocations: Private ordinary functions
Function, actionp: Private ordinary functions
Function, ad-record-alist: Private ordinary functions
Function, ad-record-input-gradient: Private ordinary functions
Function, ad-record-input-gradient-caches: Private ordinary functions
Function, ad-record-lazy-array: Private ordinary functions
Function, ad-record-output-gradient: Private ordinary functions
Function, ad-record-output-gradient-cache: Private ordinary functions
Function, add-child-kernel-shard: Private ordinary functions
Function, add-transformation-constraints: Private ordinary functions
Function, all-tests: Public ordinary functions
Function, allocate-memory: Private ordinary functions
Function, allocation-category: Private ordinary functions
Function, allocation-color: Private ordinary functions
Function, allocation-size-in-bytes: Private ordinary functions
Function, allocation-unboxed: Private ordinary functions
Function, allocationp: Private ordinary functions
Function, argument-variables: Private ordinary functions
Function, array-element-test: Private ordinary functions
Function, array-has-shape-p: Public ordinary functions
Function, array-shape: Public ordinary functions
Function, array-size-in-bytes: Private ordinary functions
Function, array-storage-pointer: Private ordinary functions
Function, array-storage-vector: Private ordinary functions
Function, array-value: Public ordinary functions
Function, assign-storage: Private ordinary functions
Function, assign-storage-ghost-layer-alist: Private ordinary functions
Function, attempt-split: Private ordinary functions
Function, barrier: Private ordinary functions
Function, base-char-memref: Private ordinary functions
Function, bind-argument: Private ordinary functions
Function, bind-result: Private ordinary functions
Function, blueprint-bpinfo: Private ordinary functions
Function, blueprint-cpp-translatable-p: Private ordinary functions
Function, bpcall: Private ordinary functions
Function, bpcall-argument: Private ordinary functions
Function, bpcall-arguments: Private ordinary functions
Function, bpcall-function: Private ordinary functions
Function, bpcall-level: Private ordinary functions
Function, bpcall-value: Private ordinary functions
Function, bpcall-values: Private ordinary functions
Function, bpcallp: Private ordinary functions
Function, bpconstant-level: Private ordinary functions
Function, bpconstant-ntype: Private ordinary functions
Function, bpconstant-value: Private ordinary functions
Function, bpconstantp: Private ordinary functions
Function, bpeval: Private ordinary functions
Function, bpfunction-instruction-number: Private ordinary functions
Function, bpfunction-level: Private ordinary functions
Function, bpfunction-name: Private ordinary functions
Function, bpfunction-ntype: Private ordinary functions
Function, bpfunctionp: Private ordinary functions
Function, bpindex*: Private ordinary functions
Function, bpindex+: Private ordinary functions
Function, bpinfo-cpp-arguments: Private ordinary functions
Function, bpinfo-functions: Private ordinary functions
Function, bpinfo-indices: Private ordinary functions
Function, bpinfo-instructions: Private ordinary functions
Function, bpinfo-ioffsets: Private ordinary functions
Function, bpinfo-iscalings: Private ordinary functions
Function, bpinfo-levels: Private ordinary functions
Function, bpinfo-ranges: Private ordinary functions
Function, bpinfo-rank: Private ordinary functions
Function, bpinfo-sources: Private ordinary functions
Function, bpinfo-targets: Private ordinary functions
Function, bpinfop: Private ordinary functions
Function, bpinstinfo: Private ordinary functions
Function, bpinstinfo-instruction-number: Private ordinary functions
Function, bpinstinfo-level: Private ordinary functions
Function, bpinstinfo-name: Private ordinary functions
Function, bpinstinfo-ntype: Private ordinary functions
Function, bpinstruction-level: Private ordinary functions
Function, bpinstruction-value: Private ordinary functions
Function, bpinstruction-values: Private ordinary functions
Function, bpinstruction-values-ntype: Private ordinary functions
Function, bpinstructionp: Private ordinary functions
Function, bpioffset-instruction-number: Private ordinary functions
Function, bpioffset-level: Private ordinary functions
Function, bpioffset-name: Private ordinary functions
Function, bpioffset-ntype: Private ordinary functions
Function, bpioffsetp: Private ordinary functions
Function, bpiref-level: Private ordinary functions
Function, bpiref-offset: Private ordinary functions
Function, bpiref-scaling: Private ordinary functions
Function, bpiref-values: Private ordinary functions
Function, bpirefp: Private ordinary functions
Function, bpiscaling-instruction-number: Private ordinary functions
Function, bpiscaling-level: Private ordinary functions
Function, bpiscaling-name: Private ordinary functions
Function, bpiscaling-ntype: Private ordinary functions
Function, bpiscalingp: Private ordinary functions
Function, bpload-index: Private ordinary functions
Function, bpload-level: Private ordinary functions
Function, bpload-source: Private ordinary functions
Function, bpload-values: Private ordinary functions
Function, bploadp: Private ordinary functions
Function, bpmemref-base: Private ordinary functions
Function, bpmemref-ntype: Private ordinary functions
Function, bpmemref-rank: Private ordinary functions
Function, bpmemref-start: Private ordinary functions
Function, bpmemref-stencil: Private ordinary functions
Function, bpmemref-stencils: Private ordinary functions
Function, bpmemref-stride: Private ordinary functions
Function, bpmemref-strides: Private ordinary functions
Function, bpmemrefp: Private ordinary functions
Function, bpname: Private ordinary functions
Function, bprange-end: Private ordinary functions
Function, bprange-start: Private ordinary functions
Function, bprange-step: Private ordinary functions
Function, bprangep: Private ordinary functions
Function, bpref: Private ordinary functions
Function, bpstencil-center: Private ordinary functions
Function, bpstencil-offsets: Private ordinary functions
Function, bpstencil-scalings: Private ordinary functions
Function, bpstencilp: Private ordinary functions
Function, bpstore-index: Private ordinary functions
Function, bpstore-level: Private ordinary functions
Function, bpstore-target: Private ordinary functions
Function, bpstore-value: Private ordinary functions
Function, bpstore-values: Private ordinary functions
Function, bpstorep: Private ordinary functions
Function, bpvalue-cffi-type: Private ordinary functions
Function, bpvalue-cpp-string: Private ordinary functions
Function, bpvalue-cpp-type: Private ordinary functions
Function, bpvalue-level: Private ordinary functions
Function, bpvalue-ntype: Private ordinary functions
Function, bpvaluep: Private ordinary functions
Function, bpvariable-level: Private ordinary functions
Function, bpvariable-name: Private ordinary functions
Function, bpvariable-ntype: Private ordinary functions
Function, bpvariablep: Private ordinary functions
Function, broadcast-ranges: Private ordinary functions
Function, buffer-bits: Public ordinary functions
Function, buffer-depth: Public ordinary functions
Function, buffer-ghostspec: Private ordinary functions
Function, buffer-ntype: Public ordinary functions
Function, buffer-number: Public ordinary functions
Function, buffer-number-of-inputs: Public ordinary functions
Function, buffer-number-of-loads: Public ordinary functions
Function, buffer-number-of-outputs: Public ordinary functions
Function, buffer-number-of-stores: Public ordinary functions
Function, buffer-program: Public ordinary functions
Function, buffer-readers: Private ordinary functions
Function, buffer-reuse-potential: Public ordinary functions
Function, buffer-shape: Public ordinary functions
Function, buffer-shard-add-reader: Private ordinary functions
Function, buffer-shard-add-writer: Private ordinary functions
Function, buffer-shard-bind: Private ordinary functions
Function, buffer-shard-bits: Public ordinary functions
Function, buffer-shard-buffer: Public ordinary functions
Function, buffer-shard-chains: Private ordinary functions
Function, buffer-shard-domain: Public ordinary functions
Function, buffer-shard-guardian: Private ordinary functions
Function, buffer-shard-infants: Private ordinary functions
Function, buffer-shard-maxdepth: Public ordinary functions
Function, buffer-shard-more-important-p: Private ordinary functions
Function, buffer-shard-p: Public ordinary functions
Function, buffer-shard-parent: Public ordinary functions
Function, buffer-shard-path: Public ordinary functions
Function, buffer-shard-primogenitor: Public ordinary functions
Function, buffer-shard-queue-cleanup: Private ordinary functions
Function, buffer-shard-queue-emptyp: Private ordinary functions
Function, buffer-shard-queue-maybe-push: Private ordinary functions
Function, buffer-shard-queue-pop: Private ordinary functions
Function, buffer-shard-readers: Public ordinary functions
Function, buffer-shard-shape: Public ordinary functions
Function, buffer-shard-split: Public ordinary functions
Function, buffer-shard-split-priority: Private ordinary functions
Function, buffer-shard-split-priority-cache: Private ordinary functions
Function, buffer-shard-storage: Public ordinary functions
Function, buffer-shard-writers: Public ordinary functions
Function, buffer-size: Public ordinary functions
Function, buffer-size-in-bytes: Private ordinary functions
Function, buffer-stencils-alist-blueprint: Private ordinary functions
Function, buffer-storage: Public ordinary functions
Function, buffer-task: Public ordinary functions
Function, buffer-writers: Private ordinary functions
Function, bufferp: Public ordinary functions
Function, build-documentation: Private ordinary functions
Function, bytes-from-bits: Private ordinary functions
Function, c128-memref: Private ordinary functions
Function, c64-memref: Private ordinary functions
Function, call-instruction-fnrecord: Public ordinary functions
Function, call-instruction-function: Public ordinary functions
Function, call-instruction-inputs: Public ordinary functions
Function, call-instruction-number: Private ordinary functions
Function, call-instruction-number-of-values: Public ordinary functions
Function, call-instruction-p: Public ordinary functions
Function, call-network: Public ordinary functions
Function, call-with-pinned-objects: Private ordinary functions
Function, call-with-random-state: Private ordinary functions
Function, call-with-test-harness: Private ordinary functions
Function, call-with-testing-backend: Private ordinary functions
Function, canonicalize-inputs: Private ordinary functions
Function, canonicalize-outputs: Private ordinary functions
Function, canonicalize-transform-input: Private ordinary functions
Function, cenv-allocations: Private ordinary functions
Function, cenv-argument-ntypes: Private ordinary functions
Function, cenv-argument-shapes: Private ordinary functions
Function, cenv-backend: Private ordinary functions
Function, cenv-constant-arrays: Private ordinary functions
Function, cenv-constant-storage-vectors: Private ordinary functions
Function, cenv-result-ntypes: Private ordinary functions
Function, cenv-result-shapes: Private ordinary functions
Function, cenv-schedule: Private ordinary functions
Function, cenvp: Private ordinary functions
Function, cgraph-add-conflict: Public ordinary functions
Function, cgraph-coloring: Public ordinary functions
Function, cgraph-ensure-cnode: Public ordinary functions
Function, cgraph-p: Private ordinary functions
Function, cgraph-table: Private ordinary functions
Function, character-memref: Private ordinary functions
Function, check-cenv: Private ordinary functions
Function, check-ir: Public ordinary functions
Function, check-ir-node-eventually: Private ordinary functions
Function, check-package: Public ordinary functions
Function, check-program: Private ordinary functions
Function, check-reverse-link: Private ordinary functions
Function, check-shard-eventually: Private ordinary functions
Function, check-shards: Private ordinary functions
Function, class-name-p: Private ordinary functions
Function, clear-shape-table: Public ordinary functions
Function, clp2: Public ordinary functions
Function, cluster-dendrites: Private ordinary functions
Function, cluster-lazy-array: Private ordinary functions
Function, cluster-ntype: Private ordinary functions
Function, cluster-p: Private ordinary functions
Function, cluster-shape: Private ordinary functions
Function, cnode-color: Private ordinary functions
Function, cnode-colorset: Private ordinary functions
Function, cnode-degree: Private ordinary functions
Function, cnode-neighbors: Private ordinary functions
Function, cnode-object: Private ordinary functions
Function, cnode-p: Private ordinary functions
Function, cnode-queue-node: Private ordinary functions
Function, cnode-saturation: Private ordinary functions
Function, cnode>: Private ordinary functions
Function, coerce-to-ntype: Private ordinary functions
Function, collapsing-reshaper: Public ordinary functions
Function, collapsing-transformation: Public ordinary functions
Function, collect-prune-buffer-dendrites-alist: Private ordinary functions
Function, colorset-add: Private ordinary functions
Function, colorset-contains: Private ordinary functions
Function, colorset-next-free-color: Private ordinary functions
Function, colorset-union: Private ordinary functions
Function, combine-subsets: Private ordinary functions
Function, combine-tuples: Private ordinary functions
Function, compare-solutions: Private ordinary functions
Function, compatible-with-lazy-array-p: Public ordinary functions
Function, compile-cache-p: Private ordinary functions
Function, compile-cache-table: Private ordinary functions
Function, completedp: Public ordinary functions
Function, compose-transformations: Public ordinary functions
Function, compute: Public ordinary functions
Function, compute-allocations: Private ordinary functions
Function, compute-asynchronously: Public ordinary functions
Function, compute-bpinfo-index: Private ordinary functions
Function, compute-bpinfo-indices: Private ordinary functions
Function, compute-bpinfo-ranges: Private ordinary functions
Function, compute-bpmemref: Private ordinary functions
Function, compute-bpmemrefs: Private ordinary functions
Function, compute-bprange: Private ordinary functions
Function, compute-bpstencil: Private ordinary functions
Function, compute-buffer-ghostspec: Private ordinary functions
Function, compute-buffer-shard-shape: Private ordinary functions
Function, compute-buffer-shard-vicinity: Public ordinary functions
Function, compute-delayed-array: Private ordinary functions
Function, compute-list-of-arrays: Public ordinary functions
Function, compute-program-buffer-coloring: Public ordinary functions
Function, compute-program-primogenitor-buffer-shard-vector: Private ordinary functions
Function, compute-schedule: Private ordinary functions
Function, compute-stencil-center: Public ordinary functions
Function, compute-transform-input-mask: Private ordinary functions
Function, compute-transform-output-functions: Private ordinary functions
Function, copy-action: Private ordinary functions
Function, copy-allocation: Private ordinary functions
Function, copy-bpcall: Private ordinary functions
Function, copy-bpconstant: Private ordinary functions
Function, copy-bpfunction: Private ordinary functions
Function, copy-bpinfo: Private ordinary functions
Function, copy-bpinstinfo: Private ordinary functions
Function, copy-bpinstruction: Private ordinary functions
Function, copy-bpioffset: Private ordinary functions
Function, copy-bpiref: Private ordinary functions
Function, copy-bpiscaling: Private ordinary functions
Function, copy-bpload: Private ordinary functions
Function, copy-bpmemref: Private ordinary functions
Function, copy-bprange: Private ordinary functions
Function, copy-bpstencil: Private ordinary functions
Function, copy-bpstore: Private ordinary functions
Function, copy-bpvalue: Private ordinary functions
Function, copy-bpvariable: Private ordinary functions
Function, copy-buffer: Private ordinary functions
Function, copy-buffer-shard: Private ordinary functions
Function, copy-cenv: Private ordinary functions
Function, copy-cgraph: Private ordinary functions
Function, copy-cluster: Private ordinary functions
Function, copy-cnode: Private ordinary functions
Function, copy-compile-cache: Private ordinary functions
Function, copy-delayed-array: Private ordinary functions
Function, copy-delayed-failure: Private ordinary functions
Function, copy-delayed-fuse: Private ordinary functions
Function, copy-delayed-map: Private ordinary functions
Function, copy-delayed-multiple-value-map: Private ordinary functions
Function, copy-delayed-nop: Private ordinary functions
Function, copy-delayed-nth-value: Private ordinary functions
Function, copy-delayed-range: Private ordinary functions
Function, copy-delayed-reshape: Private ordinary functions
Function, copy-delayed-unknown: Private ordinary functions
Function, copy-delayed-wait: Private ordinary functions
Function, copy-dendrite: Private ordinary functions
Function, copy-denv: Private ordinary functions
Function, copy-ghostspec: Private ordinary functions
Function, copy-graph: Private ordinary functions
Function, copy-invocation: Private ordinary functions
Function, copy-ir-converter: Private ordinary functions
Function, copy-kernel: Private ordinary functions
Function, copy-kernel-shard: Private ordinary functions
Function, copy-lazy-arrays: Public ordinary functions
Function, copy-node: Private ordinary functions
Function, copy-node: Private ordinary functions
Function, copy-node-into: Private ordinary functions
Function, copy-pdfs-queue: Private ordinary functions
Function, copy-program: Private ordinary functions
Function, copy-prune: Private ordinary functions
Function, copy-simulated-memory: Private ordinary functions
Function, copy-split: Private ordinary functions
Function, copy-stem: Private ordinary functions
Function, copy-storage: Private ordinary functions
Function, copy-subset: Private ordinary functions
Function, copy-task: Private ordinary functions
Function, copy-tuple: Private ordinary functions
Function, copy-vicinity: Private ordinary functions
Function, count-mapped-elements: Private ordinary functions
Function, cpp-compile-blueprint: Private ordinary functions
Function, cpp-translate-argument: Private ordinary functions
Function, cpp-translate-blueprint: Private ordinary functions
Function, cpp-write-defun: Private ordinary functions
Function, cpp-write-instructions: Private ordinary functions
Function, cpp-write-loop: Private ordinary functions
Function, cqueue-dequeue: Public ordinary functions
Function, cqueue-enqueue: Public ordinary functions
Function, cqueue-h-lock: Private ordinary functions
Function, cqueue-head: Private ordinary functions
Function, cqueue-t-lock: Private ordinary functions
Function, cqueue-tail: Private ordinary functions
Function, cqueuep: Public ordinary functions
Function, defgeneric-name-p: Private ordinary functions
Function, defun-name-p: Private ordinary functions
Function, delayed-action-p: Public ordinary functions
Function, delayed-array-p: Public ordinary functions
Function, delayed-array-storage: Public ordinary functions
Function, delayed-failure-condition: Public ordinary functions
Function, delayed-failure-p: Public ordinary functions
Function, delayed-fuse-inputs: Public ordinary functions
Function, delayed-fuse-p: Public ordinary functions
Function, delayed-map-fnrecord: Public ordinary functions
Function, delayed-map-inputs: Public ordinary functions
Function, delayed-map-number-of-values: Public ordinary functions
Function, delayed-map-p: Public ordinary functions
Function, delayed-multiple-value-map-fnrecord: Public ordinary functions
Function, delayed-multiple-value-map-inputs: Public ordinary functions
Function, delayed-multiple-value-map-p: Public ordinary functions
Function, delayed-multiple-value-map-refbits: Public ordinary functions
Function, delayed-multiple-value-map-refbits-lock: Private ordinary functions
Function, delayed-multiple-value-map-values-ntype: Public ordinary functions
Function, delayed-nop-p: Public ordinary functions
Function, delayed-nth-value-input: Public ordinary functions
Function, delayed-nth-value-number: Public ordinary functions
Function, delayed-nth-value-p: Public ordinary functions
Function, delayed-range-p: Public ordinary functions
Function, delayed-reshape-input: Public ordinary functions
Function, delayed-reshape-p: Public ordinary functions
Function, delayed-reshape-transformation: Public ordinary functions
Function, delayed-unknown-p: Public ordinary functions
Function, delayed-wait-delayed-action: Public ordinary functions
Function, delayed-wait-p: Public ordinary functions
Function, delayed-wait-request: Public ordinary functions
Function, delete-kernel: Private ordinary functions
Function, dendrite-cluster: Private ordinary functions
Function, dendrite-cons: Private ordinary functions
Function, dendrite-depth: Private ordinary functions
Function, dendrite-kernel: Private ordinary functions
Function, dendrite-p: Private ordinary functions
Function, dendrite-shape: Private ordinary functions
Function, dendrite-stem: Private ordinary functions
Function, dendrite-transformation: Private ordinary functions
Function, dendrite-validp: Private ordinary functions
Function, dendrite-value-n: Private ordinary functions
Function, denv-cenv: Private ordinary functions
Function, denv-pointers: Private ordinary functions
Function, denv-request: Private ordinary functions
Function, denv-result-arrays: Private ordinary functions
Function, denv-serious-condition-lock: Private ordinary functions
Function, denv-serious-conditions: Private ordinary functions
Function, denvp: Private ordinary functions
Function, destructure-transformoid: Private ordinary functions
Function, differentiator: Public ordinary functions
Function, differs-exactly-at: Private ordinary functions
Function, duplicates: Private ordinary functions
Function, empty-lazy-array: Public ordinary functions
Function, empty-lazy-arrays: Public ordinary functions
Function, empty-range: Public ordinary functions
Function, empty-range-p: Public ordinary functions
Function, empty-range-size: Private ordinary functions
Function, empty-shape-p: Public ordinary functions
Function, enlarge-shape: Public ordinary functions
Function, ensure-actions: Private ordinary functions
Function, ensure-array-buffer-compatibility: Public ordinary functions
Function, ensure-array-shape-ntype-compatibility: Public ordinary functions
Function, ensure-buffer-task: Private ordinary functions
Function, ensure-cluster: Private ordinary functions
Function, ensure-documentation: Private ordinary functions
Function, ensure-instruction-table: Private ordinary functions
Function, ensure-kernel-shard-invocation: Private ordinary functions
Function, ensure-node: Private ordinary functions
Function, ensure-result: Private ordinary functions
Function, ensure-tasks: Private ordinary functions
Function, enter-test: Private ordinary functions
Function, evaluate: Private ordinary functions
Function, evaluator: Public ordinary functions
Function, evaluator-template: Private ordinary functions
Function, event-horizon: Private ordinary functions
Function, execute-node: Private ordinary functions
Function, expand-transform: Private ordinary functions
Function, expect-condition: Private ordinary functions
Function, extended-euclid: Public ordinary functions
Function, f32-memref: Private ordinary functions
Function, f64-memref: Private ordinary functions
Function, factorize-shape: Private ordinary functions
Function, fallback-host-device: Private ordinary functions
Function, finalize-buffer: Private ordinary functions
Function, finalize-ir: Private ordinary functions
Function, finalize-kernel: Private ordinary functions
Function, find-optimal-buffer-shard-split-axis: Private ordinary functions
Function, find-optimal-buffer-shard-split-position: Private ordinary functions
Function, find-prune: Private ordinary functions
Function, flatten: Private ordinary functions
Function, flattening-reshaper: Public ordinary functions
Function, flp2: Public ordinary functions
Function, fnrecord-blueprint: Private ordinary functions
Function, fragment-difference-list: Private ordinary functions
Function, fragment-intersections: Private ordinary functions
Function, free-memory: Private ordinary functions
Function, free-variables: Private ordinary functions
Function, from-storage-transformation: Private ordinary functions
Function, function-cpp-info: Private ordinary functions
Function, function-cpp-translatable-p: Private ordinary functions
Function, fuse-ranges: Public ordinary functions
Function, fuse-shapes: Public ordinary functions
Function, fusion-test: Private ordinary functions
Function, generate-double-float: Private ordinary functions
Function, generate-integer: Private ordinary functions
Function, generate-lazy-array: Private ordinary functions
Function, generate-long-float: Private ordinary functions
Function, generate-matrix: Private ordinary functions
Function, generate-range: Private ordinary functions
Function, generate-shape: Private ordinary functions
Function, generate-short-float: Private ordinary functions
Function, generate-single-float: Private ordinary functions
Function, get-result: Private ordinary functions
Function, ghostspec-buffer: Private ordinary functions
Function, ghostspec-left-padding: Private ordinary functions
Function, ghostspec-left-padding-vec: Private ordinary functions
Function, ghostspec-pattern: Private ordinary functions
Function, ghostspec-right-padding: Private ordinary functions
Function, ghostspec-right-padding-vec: Private ordinary functions
Function, ghostspecp: Private ordinary functions
Function, graph-add-edge: Public ordinary functions
Function, graph-compute-distances: Private ordinary functions
Function, graph-compute-node-depth: Private ordinary functions
Function, graph-compute-node-height: Private ordinary functions
Function, graph-ensure-node: Public ordinary functions
Function, graph-object-nodes: Public ordinary functions
Function, graph-parallel-depth-first-schedule: Public ordinary functions
Function, graphp: Public ordinary functions
Function, grow-dendrite: Private ordinary functions
Function, hairy-transformation-input-mask: Private ordinary functions
Function, hairy-transformation-input-rank: Private ordinary functions
Function, hairy-transformation-inverse: Private ordinary functions
Function, hairy-transformation-offsets: Private ordinary functions
Function, hairy-transformation-output-mask: Private ordinary functions
Function, hairy-transformation-output-rank: Private ordinary functions
Function, hairy-transformation-p: Private ordinary functions
Function, hairy-transformation-scalings: Private ordinary functions
Function, harmonized-element-type: Public ordinary functions
Function, host-device: Public ordinary functions
Function, identity-transformation: Public ordinary functions
Function, identity-transformation-input-mask: Private ordinary functions
Function, identity-transformation-input-rank: Private ordinary functions
Function, identity-transformation-inverse: Private ordinary functions
Function, identity-transformation-offsets: Private ordinary functions
Function, identity-transformation-output-mask: Private ordinary functions
Function, identity-transformation-output-rank: Private ordinary functions
Function, identity-transformation-p: Public ordinary functions
Function, identity-transformation-scalings: Private ordinary functions
Function, index*: Public ordinary functions
Function, index+: Public ordinary functions
Function, indices-test: Private ordinary functions
Function, inflate-shape: Public ordinary functions
Function, insert-axis-after: Private ordinary functions
Function, insert-axis-before: Private ordinary functions
Function, insert-copy-kernel: Private ordinary functions
Function, instruction-blueprints: Private ordinary functions
Function, instruction-buffer: Private ordinary functions
Function, instruction-inputs: Public ordinary functions
Function, instruction-number: Public ordinary functions
Function, instruction-transformation: Public ordinary functions
Function, instructionp: Public ordinary functions
Function, interior-buffer-p: Public ordinary functions
Function, interpret-kernel: Private ordinary functions
Function, invocation-iteration-space: Private ordinary functions
Function, invocation-kernel: Private ordinary functions
Function, invocation-kfn: Private ordinary functions
Function, invocation-sources: Private ordinary functions
Function, invocation-targets: Private ordinary functions
Function, invocationp: Private ordinary functions
Function, ir-backend-array: Private ordinary functions
Function, ir-converter-array-table: Private ordinary functions
Function, ir-converter-buffer-dendrites-table: Private ordinary functions
Function, ir-converter-cluster-table: Private ordinary functions
Function, ir-converter-cons-updates: Private ordinary functions
Function, ir-converter-empty-p: Private ordinary functions
Function, ir-converter-kernel-size-threshold: Private ordinary functions
Function, ir-converter-leaf-alist: Private ordinary functions
Function, ir-converter-next-cluster: Private ordinary functions
Function, ir-converter-p: Private ordinary functions
Function, ir-converter-potentially-superfluous-buffers: Private ordinary functions
Function, ir-converter-pqueue: Private ordinary functions
Function, ir-converter-scalar-table: Private ordinary functions
Function, ir-converter-unknown-table: Private ordinary functions
Function, ir-from-lazy-arrays: Public ordinary functions
Function, iref-instruction-inputs: Private ordinary functions
Function, iref-instruction-number: Private ordinary functions
Function, iref-instruction-p: Public ordinary functions
Function, iref-instruction-transformation: Public ordinary functions
Function, iterating-instruction-p: Public ordinary functions
Function, iteration-space-blueprint: Public ordinary functions
Function, jacobi-test: Private ordinary functions
Function, karmarkar-karp: Public ordinary functions
Function, kernel-blueprint: Public ordinary functions
Function, kernel-cost: Public ordinary functions
Function, kernel-data: Private ordinary functions
Function, kernel-highest-instruction-number: Private ordinary functions
Function, kernel-instruction-vector: Public ordinary functions
Function, kernel-iteration-space: Public ordinary functions
Function, kernel-load-stencils: Public ordinary functions
Function, kernel-number: Public ordinary functions
Function, kernel-number-of-inputs: Private ordinary functions
Function, kernel-number-of-loads: Public ordinary functions
Function, kernel-number-of-outputs: Public ordinary functions
Function, kernel-number-of-stores: Public ordinary functions
Function, kernel-program: Public ordinary functions
Function, kernel-reuse-potential: Public ordinary functions
Function, kernel-shard-iteration-space: Public ordinary functions
Function, kernel-shard-kernel: Public ordinary functions
Function, kernel-shard-more-important-p: Public ordinary functions
Function, kernel-shard-p: Public ordinary functions
Function, kernel-shard-sources: Public ordinary functions
Function, kernel-shard-targets: Public ordinary functions
Function, kernel-sources: Public ordinary functions
Function, kernel-store-stencils: Public ordinary functions
Function, kernel-targets: Public ordinary functions
Function, kernel-task: Public ordinary functions
Function, kernelp: Public ordinary functions
Function, lazy: Public ordinary functions
Function, lazy-array: Public ordinary functions
Function, lazy-array-delayed-action: Public ordinary functions
Function, lazy-array-depth: Public ordinary functions
Function, lazy-array-dimension: Public ordinary functions
Function, lazy-array-dimensions: Public ordinary functions
Function, lazy-array-element-type: Public ordinary functions
Function, lazy-array-from-array: Public ordinary functions
Function, lazy-array-from-range: Public ordinary functions
Function, lazy-array-from-scalar: Public ordinary functions
Function, lazy-array-inputs: Public ordinary functions
Function, lazy-array-ntype: Public ordinary functions
Function, lazy-array-p: Public ordinary functions
Function, lazy-array-range: Public ordinary functions
Function, lazy-array-ranges: Public ordinary functions
Function, lazy-array-rank: Public ordinary functions
Function, lazy-array-refcount: Public ordinary functions
Function, lazy-array-shape: Public ordinary functions
Function, lazy-array-size: Public ordinary functions
Function, lazy-array-size-in-bytes: Private ordinary functions
Function, lazy-array-value: Private ordinary functions
Function, lazy-broadcast: Public ordinary functions
Function, lazy-broadcast-list-of-arrays: Public ordinary functions
Function, lazy-change-shape: Private ordinary functions
Function, lazy-change-shape/normalized: Private ordinary functions
Function, lazy-drop-axes: Public ordinary functions
Function, lazy-fuse: Public ordinary functions
Function, lazy-fuse-and-harmonize: Public ordinary functions
Function, lazy-harmonize: Public ordinary functions
Function, lazy-harmonize-list-of-arrays: Public ordinary functions
Function, lazy-index-components: Public ordinary functions
Function, lazy-map: Public ordinary functions
Function, lazy-map-test: Private ordinary functions
Function, lazy-multiple-value: Public ordinary functions
Function, lazy-multiple-value-map: Public ordinary functions
Function, lazy-multireduce: Public ordinary functions
Function, lazy-overwrite: Public ordinary functions
Function, lazy-overwrite-and-harmonize: Public ordinary functions
Function, lazy-reduce: Public ordinary functions
Function, lazy-reduce-aux: Private ordinary functions
Function, lazy-ref: Public ordinary functions
Function, lazy-reshape: Public ordinary functions
Function, lazy-reshape-aux: Private ordinary functions
Function, lazy-reshape-aux/function: Private ordinary functions
Function, lazy-reshape-aux/integer: Private ordinary functions
Function, lazy-reshape-aux/shape: Private ordinary functions
Function, lazy-reshape-aux/transformation: Private ordinary functions
Function, lazy-reshape-using-transformation: Public ordinary functions
Function, lazy-slice: Public ordinary functions
Function, lazy-slices: Public ordinary functions
Function, lazy-sort: Public ordinary functions
Function, lazy-sort-test: Private ordinary functions
Function, lazy-stack: Public ordinary functions
Function, lazy-unknown-p: Public ordinary functions
Function, lazy-unknowns: Public ordinary functions
Function, leaf-buffer-p: Public ordinary functions
Function, linear-algebra-test: Private ordinary functions
Function, linux-host-device: Private ordinary functions
Function, lisp-compile-blueprint: Private ordinary functions
Function, lisp-translate-blueprint: Private ordinary functions
Function, listify-range-for-printing: Private ordinary functions
Function, listify-shape-for-printing: Private ordinary functions
Function, load-foreign-code: Public ordinary functions
Function, load-instruction-buffer: Public ordinary functions
Function, load-instruction-inputs: Private ordinary functions
Function, load-instruction-number: Private ordinary functions
Function, load-instruction-p: Public ordinary functions
Function, load-instruction-transformation: Public ordinary functions
Function, load-or-store-instruction-p: Public ordinary functions
Function, macro-name-p: Private ordinary functions
Function, make-action: Private ordinary functions
Function, make-ad-record: Private ordinary functions
Function, make-allocation: Private ordinary functions
Function, make-array-from-shape-and-ntype: Public ordinary functions
Function, make-bpcall: Private ordinary functions
Function, make-bpconstant: Private ordinary functions
Function, make-bpfunction: Private ordinary functions
Function, make-bpinfo: Private ordinary functions
Function, make-bpinstruction: Private ordinary functions
Function, make-bpioffset: Private ordinary functions
Function, make-bpiref: Private ordinary functions
Function, make-bpiscaling: Private ordinary functions
Function, make-bpload: Private ordinary functions
Function, make-bpmemref: Private ordinary functions
Function, make-bprange: Private ordinary functions
Function, make-bpstencil: Private ordinary functions
Function, make-bpstore: Private ordinary functions
Function, make-bpvalue: Private ordinary functions
Function, make-bpvariable: Private ordinary functions
Function, make-broadcasting-transformation: Private ordinary functions
Function, make-buffer: Public ordinary functions
Function, make-buffer-like-array: Public ordinary functions
Function, make-buffer-shard: Private ordinary functions
Function, make-buffer-shard-queue: Private ordinary functions
Function, make-call-form: Private ordinary functions
Function, make-call-instruction: Private ordinary functions
Function, make-cenv: Private ordinary functions
Function, make-cgraph: Public ordinary functions
Function, make-cluster: Private ordinary functions
Function, make-cnode: Private ordinary functions
Function, make-compile-cache: Private ordinary functions
Function, make-copy-invocation: Private ordinary functions
Function, make-cqueue: Public ordinary functions
Function, make-delayed-array: Public ordinary functions
Function, make-delayed-failure: Private ordinary functions
Function, make-delayed-fuse: Private ordinary functions
Function, make-delayed-map: Private ordinary functions
Function, make-delayed-multiple-value-map: Private ordinary functions
Function, make-delayed-nop: Private ordinary functions
Function, make-delayed-nth-value: Private ordinary functions
Function, make-delayed-range: Private ordinary functions
Function, make-delayed-reshape: Private ordinary functions
Function, make-delayed-unknown: Private ordinary functions
Function, make-delayed-wait: Private ordinary functions
Function, make-dendrite: Private ordinary functions
Function, make-denv: Private ordinary functions
Function, make-double-float-generator: Private ordinary functions
Function, make-ghostspec: Private ordinary functions
Function, make-graph: Public ordinary functions
Function, make-identity-transformation: Private ordinary functions
Function, make-integer-generator: Private ordinary functions
Function, make-invocation: Private ordinary functions
Function, make-ir-backend: Public ordinary functions
Function, make-ir-converter: Private ordinary functions
Function, make-iref-instruction: Private ordinary functions
Function, make-kernel: Public ordinary functions
Function, make-kernel-lambda: Public ordinary functions
Function, make-kernel-shard: Private ordinary functions
Function, make-lazy-array: Private ordinary functions
Function, make-lazy-array-generator: Private ordinary functions
Function, make-load-instruction: Private ordinary functions
Function, make-long-float-generator: Private ordinary functions
Function, make-matrix-generator: Private ordinary functions
Function, make-native-backend: Public ordinary functions
Function, make-network: Public ordinary functions
Function, make-node: Private ordinary functions
Function, make-node: Private ordinary functions
Function, make-non-empty-range: Private ordinary functions
Function, make-pdfs-queue: Private ordinary functions
Function, make-program: Public ordinary functions
Function, make-prune: Private ordinary functions
Function, make-range: Private ordinary functions
Function, make-range-generator: Private ordinary functions
Function, make-rank-zero-array: Public ordinary functions
Function, make-reference-backend: Public ordinary functions
Function, make-request: Private ordinary functions
Function, make-shape: Public ordinary functions
Function, make-shape-generator: Private ordinary functions
Function, make-shape-table: Public ordinary functions
Function, make-short-float-generator: Private ordinary functions
Function, make-simulated-memory: Private ordinary functions
Function, make-single-float-generator: Private ordinary functions
Function, make-split: Private ordinary functions
Function, make-split-queue: Private ordinary functions
Function, make-stem: Private ordinary functions
Function, make-stencil: Public ordinary functions
Function, make-storage: Private ordinary functions
Function, make-store-instruction: Private ordinary functions
Function, make-subset: Private ordinary functions
Function, make-substitute-kernel: Private ordinary functions
Function, make-table-of-primes: Private ordinary functions
Function, make-task: Public ordinary functions
Function, make-testing-backend: Public ordinary functions
Function, make-transform-transformation: Private ordinary functions
Function, make-transformation: Public ordinary functions
Function, make-tuple: Private ordinary functions
Function, make-unknown: Public ordinary functions
Function, make-vicinity: Private ordinary functions
Function, make-work-invocation: Private ordinary functions
Function, make-worker-pool: Private ordinary functions
Function, map-buffer-inputs: Public ordinary functions
Function, map-buffer-load-instructions: Public ordinary functions
Function, map-buffer-outputs: Public ordinary functions
Function, map-buffer-store-instructions: Public ordinary functions
Function, map-buffers: Public ordinary functions
Function, map-buffers-and-kernels: Public ordinary functions
Function, map-instruction-inputs: Public ordinary functions
Function, map-kernel-inputs: Public ordinary functions
Function, map-kernel-instructions: Public ordinary functions
Function, map-kernel-load-instructions: Public ordinary functions
Function, map-kernel-outputs: Public ordinary functions
Function, map-kernel-stencils: Public ordinary functions
Function, map-kernel-store-instructions: Public ordinary functions
Function, map-kernels: Public ordinary functions
Function, map-program-buffer-groups: Public ordinary functions
Function, map-program-buffers: Public ordinary functions
Function, map-program-kernels: Public ordinary functions
Function, map-program-tasks: Public ordinary functions
Function, map-range: Public ordinary functions
Function, map-shape: Public ordinary functions
Function, map-stencil-instructions: Public ordinary functions
Function, map-task-defined-buffers: Public ordinary functions
Function, map-task-kernels: Public ordinary functions
Function, map-task-predecessors: Public ordinary functions
Function, map-task-successors: Public ordinary functions
Function, maxdepth: Private ordinary functions
Function, maybe-add-to-stencil: Private ordinary functions
Function, maybe-prune: Private ordinary functions
Function, merge-actions: Private ordinary functions
Function, mergeable-dendrites-p: Private ordinary functions
Function, message: Private ordinary functions
Function, mksym: Private ordinary functions
Function, move-axis-to-front: Public ordinary functions
Function, multiple-arguments: Private ordinary functions
Function, native-backend-unpack: Private ordinary functions
Function, ndarray: Private ordinary functions
Function, network-test: Private ordinary functions
Function, next-bpvar: Private ordinary functions
Function, node-affinity: Private ordinary functions
Function, node-counter: Private ordinary functions
Function, node-dependencies: Private ordinary functions
Function, node-depth: Public ordinary functions
Function, node-eagerness: Private ordinary functions
Function, node-fn: Private ordinary functions
Function, node-height: Public ordinary functions
Function, node-kernel: Private ordinary functions
Function, node-more-important-p: Private ordinary functions
Function, node-object: Private ordinary functions
Function, node-p: Private ordinary functions
Function, node-position: Private ordinary functions
Function, node-predecessor-alist: Public ordinary functions
Function, node-successor-alist: Public ordinary functions
Function, node-users: Private ordinary functions
Function, nodep: Public ordinary functions
Function, non-empty-range-p: Public ordinary functions
Function, normalizing-transformation: Public ordinary functions
Function, nth-prime-max-bits: Private ordinary functions
Function, nth-prime-upper-bound: Private ordinary functions
Function, ntype-bits-per-element: Private ordinary functions
Function, ntype-cpp-info: Private ordinary functions
Function, ntype-cpp-translatable-p: Private ordinary functions
Function, ntype-unboxed-p: Private ordinary functions
Function, number-of-cpus: Public ordinary functions
Function, parse-cache-type: Private ordinary functions
Function, parse-defwrapper-lambda-list: Private ordinary functions
Function, parse-integer-set: Private ordinary functions
Function, parse-shape: Private ordinary functions
Function, parse-shape-pattern: Private ordinary functions
Function, parse-size: Private ordinary functions
Function, parse-transform-inputs: Private ordinary functions
Function, parse-transform-output: Private ordinary functions
Function, parse-transform-outputs: Private ordinary functions
Function, partition-dendrites: Private ordinary functions
Function, partition-program: Public ordinary functions
Function, pass: Private ordinary functions
Function, pdfs-queue-increase-node-eagerness: Private ordinary functions
Function, pdfs-queue-p: Private ordinary functions
Function, pdfs-queue-pop: Private ordinary functions
Function, pdfs-queue-priority-queue: Private ordinary functions
Function, pdfs-queue-push: Private ordinary functions
Function, pdfs-queue-size: Private ordinary functions
Function, pdfs-queue-tmpnode: Private ordinary functions
Function, peeling-reshaper: Public ordinary functions
Function, permuting-reshaper: Public ordinary functions
Function, pin-current-thread: Private ordinary functions
Function, potentially-superfluous-buffer-p: Private ordinary functions
Function, prime-factors: Public ordinary functions
Function, primep: Public ordinary functions
Function, primogenitor-buffer-shard: Private ordinary functions
Function, print-package-statistics: Private ordinary functions
Function, print-platform-information: Private ordinary functions
Function, print-system-statistics: Private ordinary functions
Function, program-buffer: Public ordinary functions
Function, program-final-task: Public ordinary functions
Function, program-from-lazy-arrays: Public ordinary functions
Function, program-initial-task: Public ordinary functions
Function, program-kernel: Public ordinary functions
Function, program-leaf-alist: Public ordinary functions
Function, program-number-of-buffers: Public ordinary functions
Function, program-number-of-kernels: Public ordinary functions
Function, program-number-of-tasks: Public ordinary functions
Function, program-root-buffers: Public ordinary functions
Function, program-task-vector: Public ordinary functions
Function, programp: Public ordinary functions
Function, propagate-split: Private ordinary functions
Function, propagate-split/bmap: Private ordinary functions
Function, propagate-split/kmap: Private ordinary functions
Function, prune-bits: Private ordinary functions
Function, prune-buffers: Private ordinary functions
Function, prune-p: Private ordinary functions
Function, prune-superfluous-buffers: Private ordinary functions
Function, range: Public ordinary functions
Function, range-contains: Public ordinary functions
Function, range-difference-list: Public ordinary functions
Function, range-difference-list--contiguous: Private ordinary functions
Function, range-difference-list--single: Private ordinary functions
Function, range-end: Public ordinary functions
Function, range-intersection: Public ordinary functions
Function, range-intersection-start-end-step: Private ordinary functions
Function, range-intersectionp: Public ordinary functions
Function, range-last: Public ordinary functions
Function, range-size: Public ordinary functions
Function, range-start: Public ordinary functions
Function, range-step: Public ordinary functions
Function, range-test: Private ordinary functions
Function, range=: Public ordinary functions
Function, rangep: Public ordinary functions
Function, ranges-blueprint: Private ordinary functions
Function, rbgs-test: Private ordinary functions
Function, recompute-kernel-instruction-vector: Private ordinary functions
Function, recompute-program-task-vector: Private ordinary functions
Function, reduction-of-fusions: Private ordinary functions
Function, reduction-test: Private ordinary functions
Function, reference-to-delayed-unknown: Private ordinary functions
Function, refine-buffer-shard: Private ordinary functions
Function, refine-kernel-shard: Private ordinary functions
Function, refine-source: Private ordinary functions
Function, refine-target: Private ordinary functions
Function, register-free-variable: Private ordinary functions
Function, relative-position: Private ordinary functions
Function, remove-axis-after: Private ordinary functions
Function, remove-axis-before: Private ordinary functions
Function, remove-shape-table-entry: Public ordinary functions
Function, report: Private ordinary functions
Function, request-cvar: Private ordinary functions
Function, request-done: Private ordinary functions
Function, request-lock: Private ordinary functions
Function, reshape-randomly: Private ordinary functions
Function, reshape-test: Private ordinary functions
Function, reshape/flatten: Private ordinary functions
Function, reshape/unflatten: Private ordinary functions
Function, result-variables: Private ordinary functions
Function, reuse-optimizing-transformation: Public ordinary functions
Function, reverse-transform-axis-and-position: Private ordinary functions
Function, root-buffer-p: Public ordinary functions
Function, run-petalisp-test-suite: Public ordinary functions
Function, run-tests: Public ordinary functions
Function, s16-memref: Private ordinary functions
Function, s32-memref: Private ordinary functions
Function, s64-memref: Private ordinary functions
Function, s8-memref: Private ordinary functions
Function, select-masked-elements: Private ordinary functions
Function, shape-contains: Public ordinary functions
Function, shape-difference-list: Public ordinary functions
Function, shape-dimension: Public ordinary functions
Function, shape-dimensions: Public ordinary functions
Function, shape-intersection: Public ordinary functions
Function, shape-intersectionp: Public ordinary functions
Function, shape-prefix: Public ordinary functions
Function, shape-range: Public ordinary functions
Function, shape-ranges: Public ordinary functions
Function, shape-rank: Public ordinary functions
Function, shape-size: Public ordinary functions
Function, shape-strides: Private ordinary functions
Function, shape-subseq: Public ordinary functions
Function, shape-suffix: Public ordinary functions
Function, shape-table-ht: Private ordinary functions
Function, shape-table-p: Public ordinary functions
Function, shape-table-value: Public ordinary functions
Function, shape<: Public ordinary functions
Function, shape=: Public ordinary functions
Function, shapep: Public ordinary functions
Function, shrink-shape: Public ordinary functions
Function, simplify-array: Private ordinary functions
Function, simplify-input: Private ordinary functions
Function, simulate-cenv-evaluation: Private ordinary functions
Function, simulate-storage-reference: Private ordinary functions
Function, simulated-memory-allocation: Private ordinary functions
Function, simulated-memory-generation: Private ordinary functions
Function, simulated-memory-mode: Private ordinary functions
Function, simulated-memory-p: Private ordinary functions
Function, simulated-memory-read-index: Private ordinary functions
Function, simulated-memory-read-shape: Private ordinary functions
Function, simulated-memory-table: Private ordinary functions
Function, simulated-memory-write-index: Private ordinary functions
Function, simulated-memory-write-shape: Private ordinary functions
Function, size-one-range-p: Public ordinary functions
Function, size-one-range-removing-transformation: Private ordinary functions
Function, split-axis: Public ordinary functions
Function, split-left-child: Public ordinary functions
Function, split-more-important-p: Private ordinary functions
Function, split-parent: Public ordinary functions
Function, split-position: Public ordinary functions
Function, split-queue-emptyp: Private ordinary functions
Function, split-queue-pop: Private ordinary functions
Function, split-queue-push: Private ordinary functions
Function, split-range: Public ordinary functions
Function, split-right-child: Public ordinary functions
Function, split-shape: Public ordinary functions
Function, splitp: Public ordinary functions
Function, start-worker: Private ordinary functions
Function, stem-buffers: Private ordinary functions
Function, stem-cluster: Private ordinary functions
Function, stem-kernel: Private ordinary functions
Function, stem-p: Private ordinary functions
Function, stem-validp: Private ordinary functions
Function, stencil-buffer: Public ordinary functions
Function, stencil-center: Public ordinary functions
Function, stencil-from-instruction: Public ordinary functions
Function, stencil-input-rank: Public ordinary functions
Function, stencil-instruction-offsets: Private ordinary functions
Function, stencil-instructions: Public ordinary functions
Function, stencil-output-mask: Public ordinary functions
Function, stencil-output-rank: Public ordinary functions
Function, stencil-scalings: Public ordinary functions
Function, stencilp: Public ordinary functions
Function, stencils-blueprint: Private ordinary functions
Function, storage-action: Private ordinary functions
Function, storage-allocation: Public ordinary functions
Function, storage-bind: Private ordinary functions
Function, storage-ghost-layer-alist: Public ordinary functions
Function, storage-ntype: Public ordinary functions
Function, storage-offset: Public ordinary functions
Function, storage-rank: Public ordinary functions
Function, storage-size: Public ordinary functions
Function, storage-size-in-bytes: Private ordinary functions
Function, storage-strides: Public ordinary functions
Function, storagep: Public ordinary functions
Function, store-instruction-buffer: Public ordinary functions
Function, store-instruction-input: Public ordinary functions
Function, store-instruction-inputs: Private ordinary functions
Function, store-instruction-number: Private ordinary functions
Function, store-instruction-offsets: Private ordinary functions
Function, store-instruction-p: Public ordinary functions
Function, store-instruction-scalings: Private ordinary functions
Function, store-instruction-transformation: Public ordinary functions
Function, subdivide-arrays: Public ordinary functions
Function, subdivide-fragments: Private ordinary functions
Function, subdivide-shapes: Public ordinary functions
Function, subrangep: Public ordinary functions
Function, subset-elements: Private ordinary functions
Function, subset-p: Private ordinary functions
Function, subset-weight: Private ordinary functions
Function, subshapep: Public ordinary functions
Function, substitute-lazy-array: Public ordinary functions
Function, substitute-lazy-arrays: Public ordinary functions
Function, subtract-fragment-lists: Private ordinary functions
Function, suffix-factor: Private ordinary functions
Function, sum-axis: Private ordinary functions
Function, sum-of-pairs: Private ordinary functions
Function, symbol-defined-p: Private ordinary functions
Function, symbol-methods: Private ordinary functions
Function, system-git-revision: Private ordinary functions
Function, system-source-file-pathnames: Private ordinary functions
Function, task-defined-buffers: Private ordinary functions
Function, task-kernels: Private ordinary functions
Function, task-number: Public ordinary functions
Function, task-predecessors: Private ordinary functions
Function, task-program: Public ordinary functions
Function, task-successors: Private ordinary functions
Function, taskp: Public ordinary functions
Function, touch: Private ordinary functions
Function, transform-axis-and-position: Private ordinary functions
Function, transform-buffer: Private ordinary functions
Function, transform-kernel: Private ordinary functions
Function, transformation-blueprint: Public ordinary functions
Function, transformation-input-mask: Public ordinary functions
Function, transformation-input-rank: Public ordinary functions
Function, transformation-input-symbol: Private ordinary functions
Function, transformation-inverse: Private ordinary functions
Function, transformation-invertiblep: Public ordinary functions
Function, transformation-offsets: Public ordinary functions
Function, transformation-output-mask: Public ordinary functions
Function, transformation-output-rank: Public ordinary functions
Function, transformation-scalings: Public ordinary functions
Function, transformationp: Public ordinary functions
Function, trivial-object-p: Private ordinary functions
Function, trivial-object-value: Private ordinary functions
Function, tuple-from-object: Private ordinary functions
Function, tuple-p: Private ordinary functions
Function, tuple-subset: Private ordinary functions
Function, tuple-subsets: Private ordinary functions
Function, tuple-weight: Private ordinary functions
Function, tuple>: Private ordinary functions
Function, type-specifier-p: Private ordinary functions
Function, u1-memref: Private ordinary functions
Function, u16-memref: Private ordinary functions
Function, u2-memref: Private ordinary functions
Function, u32-memref: Private ordinary functions
Function, u4-memref: Private ordinary functions
Function, u64-memref: Private ordinary functions
Function, u8-memref: Private ordinary functions
Function, unlink-kernel-shard: Private ordinary functions
Function, unpack-array: Public ordinary functions
Function, v-cycle-test: Private ordinary functions
Function, value-array: Public ordinary functions
Function, value-blueprint: Private ordinary functions
Function, vicinity-left-neighbors: Public ordinary functions
Function, vicinity-left-neighbors-vec: Private ordinary functions
Function, vicinity-right-neighbors: Public ordinary functions
Function, vicinity-right-neighbors-vec: Private ordinary functions
Function, vicinityp: Public ordinary functions
Function, wait: Public ordinary functions
Function, worker-barrier-sense: Private ordinary functions
Function, worker-enqueue: Private ordinary functions
Function, worker-evaluate: Private ordinary functions
Function, worker-id: Private ordinary functions
Function, worker-loop: Private ordinary functions
Function, worker-pool-active: Private ordinary functions
Function, worker-pool-barrier-countdown: Private ordinary functions
Function, worker-pool-barrier-sense: Private ordinary functions
Function, worker-pool-join: Private ordinary functions
Function, worker-pool-liveness: Private ordinary functions
Function, worker-pool-p: Private ordinary functions
Function, worker-pool-size: Private ordinary functions
Function, worker-pool-worker: Private ordinary functions
Function, worker-pool-workers: Private ordinary functions
Function, worker-queue: Private ordinary functions
Function, worker-serious-conditions: Private ordinary functions
Function, worker-synchronize-and-invoke: Private ordinary functions
Function, worker-thread: Private ordinary functions
Function, worker-worker-pool: Private ordinary functions
Function, workerp: Private ordinary functions
Function, ~: Public ordinary functions
Function, ~*: Public ordinary functions
function-cpp-info: Private ordinary functions
function-cpp-translatable-p: Private ordinary functions
fuse-ranges: Public ordinary functions
fuse-shapes: Public ordinary functions
fusion-test: Private ordinary functions

G
generate-double-float: Private ordinary functions
generate-integer: Private ordinary functions
generate-lazy-array: Private ordinary functions
generate-long-float: Private ordinary functions
generate-matrix: Private ordinary functions
generate-range: Private ordinary functions
generate-shape: Private ordinary functions
generate-short-float: Private ordinary functions
generate-single-float: Private ordinary functions
Generic Function, (setf backend-debug-flag): Public generic functions
Generic Function, (setf memory-children-slot): Private generic functions
Generic Function, (setf memory-cores-slot): Private generic functions
Generic Function, approximately-equal: Private generic functions
Generic Function, backend-compute: Public generic functions
Generic Function, backend-compute-asynchronously: Public generic functions
Generic Function, backend-debug-flag: Public generic functions
Generic Function, backend-evaluator: Public generic functions
Generic Function, backend-worker-pool: Private generic functions
Generic Function, backendp: Public generic functions
Generic Function, bpinstruction-form: Private generic functions
Generic Function, bpvalue-form: Private generic functions
Generic Function, bpvalue=: Private generic functions
Generic Function, check-ir-node: Private generic functions
Generic Function, check-shard: Private generic functions
Generic Function, clone-reference: Private generic functions
Generic Function, compile-blueprint: Public generic functions
Generic Function, compile-cache: Private generic functions
Generic Function, compile-kernel: Public generic functions
Generic Function, compose-two-transformations: Private generic functions
Generic Function, convert-cluster: Private generic functions
Generic Function, core-memory: Public generic functions
Generic Function, core-name: Public generic functions
Generic Function, delayed-action-inputs: Public generic functions
Generic Function, delayed-action-value: Private generic functions
Generic Function, delete-backend: Public generic functions
Generic Function, device-cores: Public generic functions
Generic Function, device-memory: Public generic functions
Generic Function, device-name: Public generic functions
Generic Function, enlarge-transformation: Public generic functions
Generic Function, grow-dendrite-aux: Private generic functions
Generic Function, inflate-transformation: Public generic functions
Generic Function, input-gradient: Private generic functions
Generic Function, instruction-blueprint: Private generic functions
Generic Function, instruction-number-of-values: Public generic functions
Generic Function, invert-transformation: Public generic functions
Generic Function, ir-backend-compile-cache: Private generic functions
Generic Function, ir-backend-compiled: Private generic functions
Generic Function, ir-backend-interpreted: Private generic functions
Generic Function, ir-backend-mode: Private generic functions
Generic Function, load-function: Public generic functions
Generic Function, map-transformation-inputs: Public generic functions
Generic Function, map-transformation-outputs: Public generic functions
Generic Function, memory-bandwidth: Public generic functions
Generic Function, memory-children: Public generic functions
Generic Function, memory-children-slot: Private generic functions
Generic Function, memory-cores: Public generic functions
Generic Function, memory-cores-slot: Private generic functions
Generic Function, memory-granularity: Public generic functions
Generic Function, memory-latency: Public generic functions
Generic Function, memory-name: Public generic functions
Generic Function, memory-parent: Public generic functions
Generic Function, memory-parent-bandwidth: Public generic functions
Generic Function, memory-size: Public generic functions
Generic Function, native-backend: Private generic functions
Generic Function, network-evaluator: Private generic functions
Generic Function, network-outputs: Public generic functions
Generic Function, network-parameters: Public generic functions
Generic Function, reference-backend: Private generic functions
Generic Function, request-completedp: Public generic functions
Generic Function, request-wait: Public generic functions
Generic Function, requestp: Public generic functions
Generic Function, serious-conditions: Private generic functions
Generic Function, shape-designator-shape: Public generic functions
Generic Function, source-function: Public generic functions
Generic Function, store-function: Public generic functions
Generic Function, substitute-delayed-action: Public generic functions
Generic Function, target-function: Public generic functions
Generic Function, transform-axis: Public generic functions
Generic Function, transform-index: Public generic functions
Generic Function, transform-instruction-input: Private generic functions
Generic Function, transform-instruction-output: Private generic functions
Generic Function, transform-shape: Public generic functions
Generic Function, transformation-similar: Public generic functions
Generic Function, transformation=: Public generic functions
Generic Function, trivial-lazy-array-p: Private generic functions
Generic Function, trivial-lazy-array-value: Private generic functions
Generic Function, unpack-function: Public generic functions
get-result: Private ordinary functions
ghostspec-buffer: Private ordinary functions
ghostspec-left-padding: Private ordinary functions
ghostspec-left-padding-vec: Private ordinary functions
ghostspec-pattern: Private ordinary functions
ghostspec-right-padding: Private ordinary functions
ghostspec-right-padding-vec: Private ordinary functions
ghostspecp: Private ordinary functions
graph-add-edge: Public ordinary functions
graph-compute-distances: Private ordinary functions
graph-compute-node-depth: Private ordinary functions
graph-compute-node-height: Private ordinary functions
graph-ensure-node: Public ordinary functions
graph-object-nodes: Public ordinary functions
graph-parallel-depth-first-schedule: Public ordinary functions
graphp: Public ordinary functions
grow-dendrite: Private ordinary functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions
grow-dendrite-aux: Private generic functions

H
hairy-transformation-input-mask: Private ordinary functions
hairy-transformation-input-rank: Private ordinary functions
hairy-transformation-inverse: Private ordinary functions
hairy-transformation-offsets: Private ordinary functions
hairy-transformation-output-mask: Private ordinary functions
hairy-transformation-output-rank: Private ordinary functions
hairy-transformation-p: Private ordinary functions
hairy-transformation-scalings: Private ordinary functions
harmonized-element-type: Public ordinary functions
host-device: Public ordinary functions

I
identity-transformation: Public ordinary functions
identity-transformation-input-mask: Private ordinary functions
identity-transformation-input-rank: Private ordinary functions
identity-transformation-inverse: Private ordinary functions
identity-transformation-offsets: Private ordinary functions
identity-transformation-output-mask: Private ordinary functions
identity-transformation-output-rank: Private ordinary functions
identity-transformation-p: Public ordinary functions
identity-transformation-scalings: Private ordinary functions
index*: Public compiler macros
index*: Public ordinary functions
index+: Public compiler macros
index+: Public ordinary functions
indices-test: Private ordinary functions
inflate-shape: Public ordinary functions
inflate-transformation: Public generic functions
inflate-transformation: Public generic functions
inflate-transformation: Public generic functions
inflate-transformation: Public generic functions
initialize-instance: Public standalone methods
input-gradient: Private generic functions
input-gradient: Private generic functions
input-gradient: Private generic functions
input-gradient: Private generic functions
insert-axis-after: Private ordinary functions
insert-axis-before: Private ordinary functions
insert-copy-kernel: Private ordinary functions
instruction-blueprint: Private generic functions
instruction-blueprint: Private generic functions
instruction-blueprint: Private generic functions
instruction-blueprint: Private generic functions
instruction-blueprint: Private generic functions
instruction-blueprints: Private ordinary functions
instruction-buffer: Private ordinary functions
instruction-inputs: Public ordinary functions
instruction-number: Public ordinary functions
instruction-number-of-values: Public generic functions
instruction-number-of-values: Public generic functions
instruction-number-of-values: Public generic functions
instruction-number-of-values: Public generic functions
instruction-number-of-values: Public generic functions
instruction-transformation: Public ordinary functions
instructionp: Public ordinary functions
interior-buffer-p: Public ordinary functions
interpret-kernel: Private ordinary functions
invert-transformation: Public generic functions
invert-transformation: Public generic functions
invert-transformation: Public generic functions
invocation-iteration-space: Private ordinary functions
invocation-kernel: Private ordinary functions
invocation-kfn: Private ordinary functions
invocation-sources: Private ordinary functions
invocation-targets: Private ordinary functions
invocationp: Private ordinary functions
ir-backend-array: Private ordinary functions
ir-backend-compile-cache: Private generic functions
ir-backend-compile-cache: Private generic functions
ir-backend-compiled: Private generic functions
ir-backend-compiled: Private generic functions
ir-backend-interpreted: Private generic functions
ir-backend-interpreted: Private generic functions
ir-backend-mode: Private generic functions
ir-backend-mode: Private generic functions
ir-converter-array-table: Private ordinary functions
ir-converter-buffer-dendrites-table: Private ordinary functions
ir-converter-cluster-table: Private ordinary functions
ir-converter-cons-updates: Private ordinary functions
ir-converter-empty-p: Private ordinary functions
ir-converter-kernel-size-threshold: Private ordinary functions
ir-converter-leaf-alist: Private ordinary functions
ir-converter-next-cluster: Private ordinary functions
ir-converter-p: Private ordinary functions
ir-converter-potentially-superfluous-buffers: Private ordinary functions
ir-converter-pqueue: Private ordinary functions
ir-converter-scalar-table: Private ordinary functions
ir-converter-unknown-table: Private ordinary functions
ir-from-lazy-arrays: Public ordinary functions
iref-instruction-inputs: Private ordinary functions
iref-instruction-number: Private ordinary functions
iref-instruction-p: Public ordinary functions
iref-instruction-transformation: Public ordinary functions
is: Public macros
iterating-instruction-p: Public ordinary functions
iteration-space-blueprint: Public ordinary functions

J
jacobi-test: Private ordinary functions

K
karmarkar-karp: Public ordinary functions
kernel-blueprint: Public ordinary functions
kernel-cost: Public ordinary functions
kernel-data: Private ordinary functions
kernel-highest-instruction-number: Private ordinary functions
kernel-instruction-vector: Public ordinary functions
kernel-iteration-space: Public ordinary functions
kernel-load-stencils: Public ordinary functions
kernel-number: Public ordinary functions
kernel-number-of-inputs: Private ordinary functions
kernel-number-of-loads: Public ordinary functions
kernel-number-of-outputs: Public ordinary functions
kernel-number-of-stores: Public ordinary functions
kernel-program: Public ordinary functions
kernel-reuse-potential: Public ordinary functions
kernel-shard-iteration-space: Public ordinary functions
kernel-shard-kernel: Public ordinary functions
kernel-shard-more-important-p: Public ordinary functions
kernel-shard-p: Public ordinary functions
kernel-shard-sources: Public ordinary functions
kernel-shard-targets: Public ordinary functions
kernel-sources: Public ordinary functions
kernel-store-stencils: Public ordinary functions
kernel-targets: Public ordinary functions
kernel-task: Public ordinary functions
kernelp: Public ordinary functions

L
lazy: Public ordinary functions
lazy-array: Public ordinary functions
lazy-array-delayed-action: Public ordinary functions
lazy-array-depth: Public ordinary functions
lazy-array-dimension: Public ordinary functions
lazy-array-dimensions: Public ordinary functions
lazy-array-element-type: Public ordinary functions
lazy-array-from-array: Public ordinary functions
lazy-array-from-range: Public ordinary functions
lazy-array-from-scalar: Public ordinary functions
lazy-array-inputs: Public ordinary functions
lazy-array-ntype: Public ordinary functions
lazy-array-p: Public ordinary functions
lazy-array-range: Public ordinary functions
lazy-array-ranges: Public ordinary functions
lazy-array-rank: Public ordinary functions
lazy-array-refcount: Public ordinary functions
lazy-array-shape: Public ordinary functions
lazy-array-size: Public ordinary functions
lazy-array-size-in-bytes: Private ordinary functions
lazy-array-value: Private ordinary functions
lazy-broadcast: Public ordinary functions
lazy-broadcast-list-of-arrays: Public ordinary functions
lazy-change-shape: Private ordinary functions
lazy-change-shape/normalized: Private ordinary functions
lazy-drop-axes: Public ordinary functions
lazy-fuse: Public ordinary functions
lazy-fuse-and-harmonize: Public ordinary functions
lazy-harmonize: Public ordinary functions
lazy-harmonize-list-of-arrays: Public ordinary functions
lazy-index-components: Public ordinary functions
lazy-map: Public ordinary functions
lazy-map-test: Private ordinary functions
lazy-multiple-value: Public ordinary functions
lazy-multiple-value-map: Public ordinary functions
lazy-multireduce: Public ordinary functions
lazy-overwrite: Public ordinary functions
lazy-overwrite-and-harmonize: Public ordinary functions
lazy-reduce: Public ordinary functions
lazy-reduce-aux: Private ordinary functions
lazy-ref: Public ordinary functions
lazy-reshape: Public ordinary functions
lazy-reshape-aux: Private ordinary functions
lazy-reshape-aux/function: Private ordinary functions
lazy-reshape-aux/integer: Private ordinary functions
lazy-reshape-aux/shape: Private ordinary functions
lazy-reshape-aux/transformation: Private ordinary functions
lazy-reshape-using-transformation: Public ordinary functions
lazy-slice: Public ordinary functions
lazy-slices: Public ordinary functions
lazy-sort: Public ordinary functions
lazy-sort-test: Private ordinary functions
lazy-stack: Public ordinary functions
lazy-unknown-p: Public ordinary functions
lazy-unknowns: Public ordinary functions
leaf-buffer-p: Public ordinary functions
linear-algebra-test: Private ordinary functions
linux-host-device: Private ordinary functions
lisp-compile-blueprint: Private ordinary functions
lisp-translate-blueprint: Private ordinary functions
listify-range-for-printing: Private ordinary functions
listify-shape-for-printing: Private ordinary functions
load-foreign-code: Public ordinary functions
load-function: Public generic functions
load-function: Public generic functions
load-function: Public generic functions
load-instruction-buffer: Public ordinary functions
load-instruction-inputs: Private ordinary functions
load-instruction-number: Private ordinary functions
load-instruction-p: Public ordinary functions
load-instruction-transformation: Public ordinary functions
load-or-store-instruction-p: Public ordinary functions

M
Macro, ad-record-input-gradient-cache: Private macros
Macro, bind: Private macros
Macro, buffer-dendrites: Private macros
Macro, defgenerator: Private macros
Macro, define-float-generator: Private macros
Macro, define-test: Public macros
Macro, defwrapper: Private macros
Macro, do-buffer-inputs: Public macros
Macro, do-buffer-load-instructions: Public macros
Macro, do-buffer-outputs: Public macros
Macro, do-buffer-store-instructions: Public macros
Macro, do-instruction-inputs: Public macros
Macro, do-kernel-inputs: Public macros
Macro, do-kernel-instructions: Public macros
Macro, do-kernel-load-instructions: Public macros
Macro, do-kernel-outputs: Public macros
Macro, do-kernel-stencils: Private macros
Macro, do-kernel-store-instructions: Public macros
Macro, do-program-buffer-groups: Public macros
Macro, do-program-buffers: Public macros
Macro, do-program-kernels: Public macros
Macro, do-program-tasks: Public macros
Macro, do-stencil-instructions: Public macros
Macro, do-task-defined-buffers: Public macros
Macro, do-task-kernels: Public macros
Macro, do-task-predecessors: Public macros
Macro, do-task-successors: Public macros
Macro, document-compiler-macro: Public macros
Macro, document-compiler-macros: Public macros
Macro, document-function: Public macros
Macro, document-functions: Public macros
Macro, document-method-combination: Public macros
Macro, document-method-combinations: Public macros
Macro, document-setf-expander: Public macros
Macro, document-setf-expanders: Public macros
Macro, document-structure: Public macros
Macro, document-structures: Public macros
Macro, document-type: Private macros
Macro, document-types: Private macros
Macro, document-variable: Public macros
Macro, document-variables: Public macros
Macro, ensure-instruction-clone: Private macros
Macro, expand-documentation: Private macros
Macro, is: Public macros
Macro, maxf: Private macros
Macro, signals: Public macros
Macro, transform: Public macros
Macro, with-backend: Public macros
Macro, with-collector: Private macros
Macro, with-collectors: Public macros
Macro, with-debug-optimization: Public macros
Macro, with-lazy-arrays: Public macros
Macro, with-pinned-objects: Public macros
Macro, with-pinned-objects*: Public macros
Macro, with-random-state: Private macros
Macro, with-temporary-backend: Public macros
Macro, with-test-harness: Private macros
Macro, with-testing-backend: Private macros
Macro, with-unsafe-optimization: Public macros
Macro, with-unsafe-optimization*: Public macros
Macro, without-compiler-notes: Public macros
macro-name-p: Private ordinary functions
make-action: Private ordinary functions
make-ad-record: Private ordinary functions
make-allocation: Private ordinary functions
make-array-from-shape-and-ntype: Public ordinary functions
make-bpcall: Private ordinary functions
make-bpconstant: Private ordinary functions
make-bpfunction: Private ordinary functions
make-bpinfo: Private ordinary functions
make-bpinstruction: Private ordinary functions
make-bpioffset: Private ordinary functions
make-bpiref: Private ordinary functions
make-bpiscaling: Private ordinary functions
make-bpload: Private ordinary functions
make-bpmemref: Private ordinary functions
make-bprange: Private ordinary functions
make-bpstencil: Private ordinary functions
make-bpstore: Private ordinary functions
make-bpvalue: Private ordinary functions
make-bpvariable: Private ordinary functions
make-broadcasting-transformation: Private ordinary functions
make-buffer: Public ordinary functions
make-buffer-like-array: Public ordinary functions
make-buffer-shard: Private ordinary functions
make-buffer-shard-queue: Private ordinary functions
make-call-form: Private ordinary functions
make-call-instruction: Private ordinary functions
make-cenv: Private ordinary functions
make-cgraph: Public ordinary functions
make-cluster: Private ordinary functions
make-cnode: Private ordinary functions
make-compile-cache: Private ordinary functions
make-copy-invocation: Private ordinary functions
make-cqueue: Public ordinary functions
make-delayed-array: Public ordinary functions
make-delayed-failure: Private ordinary functions
make-delayed-fuse: Private ordinary functions
make-delayed-map: Private ordinary functions
make-delayed-multiple-value-map: Private ordinary functions
make-delayed-nop: Private ordinary functions
make-delayed-nth-value: Private ordinary functions
make-delayed-range: Private ordinary functions
make-delayed-reshape: Private ordinary functions
make-delayed-unknown: Private ordinary functions
make-delayed-wait: Private ordinary functions
make-dendrite: Private ordinary functions
make-denv: Private ordinary functions
make-double-float-generator: Private ordinary functions
make-ghostspec: Private ordinary functions
make-graph: Public ordinary functions
make-identity-transformation: Private ordinary functions
make-integer-generator: Private ordinary functions
make-invocation: Private ordinary functions
make-ir-backend: Public ordinary functions
make-ir-converter: Private ordinary functions
make-iref-instruction: Private ordinary functions
make-kernel: Public ordinary functions
make-kernel-lambda: Public ordinary functions
make-kernel-shard: Private ordinary functions
make-lazy-array: Private ordinary functions
make-lazy-array-generator: Private ordinary functions
make-load-instruction: Private ordinary functions
make-long-float-generator: Private ordinary functions
make-matrix-generator: Private ordinary functions
make-native-backend: Public ordinary functions
make-network: Public ordinary functions
make-node: Private ordinary functions
make-node: Private ordinary functions
make-non-empty-range: Private ordinary functions
make-pdfs-queue: Private ordinary functions
make-program: Public ordinary functions
make-prune: Private ordinary functions
make-range: Private ordinary functions
make-range-generator: Private ordinary functions
make-rank-zero-array: Public ordinary functions
make-reference-backend: Public ordinary functions
make-request: Private ordinary functions
make-shape: Public ordinary functions
make-shape-generator: Private ordinary functions
make-shape-table: Public ordinary functions
make-short-float-generator: Private ordinary functions
make-simulated-memory: Private ordinary functions
make-single-float-generator: Private ordinary functions
make-split: Private ordinary functions
make-split-queue: Private ordinary functions
make-stem: Private ordinary functions
make-stencil: Public ordinary functions
make-storage: Private ordinary functions
make-store-instruction: Private ordinary functions
make-subset: Private ordinary functions
make-substitute-kernel: Private ordinary functions
make-table-of-primes: Private ordinary functions
make-task: Public ordinary functions
make-testing-backend: Public ordinary functions
make-transform-transformation: Private ordinary functions
make-transformation: Public ordinary functions
make-tuple: Private ordinary functions
make-unknown: Public ordinary functions
make-vicinity: Private ordinary functions
make-work-invocation: Private ordinary functions
make-worker-pool: Private ordinary functions
map-buffer-inputs: Public ordinary functions
map-buffer-load-instructions: Public ordinary functions
map-buffer-outputs: Public ordinary functions
map-buffer-store-instructions: Public ordinary functions
map-buffers: Public ordinary functions
map-buffers-and-kernels: Public ordinary functions
map-instruction-inputs: Public ordinary functions
map-kernel-inputs: Public ordinary functions
map-kernel-instructions: Public ordinary functions
map-kernel-load-instructions: Public ordinary functions
map-kernel-outputs: Public ordinary functions
map-kernel-stencils: Public ordinary functions
map-kernel-store-instructions: Public ordinary functions
map-kernels: Public ordinary functions
map-program-buffer-groups: Public ordinary functions
map-program-buffers: Public ordinary functions
map-program-kernels: Public ordinary functions
map-program-tasks: Public ordinary functions
map-range: Public ordinary functions
map-shape: Public ordinary functions
map-stencil-instructions: Public ordinary functions
map-task-defined-buffers: Public ordinary functions
map-task-kernels: Public ordinary functions
map-task-predecessors: Public ordinary functions
map-task-successors: Public ordinary functions
map-transformation-inputs: Public generic functions
map-transformation-inputs: Public generic functions
map-transformation-inputs: Public generic functions
map-transformation-outputs: Public generic functions
map-transformation-outputs: Public generic functions
map-transformation-outputs: Public generic functions
maxdepth: Private ordinary functions
maxf: Private macros
maybe-add-to-stencil: Private ordinary functions
maybe-prune: Private ordinary functions
memory-bandwidth: Public generic functions
memory-bandwidth: Public generic functions
memory-children: Public generic functions
memory-children: Public generic functions
memory-children-slot: Private generic functions
memory-children-slot: Private generic functions
memory-cores: Public generic functions
memory-cores: Public generic functions
memory-cores-slot: Private generic functions
memory-cores-slot: Private generic functions
memory-granularity: Public generic functions
memory-granularity: Public generic functions
memory-latency: Public generic functions
memory-latency: Public generic functions
memory-name: Public generic functions
memory-name: Public generic functions
memory-parent: Public generic functions
memory-parent: Public generic functions
memory-parent-bandwidth: Public generic functions
memory-parent-bandwidth: Public generic functions
memory-size: Public generic functions
memory-size: Public generic functions
merge-actions: Private ordinary functions
mergeable-dendrites-p: Private ordinary functions
message: Private ordinary functions
Method, (setf backend-debug-flag): Public generic functions
Method, (setf memory-children-slot): Private generic functions
Method, (setf memory-cores-slot): Private generic functions
Method, approximately-equal: Private generic functions
Method, approximately-equal: Private generic functions
Method, approximately-equal: Private generic functions
Method, approximately-equal: Private generic functions
Method, approximately-equal: Private generic functions
Method, backend-compute: Public generic functions
Method, backend-compute: Public generic functions
Method, backend-compute: Public generic functions
Method, backend-compute: Public generic functions
Method, backend-compute: Public generic functions
Method, backend-compute-asynchronously: Public generic functions
Method, backend-compute-asynchronously: Public generic functions
Method, backend-debug-flag: Public generic functions
Method, backend-evaluator: Public generic functions
Method, backend-evaluator: Public generic functions
Method, backend-evaluator: Public generic functions
Method, backend-evaluator: Public generic functions
Method, backend-worker-pool: Private generic functions
Method, backendp: Public generic functions
Method, backendp: Public generic functions
Method, bpinstruction-form: Private generic functions
Method, bpinstruction-form: Private generic functions
Method, bpinstruction-form: Private generic functions
Method, bpinstruction-form: Private generic functions
Method, bpvalue-form: Private generic functions
Method, bpvalue-form: Private generic functions
Method, bpvalue=: Private generic functions
Method, bpvalue=: Private generic functions
Method, bpvalue=: Private generic functions
Method, check-ir-node: Private generic functions
Method, check-ir-node: Private generic functions
Method, check-ir-node: Private generic functions
Method, check-ir-node: Private generic functions
Method, check-ir-node: Private generic functions
Method, check-ir-node: Private generic functions
Method, check-ir-node: Private generic functions
Method, check-shard: Private generic functions
Method, check-shard: Private generic functions
Method, clone-reference: Private generic functions
Method, clone-reference: Private generic functions
Method, clone-reference: Private generic functions
Method, compile-blueprint: Public generic functions
Method, compile-blueprint: Public generic functions
Method, compile-blueprint: Public generic functions
Method, compile-blueprint: Public generic functions
Method, compile-blueprint: Public generic functions
Method, compile-blueprint: Public generic functions
Method, compile-cache: Private generic functions
Method, compile-kernel: Public generic functions
Method, compose-two-transformations: Private generic functions
Method, compose-two-transformations: Private generic functions
Method, compose-two-transformations: Private generic functions
Method, compose-two-transformations: Private generic functions
Method, convert-cluster: Private generic functions
Method, convert-cluster: Private generic functions
Method, convert-cluster: Private generic functions
Method, core-memory: Public generic functions
Method, core-name: Public generic functions
Method, delayed-action-inputs: Public generic functions
Method, delayed-action-inputs: Public generic functions
Method, delayed-action-inputs: Public generic functions
Method, delayed-action-inputs: Public generic functions
Method, delayed-action-inputs: Public generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delayed-action-value: Private generic functions
Method, delete-backend: Public generic functions
Method, delete-backend: Public generic functions
Method, delete-backend: Public generic functions
Method, device-cores: Public generic functions
Method, device-memory: Public generic functions
Method, device-name: Public generic functions
Method, enlarge-transformation: Public generic functions
Method, enlarge-transformation: Public generic functions
Method, enlarge-transformation: Public generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, grow-dendrite-aux: Private generic functions
Method, inflate-transformation: Public generic functions
Method, inflate-transformation: Public generic functions
Method, inflate-transformation: Public generic functions
Method, initialize-instance: Public standalone methods
Method, input-gradient: Private generic functions
Method, input-gradient: Private generic functions
Method, input-gradient: Private generic functions
Method, instruction-blueprint: Private generic functions
Method, instruction-blueprint: Private generic functions
Method, instruction-blueprint: Private generic functions
Method, instruction-blueprint: Private generic functions
Method, instruction-number-of-values: Public generic functions
Method, instruction-number-of-values: Public generic functions
Method, instruction-number-of-values: Public generic functions
Method, instruction-number-of-values: Public generic functions
Method, invert-transformation: Public generic functions
Method, invert-transformation: Public generic functions
Method, ir-backend-compile-cache: Private generic functions
Method, ir-backend-compiled: Private generic functions
Method, ir-backend-interpreted: Private generic functions
Method, ir-backend-mode: Private generic functions
Method, load-function: Public generic functions
Method, load-function: Public generic functions
Method, map-transformation-inputs: Public generic functions
Method, map-transformation-inputs: Public generic functions
Method, map-transformation-outputs: Public generic functions
Method, map-transformation-outputs: Public generic functions
Method, memory-bandwidth: Public generic functions
Method, memory-children: Public generic functions
Method, memory-children-slot: Private generic functions
Method, memory-cores: Public generic functions
Method, memory-cores-slot: Private generic functions
Method, memory-granularity: Public generic functions
Method, memory-latency: Public generic functions
Method, memory-name: Public generic functions
Method, memory-parent: Public generic functions
Method, memory-parent-bandwidth: Public generic functions
Method, memory-size: Public generic functions
Method, native-backend: Private generic functions
Method, network-evaluator: Private generic functions
Method, network-outputs: Public generic functions
Method, network-parameters: Public generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, reference-backend: Private generic functions
Method, request-completedp: Public generic functions
Method, request-completedp: Public generic functions
Method, request-completedp: Public generic functions
Method, request-wait: Public generic functions
Method, request-wait: Public generic functions
Method, requestp: Public generic functions
Method, requestp: Public generic functions
Method, requestp: Public generic functions
Method, serious-conditions: Private generic functions
Method, shape-designator-shape: Public generic functions
Method, shape-designator-shape: Public generic functions
Method, shape-designator-shape: Public generic functions
Method, shape-designator-shape: Public generic functions
Method, shared-initialize: Public standalone methods
Method, shared-initialize: Public standalone methods
Method, source-function: Public generic functions
Method, source-function: Public generic functions
Method, source-function: Public generic functions
Method, store-function: Public generic functions
Method, store-function: Public generic functions
Method, substitute-delayed-action: Public generic functions
Method, substitute-delayed-action: Public generic functions
Method, substitute-delayed-action: Public generic functions
Method, substitute-delayed-action: Public generic functions
Method, substitute-delayed-action: Public generic functions
Method, substitute-delayed-action: Public generic functions
Method, target-function: Public generic functions
Method, target-function: Public generic functions
Method, target-function: Public generic functions
Method, transform-axis: Public generic functions
Method, transform-axis: Public generic functions
Method, transform-axis: Public generic functions
Method, transform-index: Public generic functions
Method, transform-index: Public generic functions
Method, transform-index: Public generic functions
Method, transform-index: Public generic functions
Method, transform-index: Public generic functions
Method, transform-instruction-input: Private generic functions
Method, transform-instruction-input: Private generic functions
Method, transform-instruction-output: Private generic functions
Method, transform-instruction-output: Private generic functions
Method, transform-shape: Public generic functions
Method, transform-shape: Public generic functions
Method, transform-shape: Public generic functions
Method, transform-shape: Public generic functions
Method, transformation-similar: Public generic functions
Method, transformation=: Public generic functions
Method, transformation=: Public generic functions
Method, transformation=: Public generic functions
Method, trivial-lazy-array-p: Private generic functions
Method, trivial-lazy-array-p: Private generic functions
Method, trivial-lazy-array-p: Private generic functions
Method, trivial-lazy-array-value: Private generic functions
Method, trivial-lazy-array-value: Private generic functions
Method, unpack-function: Public generic functions
Method, unpack-function: Public generic functions
Method, unpack-function: Public generic functions
mksym: Private ordinary functions
move-axis-to-front: Public ordinary functions
multiple-arguments: Private ordinary functions

N
native-backend: Private generic functions
native-backend: Private generic functions
native-backend-unpack: Private ordinary functions
ndarray: Private ordinary functions
network-evaluator: Private generic functions
network-evaluator: Private generic functions
network-outputs: Public generic functions
network-outputs: Public generic functions
network-parameters: Public generic functions
network-parameters: Public generic functions
network-test: Private ordinary functions
next-bpvar: Private ordinary functions
node-affinity: Private ordinary functions
node-counter: Private ordinary functions
node-dependencies: Private ordinary functions
node-depth: Public ordinary functions
node-eagerness: Private ordinary functions
node-fn: Private ordinary functions
node-height: Public ordinary functions
node-kernel: Private ordinary functions
node-more-important-p: Private ordinary functions
node-object: Private ordinary functions
node-p: Private ordinary functions
node-position: Private ordinary functions
node-predecessor-alist: Public ordinary functions
node-successor-alist: Public ordinary functions
node-users: Private ordinary functions
nodep: Public ordinary functions
non-empty-range-p: Public ordinary functions
normalizing-transformation: Public ordinary functions
nth-prime-max-bits: Private ordinary functions
nth-prime-upper-bound: Private ordinary functions
ntype-bits-per-element: Private ordinary functions
ntype-cpp-info: Private ordinary functions
ntype-cpp-translatable-p: Private ordinary functions
ntype-unboxed-p: Private ordinary functions
number-of-cpus: Public ordinary functions

P
parse-cache-type: Private ordinary functions
parse-defwrapper-lambda-list: Private ordinary functions
parse-integer-set: Private ordinary functions
parse-shape: Private ordinary functions
parse-shape-pattern: Private ordinary functions
parse-size: Private ordinary functions
parse-transform-inputs: Private ordinary functions
parse-transform-output: Private ordinary functions
parse-transform-outputs: Private ordinary functions
partition-dendrites: Private ordinary functions
partition-program: Public ordinary functions
pass: Private ordinary functions
pdfs-queue-increase-node-eagerness: Private ordinary functions
pdfs-queue-p: Private ordinary functions
pdfs-queue-pop: Private ordinary functions
pdfs-queue-priority-queue: Private ordinary functions
pdfs-queue-push: Private ordinary functions
pdfs-queue-size: Private ordinary functions
pdfs-queue-tmpnode: Private ordinary functions
peeling-reshaper: Public ordinary functions
permuting-reshaper: Public ordinary functions
pin-current-thread: Private ordinary functions
potentially-superfluous-buffer-p: Private ordinary functions
prime-factors: Public ordinary functions
primep: Public ordinary functions
primogenitor-buffer-shard: Private ordinary functions
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-package-statistics: Private ordinary functions
print-platform-information: Private ordinary functions
print-system-statistics: Private ordinary functions
program-buffer: Public ordinary functions
program-final-task: Public ordinary functions
program-from-lazy-arrays: Public ordinary functions
program-initial-task: Public ordinary functions
program-kernel: Public ordinary functions
program-leaf-alist: Public ordinary functions
program-number-of-buffers: Public ordinary functions
program-number-of-kernels: Public ordinary functions
program-number-of-tasks: Public ordinary functions
program-root-buffers: Public ordinary functions
program-task-vector: Public ordinary functions
programp: Public ordinary functions
propagate-split: Private ordinary functions
propagate-split/bmap: Private ordinary functions
propagate-split/kmap: Private ordinary functions
prune-bits: Private ordinary functions
prune-buffers: Private ordinary functions
prune-p: Private ordinary functions
prune-superfluous-buffers: Private ordinary functions

R
range: Public compiler macros
range: Public ordinary functions
range-contains: Public ordinary functions
range-difference-list: Public ordinary functions
range-difference-list--contiguous: Private ordinary functions
range-difference-list--single: Private ordinary functions
range-end: Public ordinary functions
range-intersection: Public ordinary functions
range-intersection-start-end-step: Private ordinary functions
range-intersectionp: Public ordinary functions
range-last: Public ordinary functions
range-size: Public ordinary functions
range-start: Public ordinary functions
range-step: Public ordinary functions
range-test: Private ordinary functions
range=: Public ordinary functions
rangep: Public ordinary functions
ranges-blueprint: Private ordinary functions
rbgs-test: Private ordinary functions
recompute-kernel-instruction-vector: Private ordinary functions
recompute-program-task-vector: Private ordinary functions
reduction-of-fusions: Private ordinary functions
reduction-test: Private ordinary functions
reference-backend: Private generic functions
reference-backend: Private generic functions
reference-to-delayed-unknown: Private ordinary functions
refine-buffer-shard: Private ordinary functions
refine-kernel-shard: Private ordinary functions
refine-source: Private ordinary functions
refine-target: Private ordinary functions
register-free-variable: Private ordinary functions
relative-position: Private ordinary functions
remove-axis-after: Private ordinary functions
remove-axis-before: Private ordinary functions
remove-shape-table-entry: Public ordinary functions
report: Private ordinary functions
request-completedp: Public generic functions
request-completedp: Public generic functions
request-completedp: Public generic functions
request-completedp: Public generic functions
request-cvar: Private ordinary functions
request-done: Private ordinary functions
request-lock: Private ordinary functions
request-wait: Public generic functions
request-wait: Public generic functions
request-wait: Public generic functions
requestp: Public generic functions
requestp: Public generic functions
requestp: Public generic functions
requestp: Public generic functions
reshape-randomly: Private ordinary functions
reshape-test: Private ordinary functions
reshape/flatten: Private ordinary functions
reshape/unflatten: Private ordinary functions
result-variables: Private ordinary functions
reuse-optimizing-transformation: Public ordinary functions
reverse-transform-axis-and-position: Private ordinary functions
root-buffer-p: Public ordinary functions
run-petalisp-test-suite: Public ordinary functions
run-tests: Public ordinary functions

S
s16-memref: Private ordinary functions
s32-memref: Private ordinary functions
s64-memref: Private ordinary functions
s8-memref: Private ordinary functions
select-masked-elements: Private ordinary functions
serious-conditions: Private generic functions
serious-conditions: Private generic functions
shape-contains: Public ordinary functions
shape-designator-shape: Public generic functions
shape-designator-shape: Public generic functions
shape-designator-shape: Public generic functions
shape-designator-shape: Public generic functions
shape-designator-shape: Public generic functions
shape-difference-list: Public ordinary functions
shape-dimension: Public ordinary functions
shape-dimensions: Public ordinary functions
shape-intersection: Public ordinary functions
shape-intersectionp: Public ordinary functions
shape-prefix: Public ordinary functions
shape-range: Public ordinary functions
shape-ranges: Public ordinary functions
shape-rank: Public ordinary functions
shape-size: Public ordinary functions
shape-strides: Private ordinary functions
shape-subseq: Public ordinary functions
shape-suffix: Public ordinary functions
shape-table-ht: Private ordinary functions
shape-table-p: Public ordinary functions
shape-table-value: Public ordinary functions
shape<: Public ordinary functions
shape=: Public ordinary functions
shapep: Public ordinary functions
shared-initialize: Public standalone methods
shared-initialize: Public standalone methods
shrink-shape: Public ordinary functions
signals: Public macros
simplify-array: Private ordinary functions
simplify-input: Private ordinary functions
simulate-cenv-evaluation: Private ordinary functions
simulate-storage-reference: Private ordinary functions
simulated-memory-allocation: Private ordinary functions
simulated-memory-generation: Private ordinary functions
simulated-memory-mode: Private ordinary functions
simulated-memory-p: Private ordinary functions
simulated-memory-read-index: Private ordinary functions
simulated-memory-read-shape: Private ordinary functions
simulated-memory-table: Private ordinary functions
simulated-memory-write-index: Private ordinary functions
simulated-memory-write-shape: Private ordinary functions
size-one-range-p: Public ordinary functions
size-one-range-removing-transformation: Private ordinary functions
source-function: Public generic functions
source-function: Public generic functions
source-function: Public generic functions
source-function: Public generic functions
split-axis: Public ordinary functions
split-left-child: Public ordinary functions
split-more-important-p: Private ordinary functions
split-parent: Public ordinary functions
split-position: Public ordinary functions
split-queue-emptyp: Private ordinary functions
split-queue-pop: Private ordinary functions
split-queue-push: Private ordinary functions
split-range: Public ordinary functions
split-right-child: Public ordinary functions
split-shape: Public ordinary functions
splitp: Public ordinary functions
start-worker: Private ordinary functions
stem-buffers: Private ordinary functions
stem-cluster: Private ordinary functions
stem-kernel: Private ordinary functions
stem-p: Private ordinary functions
stem-validp: Private ordinary functions
stencil-buffer: Public ordinary functions
stencil-center: Public ordinary functions
stencil-from-instruction: Public ordinary functions
stencil-input-rank: Public ordinary functions
stencil-instruction-offsets: Private ordinary functions
stencil-instructions: Public ordinary functions
stencil-output-mask: Public ordinary functions
stencil-output-rank: Public ordinary functions
stencil-scalings: Public ordinary functions
stencilp: Public ordinary functions
stencils-blueprint: Private ordinary functions
storage-action: Private ordinary functions
storage-allocation: Public ordinary functions
storage-bind: Private ordinary functions
storage-ghost-layer-alist: Public ordinary functions
storage-ntype: Public ordinary functions
storage-offset: Public ordinary functions
storage-rank: Public ordinary functions
storage-size: Public ordinary functions
storage-size-in-bytes: Private ordinary functions
storage-strides: Public ordinary functions
storagep: Public ordinary functions
store-function: Public generic functions
store-function: Public generic functions
store-function: Public generic functions
store-instruction-buffer: Public ordinary functions
store-instruction-input: Public ordinary functions
store-instruction-inputs: Private ordinary functions
store-instruction-number: Private ordinary functions
store-instruction-offsets: Private ordinary functions
store-instruction-p: Public ordinary functions
store-instruction-scalings: Private ordinary functions
store-instruction-transformation: Public ordinary functions
subdivide-arrays: Public ordinary functions
subdivide-fragments: Private ordinary functions
subdivide-shapes: Public ordinary functions
subrangep: Public ordinary functions
subset-elements: Private ordinary functions
subset-p: Private ordinary functions
subset-weight: Private ordinary functions
subshapep: Public ordinary functions
substitute-delayed-action: Public generic functions
substitute-delayed-action: Public generic functions
substitute-delayed-action: Public generic functions
substitute-delayed-action: Public generic functions
substitute-delayed-action: Public generic functions
substitute-delayed-action: Public generic functions
substitute-delayed-action: Public generic functions
substitute-lazy-array: Public ordinary functions
substitute-lazy-arrays: Public ordinary functions
subtract-fragment-lists: Private ordinary functions
suffix-factor: Private ordinary functions
sum-axis: Private ordinary functions
sum-of-pairs: Private ordinary functions
symbol-defined-p: Private ordinary functions
symbol-methods: Private ordinary functions
system-git-revision: Private ordinary functions
system-source-file-pathnames: Private ordinary functions

T
target-function: Public generic functions
target-function: Public generic functions
target-function: Public generic functions
target-function: Public generic functions
task-defined-buffers: Private ordinary functions
task-kernels: Private ordinary functions
task-number: Public ordinary functions
task-predecessors: Private ordinary functions
task-program: Public ordinary functions
task-successors: Private ordinary functions
taskp: Public ordinary functions
touch: Private ordinary functions
transform: Public macros
transform-axis: Public generic functions
transform-axis: Public generic functions
transform-axis: Public generic functions
transform-axis: Public generic functions
transform-axis-and-position: Private ordinary functions
transform-buffer: Private ordinary functions
transform-index: Public generic functions
transform-index: Public generic functions
transform-index: Public generic functions
transform-index: Public generic functions
transform-index: Public generic functions
transform-index: Public generic functions
transform-instruction-input: Private generic functions
transform-instruction-input: Private generic functions
transform-instruction-input: Private generic functions
transform-instruction-output: Private generic functions
transform-instruction-output: Private generic functions
transform-instruction-output: Private generic functions
transform-kernel: Private ordinary functions
transform-shape: Public generic functions
transform-shape: Public generic functions
transform-shape: Public generic functions
transform-shape: Public generic functions
transform-shape: Public generic functions
transformation-blueprint: Public ordinary functions
transformation-input-mask: Public ordinary functions
transformation-input-rank: Public ordinary functions
transformation-input-symbol: Private ordinary functions
transformation-inverse: Private ordinary functions
transformation-invertiblep: Public ordinary functions
transformation-offsets: Public ordinary functions
transformation-output-mask: Public ordinary functions
transformation-output-rank: Public ordinary functions
transformation-scalings: Public ordinary functions
transformation-similar: Public generic functions
transformation-similar: Public generic functions
transformation=: Public generic functions
transformation=: Public generic functions
transformation=: Public generic functions
transformation=: Public generic functions
transformationp: Public ordinary functions
trivial-lazy-array-p: Private generic functions
trivial-lazy-array-p: Private generic functions
trivial-lazy-array-p: Private generic functions
trivial-lazy-array-p: Private generic functions
trivial-lazy-array-value: Private generic functions
trivial-lazy-array-value: Private generic functions
trivial-lazy-array-value: Private generic functions
trivial-object-p: Private ordinary functions
trivial-object-value: Private ordinary functions
tuple-from-object: Private ordinary functions
tuple-p: Private ordinary functions
tuple-subset: Private ordinary functions
tuple-subsets: Private ordinary functions
tuple-weight: Private ordinary functions
tuple>: Private ordinary functions
type-specifier-p: Private ordinary functions

U
u1-memref: Private ordinary functions
u16-memref: Private ordinary functions
u2-memref: Private ordinary functions
u32-memref: Private ordinary functions
u4-memref: Private ordinary functions
u64-memref: Private ordinary functions
u8-memref: Private ordinary functions
unlink-kernel-shard: Private ordinary functions
unpack-array: Public ordinary functions
unpack-function: Public generic functions
unpack-function: Public generic functions
unpack-function: Public generic functions
unpack-function: Public generic functions

V
v-cycle-test: Private ordinary functions
value-array: Public ordinary functions
value-blueprint: Private ordinary functions
vicinity-left-neighbors: Public ordinary functions
vicinity-left-neighbors-vec: Private ordinary functions
vicinity-right-neighbors: Public ordinary functions
vicinity-right-neighbors-vec: Private ordinary functions
vicinityp: Public ordinary functions

W
wait: Public ordinary functions
with-backend: Public macros
with-collector: Private macros
with-collectors: Public macros
with-debug-optimization: Public macros
with-lazy-arrays: Public macros
with-pinned-objects: Public macros
with-pinned-objects*: Public macros
with-random-state: Private macros
with-temporary-backend: Public macros
with-test-harness: Private macros
with-testing-backend: Private macros
with-unsafe-optimization: Public macros
with-unsafe-optimization*: Public macros
without-compiler-notes: Public macros
worker-barrier-sense: Private ordinary functions
worker-enqueue: Private ordinary functions
worker-evaluate: Private ordinary functions
worker-id: Private ordinary functions
worker-loop: Private ordinary functions
worker-pool-active: Private ordinary functions
worker-pool-barrier-countdown: Private ordinary functions
worker-pool-barrier-sense: Private ordinary functions
worker-pool-join: Private ordinary functions
worker-pool-liveness: Private ordinary functions
worker-pool-p: Private ordinary functions
worker-pool-size: Private ordinary functions
worker-pool-worker: Private ordinary functions
worker-pool-workers: Private ordinary functions
worker-queue: Private ordinary functions
worker-serious-conditions: Private ordinary functions
worker-synchronize-and-invoke: Private ordinary functions
worker-thread: Private ordinary functions
worker-worker-pool: Private ordinary functions
workerp: Private ordinary functions


A.3 Variables

Jump to:   %   *   +   ~  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   Q   R   S   T   U   V   W  
Index Entry  Section

%
%bandwidth: Public classes
%children: Public classes
%compile-cache: Public classes
%compile-cache: Private classes
%cores: Public classes
%cores: Public classes
%debug-flag: Public classes
%evaluator: Public classes
%granularity: Public classes
%ir-backend-compiled: Private classes
%ir-backend-interpreted: Private classes
%latency: Public classes
%memory: Public classes
%memory: Public classes
%mode: Private classes
%name: Public classes
%name: Public classes
%name: Public classes
%native-backend: Private classes
%outputs: Public classes
%parameters: Public classes
%parent: Public classes
%parent-bandwidth: Public classes
%reference-backend: Private classes
%serious-conditions: Private conditions
%size: Public classes
%worker-pool: Private classes

*
*alphabet*: Private special variables
*backend*: Public special variables
*backend-compute-recursion*: Private special variables
*bpinfo-indices*: Private special variables
*bpinfo-instructions*: Private special variables
*bpinfo-ranges*: Private special variables
*bpinfo-reversed-functions*: Private special variables
*bpinfo-reversed-ioffsets*: Private special variables
*bpinfo-reversed-iscalings*: Private special variables
*bpinfo-reversed-levels*: Private special variables
*bpinfo-sources*: Private special variables
*bpinfo-targets*: Private special variables
*bpnames*: Private special variables
*bpvar-counter*: Private special variables
*buffer-ghostspec-vector*: Private special variables
*buffer-shard-queue*: Private special variables
*buffer-shard-split-max-imbalance*: Private special variables
*buffer-shard-split-max-redundancy*: Private special variables
*buffer-shard-split-min-priority*: Private special variables
*buffer-shard-split-priority*: Private special variables
*check-count*: Private special variables
*check-shards-buffer-shards*: Private special variables
*check-shards-kernel-shards*: Private special variables
*check-shards-table*: Private special variables
*check-shards-worklist*: Private special variables
*chunks*: Private special variables
*failed-random-state*: Private special variables
*free-variables*: Private special variables
*function-cpp-info-table*: Private special variables
*index-ntype*: Private special variables
*instruction-table*: Private special variables
*instruction-tables*: Private special variables
*ir-checker-table*: Private special variables
*ir-checker-worklist*: Private special variables
*ir-converter*: Private special variables
*k*: Private special variables
*lazy-array-lock*: Public special variables
*nodes*: Private special variables
*pass-count*: Private special variables
*pin-current-thread-code*: Private special variables
*pin-current-thread-library*: Private special variables
*primogenitor-buffer-shard-vector*: Private special variables
*prune*: Private special variables
*simulator-step*: Private special variables
*small-kernel-p*: Private special variables
*split-queue*: Private special variables
*stencil-max-radius*: Public special variables
*storage-action-table*: Private special variables
*substitutions*: Private special variables
*suffix-factors*: Private special variables
*table*: Private special variables
*test-count*: Private special variables
*tests*: Private special variables
*weight*: Private special variables
*worker*: Private special variables
*worklist*: Private special variables

+
+argument-allocation-category+: Private constants
+constant-allocation-category+: Private constants
+empty-colorset+: Private constants
+result-allocation-category+: Private constants
+table-of-primes+: Private constants
+worker-allocation-category-offset+: Private constants

~
~: Public constants
~*: Public constants

A
affinity: Public structures
alist: Private structures
allocation: Public structures
allocation: Private structures
allocations: Private structures
argument-ntypes: Private structures
argument-shapes: Private structures
arguments: Private structures
array-table: Private structures
axis: Public structures

B
backend: Private structures
barrier-countdown: Private structures
barrier-sense: Private structures
barrier-sense: Private structures
base: Private structures
bits: Private structures
buffer: Public structures
buffer: Public structures
buffer: Private structures
buffer-dendrites-table: Private structures
buffers: Private structures
buffers: Private structures

C
category: Private structures
center: Public structures
center: Private structures
cenv: Private structures
cluster: Private structures
cluster-table: Private structures
color: Private structures
color: Private structures
colorset: Private structures
condition: Public structures
cons: Private structures
cons-updates: Private structures
Constant, +argument-allocation-category+: Private constants
Constant, +constant-allocation-category+: Private constants
Constant, +empty-colorset+: Private constants
Constant, +result-allocation-category+: Private constants
Constant, +table-of-primes+: Private constants
Constant, +worker-allocation-category-offset+: Private constants
Constant, ~: Public constants
Constant, ~*: Public constants
constant-arrays: Private structures
constant-storage-vectors: Private structures
copy-invocations: Private structures
counter: Public structures
cvar: Private structures

D
data: Public structures
defined-buffers: Public structures
degree: Private structures
delayed-action: Public structures
delayed-action: Public structures
dendrites: Private structures
dependencies: Private structures
depth: Public structures
depth: Public structures
depth: Public structures
depth: Private structures
domain: Public structures
done: Private structures

E
eagerness: Public structures
elements: Private structures
end: Private structures

F
final-task: Public structures
fn: Private structures
fnrecord: Public structures
fnrecord: Public structures
function: Private structures
functions: Private structures

G
generation: Private structures
ghost-layer-alist: Public structures

H
h-lock: Public structures
head: Public structures
height: Public structures
ht: Public structures

I
id: Private structures
index: Private structures
index: Private structures
indices: Private structures
initial-task: Public structures
input: Public structures
input: Public structures
input-gradient-caches: Private structures
input-mask: Public structures
input-rank: Public structures
inputs: Public structures
inputs: Public structures
inputs: Public structures
instruction-number: Private structures
instruction-vector: Public structures
instructions: Public structures
instructions: Private structures
inverse: Public structures
ioffsets: Private structures
iscalings: Private structures
iteration-space: Public structures
iteration-space: Public structures
iteration-space: Private structures

K
kernel: Public structures
kernel: Private structures
kernel: Private structures
kernel: Private structures
kernel-size-threshold: Private structures
kernels: Public structures
kfn: Private structures

L
lazy-array: Private structures
lazy-array: Private structures
leaf-alist: Public structures
leaf-alist: Private structures
left-child: Public structures
left-neighbors-vec: Public structures
left-padding-vec: Private structures
level: Private structures
level: Private structures
levels: Private structures
liveness: Private structures
lock: Private structures

M
mode: Private structures

N
name: Private structures
neighbors: Private structures
ntype: Public structures
ntype: Public structures
ntype: Public structures
ntype: Private structures
ntype: Private structures
number: Public structures
number: Public structures
number: Public structures
number: Public structures
number: Public structures
number-of-buffers: Public structures
number-of-kernels: Public structures
number-of-values: Public structures

O
object: Public structures
object: Private structures
object-nodes: Public structures
offset: Public structures
offset: Private structures
offsets: Public structures
offsets: Private structures
output-gradient-cache: Private structures
output-mask: Public structures
output-rank: Public structures

P
parent: Public structures
pattern: Private structures
pointers: Private structures
position: Public structures
position: Public structures
potentially-superfluous-buffers: Private structures
pqueue: Private structures
predecessor-alist: Public structures
predecessors: Public structures
priority-queue: Private structures
program: Public structures

Q
queue: Private structures
queue-node: Private structures

R
ranges: Public structures
ranges: Private structures
rank: Public structures
rank: Private structures
readers: Public structures
readers: Public structures
refbits: Public structures
refbits-lock: Public structures
refcount: Public structures
request: Public structures
request: Private structures
result-arrays: Private structures
result-ntypes: Private structures
result-shapes: Private structures
right-child: Public structures
right-neighbors-vec: Public structures
right-padding-vec: Private structures
root-buffers: Public structures

S
saturation: Private structures
scalar-table: Private structures
scaling: Private structures
scalings: Public structures
scalings: Private structures
schedule: Private structures
serious-condition-lock: Private structures
serious-conditions: Private structures
serious-conditions: Private structures
shape: Public structures
shape: Public structures
shape: Public structures
shape: Private structures
size: Public structures
size: Public structures
size: Public structures
size-in-bytes: Private structures
Slot, %bandwidth: Public classes
Slot, %children: Public classes
Slot, %compile-cache: Public classes
Slot, %compile-cache: Private classes
Slot, %cores: Public classes
Slot, %cores: Public classes
Slot, %debug-flag: Public classes
Slot, %evaluator: Public classes
Slot, %granularity: Public classes
Slot, %ir-backend-compiled: Private classes
Slot, %ir-backend-interpreted: Private classes
Slot, %latency: Public classes
Slot, %memory: Public classes
Slot, %memory: Public classes
Slot, %mode: Private classes
Slot, %name: Public classes
Slot, %name: Public classes
Slot, %name: Public classes
Slot, %native-backend: Private classes
Slot, %outputs: Public classes
Slot, %parameters: Public classes
Slot, %parent: Public classes
Slot, %parent-bandwidth: Public classes
Slot, %reference-backend: Private classes
Slot, %serious-conditions: Private conditions
Slot, %size: Public classes
Slot, %worker-pool: Private classes
Slot, affinity: Public structures
Slot, alist: Private structures
Slot, allocation: Public structures
Slot, allocation: Private structures
Slot, allocations: Private structures
Slot, argument-ntypes: Private structures
Slot, argument-shapes: Private structures
Slot, arguments: Private structures
Slot, array-table: Private structures
Slot, axis: Public structures
Slot, backend: Private structures
Slot, barrier-countdown: Private structures
Slot, barrier-sense: Private structures
Slot, barrier-sense: Private structures
Slot, base: Private structures
Slot, bits: Private structures
Slot, buffer: Public structures
Slot, buffer: Public structures
Slot, buffer: Private structures
Slot, buffer-dendrites-table: Private structures
Slot, buffers: Private structures
Slot, buffers: Private structures
Slot, category: Private structures
Slot, center: Public structures
Slot, center: Private structures
Slot, cenv: Private structures
Slot, cluster: Private structures
Slot, cluster-table: Private structures
Slot, color: Private structures
Slot, color: Private structures
Slot, colorset: Private structures
Slot, condition: Public structures
Slot, cons: Private structures
Slot, cons-updates: Private structures
Slot, constant-arrays: Private structures
Slot, constant-storage-vectors: Private structures
Slot, copy-invocations: Private structures
Slot, counter: Public structures
Slot, cvar: Private structures
Slot, data: Public structures
Slot, defined-buffers: Public structures
Slot, degree: Private structures
Slot, delayed-action: Public structures
Slot, delayed-action: Public structures
Slot, dendrites: Private structures
Slot, dependencies: Private structures
Slot, depth: Public structures
Slot, depth: Public structures
Slot, depth: Public structures
Slot, depth: Private structures
Slot, domain: Public structures
Slot, done: Private structures
Slot, eagerness: Public structures
Slot, elements: Private structures
Slot, end: Private structures
Slot, final-task: Public structures
Slot, fn: Private structures
Slot, fnrecord: Public structures
Slot, fnrecord: Public structures
Slot, function: Private structures
Slot, functions: Private structures
Slot, generation: Private structures
Slot, ghost-layer-alist: Public structures
Slot, h-lock: Public structures
Slot, head: Public structures
Slot, height: Public structures
Slot, ht: Public structures
Slot, id: Private structures
Slot, index: Private structures
Slot, index: Private structures
Slot, indices: Private structures
Slot, initial-task: Public structures
Slot, input: Public structures
Slot, input: Public structures
Slot, input-gradient-caches: Private structures
Slot, input-mask: Public structures
Slot, input-rank: Public structures
Slot, inputs: Public structures
Slot, inputs: Public structures
Slot, inputs: Public structures
Slot, instruction-number: Private structures
Slot, instruction-vector: Public structures
Slot, instructions: Public structures
Slot, instructions: Private structures
Slot, inverse: Public structures
Slot, ioffsets: Private structures
Slot, iscalings: Private structures
Slot, iteration-space: Public structures
Slot, iteration-space: Public structures
Slot, iteration-space: Private structures
Slot, kernel: Public structures
Slot, kernel: Private structures
Slot, kernel: Private structures
Slot, kernel: Private structures
Slot, kernel-size-threshold: Private structures
Slot, kernels: Public structures
Slot, kfn: Private structures
Slot, lazy-array: Private structures
Slot, lazy-array: Private structures
Slot, leaf-alist: Public structures
Slot, leaf-alist: Private structures
Slot, left-child: Public structures
Slot, left-neighbors-vec: Public structures
Slot, left-padding-vec: Private structures
Slot, level: Private structures
Slot, level: Private structures
Slot, levels: Private structures
Slot, liveness: Private structures
Slot, lock: Private structures
Slot, mode: Private structures
Slot, name: Private structures
Slot, neighbors: Private structures
Slot, ntype: Public structures
Slot, ntype: Public structures
Slot, ntype: Public structures
Slot, ntype: Private structures
Slot, ntype: Private structures
Slot, number: Public structures
Slot, number: Public structures
Slot, number: Public structures
Slot, number: Public structures
Slot, number: Public structures
Slot, number-of-buffers: Public structures
Slot, number-of-kernels: Public structures
Slot, number-of-values: Public structures
Slot, object: Public structures
Slot, object: Private structures
Slot, object-nodes: Public structures
Slot, offset: Public structures
Slot, offset: Private structures
Slot, offsets: Public structures
Slot, offsets: Private structures
Slot, output-gradient-cache: Private structures
Slot, output-mask: Public structures
Slot, output-rank: Public structures
Slot, parent: Public structures
Slot, pattern: Private structures
Slot, pointers: Private structures
Slot, position: Public structures
Slot, position: Public structures
Slot, potentially-superfluous-buffers: Private structures
Slot, pqueue: Private structures
Slot, predecessor-alist: Public structures
Slot, predecessors: Public structures
Slot, priority-queue: Private structures
Slot, program: Public structures
Slot, queue: Private structures
Slot, queue-node: Private structures
Slot, ranges: Public structures
Slot, ranges: Private structures
Slot, rank: Public structures
Slot, rank: Private structures
Slot, readers: Public structures
Slot, readers: Public structures
Slot, refbits: Public structures
Slot, refbits-lock: Public structures
Slot, refcount: Public structures
Slot, request: Public structures
Slot, request: Private structures
Slot, result-arrays: Private structures
Slot, result-ntypes: Private structures
Slot, result-shapes: Private structures
Slot, right-child: Public structures
Slot, right-neighbors-vec: Public structures
Slot, right-padding-vec: Private structures
Slot, root-buffers: Public structures
Slot, saturation: Private structures
Slot, scalar-table: Private structures
Slot, scaling: Private structures
Slot, scalings: Public structures
Slot, scalings: Private structures
Slot, schedule: Private structures
Slot, serious-condition-lock: Private structures
Slot, serious-conditions: Private structures
Slot, serious-conditions: Private structures
Slot, shape: Public structures
Slot, shape: Public structures
Slot, shape: Public structures
Slot, shape: Private structures
Slot, size: Public structures
Slot, size: Public structures
Slot, size: Public structures
Slot, size-in-bytes: Private structures
Slot, source: Private structures
Slot, sources: Public structures
Slot, sources: Public structures
Slot, sources: Private structures
Slot, sources: Private structures
Slot, split: Public structures
Slot, split-priority-cache: Public structures
Slot, start: Public structures
Slot, start: Private structures
Slot, start: Private structures
Slot, stem: Private structures
Slot, stencils: Private structures
Slot, step: Public structures
Slot, step: Private structures
Slot, storage: Public structures
Slot, storage: Public structures
Slot, storage: Public structures
Slot, strides: Public structures
Slot, strides: Private structures
Slot, subsets: Private structures
Slot, successor-alist: Public structures
Slot, successors: Public structures
Slot, t-lock: Public structures
Slot, table: Private structures
Slot, table: Private structures
Slot, table: Private structures
Slot, tail: Public structures
Slot, target: Private structures
Slot, targets: Public structures
Slot, targets: Public structures
Slot, targets: Private structures
Slot, targets: Private structures
Slot, task: Public structures
Slot, task: Public structures
Slot, task-vector: Public structures
Slot, thread: Private structures
Slot, tmpnode: Private structures
Slot, transformation: Public structures
Slot, transformation: Public structures
Slot, transformation: Private structures
Slot, unboxed: Private structures
Slot, unknown-table: Private structures
Slot, users: Private structures
Slot, validp: Private structures
Slot, value: Private structures
Slot, value: Private structures
Slot, values: Private structures
Slot, values-ntype: Public structures
Slot, weight: Private structures
Slot, weight: Private structures
Slot, work-invocations: Private structures
Slot, worker-pool: Private structures
Slot, workers: Private structures
Slot, writers: Public structures
Slot, writers: Public structures
source: Private structures
sources: Public structures
sources: Public structures
sources: Private structures
sources: Private structures
Special Variable, *alphabet*: Private special variables
Special Variable, *backend*: Public special variables
Special Variable, *backend-compute-recursion*: Private special variables
Special Variable, *bpinfo-indices*: Private special variables
Special Variable, *bpinfo-instructions*: Private special variables
Special Variable, *bpinfo-ranges*: Private special variables
Special Variable, *bpinfo-reversed-functions*: Private special variables
Special Variable, *bpinfo-reversed-ioffsets*: Private special variables
Special Variable, *bpinfo-reversed-iscalings*: Private special variables
Special Variable, *bpinfo-reversed-levels*: Private special variables
Special Variable, *bpinfo-sources*: Private special variables
Special Variable, *bpinfo-targets*: Private special variables
Special Variable, *bpnames*: Private special variables
Special Variable, *bpvar-counter*: Private special variables
Special Variable, *buffer-ghostspec-vector*: Private special variables
Special Variable, *buffer-shard-queue*: Private special variables
Special Variable, *buffer-shard-split-max-imbalance*: Private special variables
Special Variable, *buffer-shard-split-max-redundancy*: Private special variables
Special Variable, *buffer-shard-split-min-priority*: Private special variables
Special Variable, *buffer-shard-split-priority*: Private special variables
Special Variable, *check-count*: Private special variables
Special Variable, *check-shards-buffer-shards*: Private special variables
Special Variable, *check-shards-kernel-shards*: Private special variables
Special Variable, *check-shards-table*: Private special variables
Special Variable, *check-shards-worklist*: Private special variables
Special Variable, *chunks*: Private special variables
Special Variable, *failed-random-state*: Private special variables
Special Variable, *free-variables*: Private special variables
Special Variable, *function-cpp-info-table*: Private special variables
Special Variable, *index-ntype*: Private special variables
Special Variable, *instruction-table*: Private special variables
Special Variable, *instruction-tables*: Private special variables
Special Variable, *ir-checker-table*: Private special variables
Special Variable, *ir-checker-worklist*: Private special variables
Special Variable, *ir-converter*: Private special variables
Special Variable, *k*: Private special variables
Special Variable, *lazy-array-lock*: Public special variables
Special Variable, *nodes*: Private special variables
Special Variable, *pass-count*: Private special variables
Special Variable, *pin-current-thread-code*: Private special variables
Special Variable, *pin-current-thread-library*: Private special variables
Special Variable, *primogenitor-buffer-shard-vector*: Private special variables
Special Variable, *prune*: Private special variables
Special Variable, *simulator-step*: Private special variables
Special Variable, *small-kernel-p*: Private special variables
Special Variable, *split-queue*: Private special variables
Special Variable, *stencil-max-radius*: Public special variables
Special Variable, *storage-action-table*: Private special variables
Special Variable, *substitutions*: Private special variables
Special Variable, *suffix-factors*: Private special variables
Special Variable, *table*: Private special variables
Special Variable, *test-count*: Private special variables
Special Variable, *tests*: Private special variables
Special Variable, *weight*: Private special variables
Special Variable, *worker*: Private special variables
Special Variable, *worklist*: Private special variables
split: Public structures
split-priority-cache: Public structures
start: Public structures
start: Private structures
start: Private structures
stem: Private structures
stencils: Private structures
step: Public structures
step: Private structures
storage: Public structures
storage: Public structures
storage: Public structures
strides: Public structures
strides: Private structures
subsets: Private structures
successor-alist: Public structures
successors: Public structures

T
t-lock: Public structures
table: Private structures
table: Private structures
table: Private structures
tail: Public structures
target: Private structures
targets: Public structures
targets: Public structures
targets: Private structures
targets: Private structures
task: Public structures
task: Public structures
task-vector: Public structures
thread: Private structures
tmpnode: Private structures
transformation: Public structures
transformation: Public structures
transformation: Private structures

U
unboxed: Private structures
unknown-table: Private structures
users: Private structures

V
validp: Private structures
value: Private structures
value: Private structures
values: Private structures
values-ntype: Public structures

W
weight: Private structures
weight: Private structures
work-invocations: Private structures
worker-pool: Private structures
workers: Private structures
writers: Public structures
writers: Public structures


A.4 Data types

Jump to:   A   B   C   D   E   F   G   H   I   K   L   M   N   P   R   S   T   V   W  
Index Entry  Section

A
action: Private structures
ad-record: Private structures
allocation: Private structures
allocation.lisp: The petalisp․native-backend/allocation․lisp file
axis: Public types

B
backend: Public classes
backend: Private classes
backend-stats: Private classes
backend.lisp: The petalisp․core/backend․lisp file
backend.lisp: The petalisp․native-backend/backend․lisp file
blueprint.lisp: The petalisp․codegen/blueprint․lisp file
bpcall: Private structures
bpconstant: Private structures
bpfunction: Private structures
bpinfo: Private structures
bpinfo.lisp: The petalisp․codegen/bpinfo․lisp file
bpinstinfo: Private structures
bpinstruction: Private structures
bpioffset: Private structures
bpiref: Private structures
bpiscaling: Private structures
bpload: Private structures
bpmemref: Private structures
bprange: Private structures
bpstencil: Private structures
bpstore: Private structures
bpvalue: Private structures
bpvariable: Private structures
buffer: Public structures
buffer-shard: Public structures

C
call-instruction: Public structures
cenv: Private structures
cgraph: Private structures
Class, backend: Public classes
Class, backend: Private classes
Class, backend-stats: Private classes
Class, compile-cache-mixin: Public classes
Class, completed-request: Private classes
Class, core: Public classes
Class, cpp-compiler-mixin: Public classes
Class, cuda-compiler-mixin: Public classes
Class, deleted-backend: Private classes
Class, device: Public classes
Class, ir-backend: Private classes
Class, lisp-compiler-mixin: Public classes
Class, lisp-interpreter-mixin: Public classes
Class, lisp-plus-cpp-compiler-mixin: Public classes
Class, memory: Public classes
Class, network: Public classes
Class, reference-backend: Private classes
Class, request: Public classes
Class, testing-backend: Private classes
clp2-fixnum: Private types
cluster: Private structures
cnode: Private structures
code-statistics.lisp: The petalisp․test-suite/code-statistics․lisp file
color: Private types
coloring.lisp: The petalisp․ir/coloring․lisp file
colorset: Private types
compilation.lisp: The petalisp․native-backend/compilation․lisp file
compile-cache: Private structures
compile-cache-mixin: Public classes
compile-cache.lisp: The petalisp․codegen/compile-cache․lisp file
completed-request: Private classes
Condition, evaluation-failure: Private conditions
core: Public classes
cpp-compiler-mixin: Public classes
cpp-compiler.lisp: The petalisp․codegen/cpp-compiler․lisp file
cpp-from-lisp.lisp: The petalisp․codegen/cpp-from-lisp․lisp file
cqueue: Public structures
cqueue.lisp: The petalisp․utilities/cqueue․lisp file
cuda-compiler-mixin: Public classes

D
defgenerator.lisp: The petalisp․test-suite/defgenerator․lisp file
delayed-action: Public structures
delayed-array: Public structures
delayed-failure: Public structures
delayed-fuse: Public structures
delayed-map: Public structures
delayed-multiple-value-map: Public structures
delayed-nop: Public structures
delayed-nth-value: Public structures
delayed-range: Public structures
delayed-reshape: Public structures
delayed-unknown: Public structures
delayed-wait: Public structures
deleted-backend: Private classes
dendrite: Private structures
denv: Private structures
device: Public classes
device.lisp: The petalisp․ir/device․lisp file
differentiator.lisp: The petalisp․api/differentiator․lisp file
documentation.lisp: The petalisp․api/documentation․lisp file
documentation.lisp: The petalisp․utilities/documentation․lisp file
documentation.lisp: The petalisp․ir/documentation․lisp file

E
empty-range: Public structures
evaluation-failure: Private conditions
evaluator.lisp: The petalisp․native-backend/evaluator․lisp file
extended-euclid.lisp: The petalisp․utilities/extended-euclid․lisp file

F
File, allocation.lisp: The petalisp․native-backend/allocation․lisp file
File, backend.lisp: The petalisp․core/backend․lisp file
File, backend.lisp: The petalisp․native-backend/backend․lisp file
File, blueprint.lisp: The petalisp․codegen/blueprint․lisp file
File, bpinfo.lisp: The petalisp․codegen/bpinfo․lisp file
File, code-statistics.lisp: The petalisp․test-suite/code-statistics․lisp file
File, coloring.lisp: The petalisp․ir/coloring․lisp file
File, compilation.lisp: The petalisp․native-backend/compilation․lisp file
File, compile-cache.lisp: The petalisp․codegen/compile-cache․lisp file
File, cpp-compiler.lisp: The petalisp․codegen/cpp-compiler․lisp file
File, cpp-from-lisp.lisp: The petalisp․codegen/cpp-from-lisp․lisp file
File, cqueue.lisp: The petalisp․utilities/cqueue․lisp file
File, defgenerator.lisp: The petalisp․test-suite/defgenerator․lisp file
File, device.lisp: The petalisp․ir/device․lisp file
File, differentiator.lisp: The petalisp․api/differentiator․lisp file
File, documentation.lisp: The petalisp․api/documentation․lisp file
File, documentation.lisp: The petalisp․utilities/documentation․lisp file
File, documentation.lisp: The petalisp․ir/documentation․lisp file
File, evaluator.lisp: The petalisp․native-backend/evaluator․lisp file
File, extended-euclid.lisp: The petalisp․utilities/extended-euclid․lisp file
File, generators.lisp: The petalisp․test-suite/generators․lisp file
File, generic-functions.lisp: The petalisp․codegen/generic-functions․lisp file
File, graph-coloring.lisp: The petalisp․utilities/graph-coloring․lisp file
File, indexing.lisp: The petalisp․codegen/indexing․lisp file
File, ir-backend.lisp: The petalisp․codegen/ir-backend․lisp file
File, ir-checker.lisp: The petalisp․ir/ir-checker․lisp file
File, ir-conversion.lisp: The petalisp․ir/ir-conversion․lisp file
File, ir.lisp: The petalisp․ir/ir․lisp file
File, karmarkar-karp.lisp: The petalisp․utilities/karmarkar-karp․lisp file
File, lazy-array.lisp: The petalisp․core/lazy-array․lisp file
File, lazy-broadcast.lisp: The petalisp․api/lazy-broadcast․lisp file
File, lazy-change-shape.lisp: The petalisp․api/lazy-change-shape․lisp file
File, lazy-drop-axes.lisp: The petalisp․api/lazy-drop-axes․lisp file
File, lazy-fuse.lisp: The petalisp․core/lazy-fuse․lisp file
File, lazy-harmonize.lisp: The petalisp․api/lazy-harmonize․lisp file
File, lazy-index-components.lisp: The petalisp․api/lazy-index-components․lisp file
File, lazy-map.lisp: The petalisp․core/lazy-map․lisp file
File, lazy-multiple-value.lisp: The petalisp․api/lazy-multiple-value․lisp file
File, lazy-multireduce.lisp: The petalisp․api/lazy-multireduce․lisp file
File, lazy-overwrite.lisp: The petalisp․api/lazy-overwrite․lisp file
File, lazy-reduce.lisp: The petalisp․api/lazy-reduce․lisp file
File, lazy-ref.lisp: The petalisp․core/lazy-ref․lisp file
File, lazy-reshape.lisp: The petalisp․api/lazy-reshape․lisp file
File, lazy-slice.lisp: The petalisp․api/lazy-slice․lisp file
File, lazy-slices.lisp: The petalisp․api/lazy-slices․lisp file
File, lazy-sort.lisp: The petalisp․api/lazy-sort․lisp file
File, lazy-stack.lisp: The petalisp․api/lazy-stack․lisp file
File, lazy.lisp: The petalisp․api/lazy․lisp file
File, lisp-compiler.lisp: The petalisp․codegen/lisp-compiler․lisp file
File, lisp-interpreter.lisp: The petalisp․codegen/lisp-interpreter․lisp file
File, load-foreign-code.lisp: The petalisp․codegen/load-foreign-code․lisp file
File, mixins.lisp: The petalisp․codegen/mixins․lisp file
File, network.lisp: The petalisp․api/network․lisp file
File, number-of-cpus.lisp: The petalisp․utilities/number-of-cpus․lisp file
File, packages.lisp: The petalisp․api/packages․lisp file
File, packages.lisp: The petalisp․utilities/packages․lisp file
File, packages.lisp: The petalisp․core/packages․lisp file
File, packages.lisp: The petalisp․ir/packages․lisp file
File, packages.lisp: The petalisp․codegen/packages․lisp file
File, packages.lisp: The petalisp․native-backend/packages․lisp file
File, packages.lisp: The petalisp․test-suite/packages․lisp file
File, partitioning.lisp: The petalisp․ir/partitioning․lisp file
File, petalisp.api.asd: The petalisp․api/petalisp․api․asd file
File, petalisp.api.lisp: The petalisp․test-suite/petalisp․api․lisp file
File, petalisp.asd: The petalisp/petalisp․asd file
File, petalisp.codegen.asd: The petalisp․codegen/petalisp․codegen․asd file
File, petalisp.core.asd: The petalisp․core/petalisp․core․asd file
File, petalisp.core.lisp: The petalisp․test-suite/petalisp․core․lisp file
File, petalisp.examples.lisp: The petalisp․test-suite/petalisp․examples․lisp file
File, petalisp.ir.asd: The petalisp․ir/petalisp․ir․asd file
File, petalisp.native-backend.asd: The petalisp․native-backend/petalisp․native-backend․asd file
File, petalisp.test-suite.asd: The petalisp․test-suite/petalisp․test-suite․asd file
File, petalisp.utilities.asd: The petalisp․utilities/petalisp․utilities․asd file
File, pin-current-thread.lisp: The petalisp․native-backend/pin-current-thread․lisp file
File, powers-of-two.lisp: The petalisp․utilities/powers-of-two․lisp file
File, prime-factors.lisp: The petalisp․utilities/prime-factors․lisp file
File, range.lisp: The petalisp․core/range․lisp file
File, reference-backend.lisp: The petalisp․core/reference-backend․lisp file
File, request.lisp: The petalisp․native-backend/request․lisp file
File, reshapers.lisp: The petalisp․api/reshapers․lisp file
File, run-petalisp-test-suite.lisp: The petalisp․test-suite/run-petalisp-test-suite․lisp file
File, scheduling.lisp: The petalisp․utilities/scheduling․lisp file
File, scheduling.lisp: The petalisp․native-backend/scheduling․lisp file
File, shape-syntax.lisp: The petalisp․api/shape-syntax․lisp file
File, shape.lisp: The petalisp․core/shape․lisp file
File, substitute-lazy-arrays.lisp: The petalisp․core/substitute-lazy-arrays․lisp file
File, test-suite.lisp: The petalisp․test-suite/test-suite․lisp file
File, testing-backend.lisp: The petalisp․test-suite/testing-backend․lisp file
File, transform.lisp: The petalisp․api/transform․lisp file
File, transformation-constructors.lisp: The petalisp․core/transformation-constructors․lisp file
File, transformation.lisp: The petalisp․core/transformation․lisp file
File, with-backend.lisp: The petalisp․api/with-backend․lisp file
File, with-collectors.lisp: The petalisp․utilities/with-collectors․lisp file
File, with-lazy-arrays.lisp: The petalisp․api/with-lazy-arrays․lisp file
File, with-pinned-objects.lisp: The petalisp․utilities/with-pinned-objects․lisp file
File, worker-pool.lisp: The petalisp․native-backend/worker-pool․lisp file

G
generators.lisp: The petalisp․test-suite/generators․lisp file
generic-functions.lisp: The petalisp․codegen/generic-functions․lisp file
ghostspec: Private structures
graph: Public structures
graph-coloring.lisp: The petalisp․utilities/graph-coloring․lisp file

H
hairy-transformation: Private structures

I
identity-transformation: Public structures
index: Public types
indexing.lisp: The petalisp․codegen/indexing․lisp file
instruction: Public structures
invocation: Private structures
ir-backend: Private classes
ir-backend.lisp: The petalisp․codegen/ir-backend․lisp file
ir-checker.lisp: The petalisp․ir/ir-checker․lisp file
ir-conversion.lisp: The petalisp․ir/ir-conversion․lisp file
ir-converter: Private structures
ir.lisp: The petalisp․ir/ir․lisp file
iref-instruction: Public structures
iterating-instruction: Public structures

K
karmarkar-karp.lisp: The petalisp․utilities/karmarkar-karp․lisp file
kernel: Public structures
kernel-shard: Public structures

L
lazy-array: Public structures
lazy-array.lisp: The petalisp․core/lazy-array․lisp file
lazy-broadcast.lisp: The petalisp․api/lazy-broadcast․lisp file
lazy-change-shape.lisp: The petalisp․api/lazy-change-shape․lisp file
lazy-drop-axes.lisp: The petalisp․api/lazy-drop-axes․lisp file
lazy-fuse.lisp: The petalisp․core/lazy-fuse․lisp file
lazy-harmonize.lisp: The petalisp․api/lazy-harmonize․lisp file
lazy-index-components.lisp: The petalisp․api/lazy-index-components․lisp file
lazy-map.lisp: The petalisp․core/lazy-map․lisp file
lazy-multiple-value.lisp: The petalisp․api/lazy-multiple-value․lisp file
lazy-multireduce.lisp: The petalisp․api/lazy-multireduce․lisp file
lazy-overwrite.lisp: The petalisp․api/lazy-overwrite․lisp file
lazy-reduce.lisp: The petalisp․api/lazy-reduce․lisp file
lazy-ref.lisp: The petalisp․core/lazy-ref․lisp file
lazy-reshape.lisp: The petalisp․api/lazy-reshape․lisp file
lazy-slice.lisp: The petalisp․api/lazy-slice․lisp file
lazy-slices.lisp: The petalisp․api/lazy-slices․lisp file
lazy-sort.lisp: The petalisp․api/lazy-sort․lisp file
lazy-stack.lisp: The petalisp․api/lazy-stack․lisp file
lazy.lisp: The petalisp․api/lazy․lisp file
lisp-compiler-mixin: Public classes
lisp-compiler.lisp: The petalisp․codegen/lisp-compiler․lisp file
lisp-interpreter-mixin: Public classes
lisp-interpreter.lisp: The petalisp․codegen/lisp-interpreter․lisp file
lisp-plus-cpp-compiler-mixin: Public classes
load-foreign-code.lisp: The petalisp․codegen/load-foreign-code․lisp file
load-instruction: Public structures
load-or-store-instruction: Public structures

M
memory: Public classes
mixins.lisp: The petalisp․codegen/mixins․lisp file

N
network: Public classes
network.lisp: The petalisp․api/network․lisp file
node: Public structures
node: Private structures
non-empty-range: Public structures
number-of-cpus.lisp: The petalisp․utilities/number-of-cpus․lisp file

P
Package, petalisp-user: The petalisp-user package
Package, petalisp.api: The petalisp․api package
Package, petalisp.codegen: The petalisp․codegen package
Package, petalisp.core: The petalisp․core package
Package, petalisp.cqueue: The petalisp․cqueue package
Package, petalisp.ir: The petalisp․ir package
Package, petalisp.karmarkar-karp: The petalisp․karmarkar-karp package
Package, petalisp.native-backend: The petalisp․native-backend package
Package, petalisp.scheduling: The petalisp․scheduling package
Package, petalisp.test-suite: The petalisp․test-suite package
Package, petalisp.utilities: The petalisp․utilities package
packages.lisp: The petalisp․api/packages․lisp file
packages.lisp: The petalisp․utilities/packages․lisp file
packages.lisp: The petalisp․core/packages․lisp file
packages.lisp: The petalisp․ir/packages․lisp file
packages.lisp: The petalisp․codegen/packages․lisp file
packages.lisp: The petalisp․native-backend/packages․lisp file
packages.lisp: The petalisp․test-suite/packages․lisp file
partitioning.lisp: The petalisp․ir/partitioning․lisp file
pdfs-queue: Private structures
petalisp: The petalisp system
petalisp-user: The petalisp-user package
petalisp.api: The petalisp․api system
petalisp.api: The petalisp․api package
petalisp.api.asd: The petalisp․api/petalisp․api․asd file
petalisp.api.lisp: The petalisp․test-suite/petalisp․api․lisp file
petalisp.asd: The petalisp/petalisp․asd file
petalisp.codegen: The petalisp․codegen system
petalisp.codegen: The petalisp․codegen package
petalisp.codegen.asd: The petalisp․codegen/petalisp․codegen․asd file
petalisp.core: The petalisp․core system
petalisp.core: The petalisp․core package
petalisp.core.asd: The petalisp․core/petalisp․core․asd file
petalisp.core.lisp: The petalisp․test-suite/petalisp․core․lisp file
petalisp.cqueue: The petalisp․cqueue package
petalisp.examples.lisp: The petalisp․test-suite/petalisp․examples․lisp file
petalisp.ir: The petalisp․ir system
petalisp.ir: The petalisp․ir package
petalisp.ir.asd: The petalisp․ir/petalisp․ir․asd file
petalisp.karmarkar-karp: The petalisp․karmarkar-karp package
petalisp.native-backend: The petalisp․native-backend system
petalisp.native-backend: The petalisp․native-backend package
petalisp.native-backend.asd: The petalisp․native-backend/petalisp․native-backend․asd file
petalisp.scheduling: The petalisp․scheduling package
petalisp.test-suite: The petalisp․test-suite system
petalisp.test-suite: The petalisp․test-suite package
petalisp.test-suite.asd: The petalisp․test-suite/petalisp․test-suite․asd file
petalisp.utilities: The petalisp․utilities system
petalisp.utilities: The petalisp․utilities package
petalisp.utilities.asd: The petalisp․utilities/petalisp․utilities․asd file
pin-current-thread.lisp: The petalisp․native-backend/pin-current-thread․lisp file
powers-of-two.lisp: The petalisp․utilities/powers-of-two․lisp file
prime-factors.lisp: The petalisp․utilities/prime-factors․lisp file
program: Public structures
prune: Private structures

R
range: Public structures
range.lisp: The petalisp․core/range․lisp file
rank: Public types
reference-backend: Private classes
reference-backend.lisp: The petalisp․core/reference-backend․lisp file
request: Public classes
request: Private structures
request.lisp: The petalisp․native-backend/request․lisp file
reshapers.lisp: The petalisp․api/reshapers․lisp file
run-petalisp-test-suite.lisp: The petalisp․test-suite/run-petalisp-test-suite․lisp file

S
scheduling.lisp: The petalisp․utilities/scheduling․lisp file
scheduling.lisp: The petalisp․native-backend/scheduling․lisp file
shape: Public structures
shape-syntax-delimiter: Private types
shape-syntax.lisp: The petalisp․api/shape-syntax․lisp file
shape-table: Public structures
shape.lisp: The petalisp․core/shape․lisp file
simulated-memory: Private structures
small-fixnum: Private types
small-non-negative-fixnum: Private types
split: Public structures
stem: Private structures
stencil: Public structures
storage: Public structures
store-instruction: Public structures
Structure, action: Private structures
Structure, ad-record: Private structures
Structure, allocation: Private structures
Structure, bpcall: Private structures
Structure, bpconstant: Private structures
Structure, bpfunction: Private structures
Structure, bpinfo: Private structures
Structure, bpinstinfo: Private structures
Structure, bpinstruction: Private structures
Structure, bpioffset: Private structures
Structure, bpiref: Private structures
Structure, bpiscaling: Private structures
Structure, bpload: Private structures
Structure, bpmemref: Private structures
Structure, bprange: Private structures
Structure, bpstencil: Private structures
Structure, bpstore: Private structures
Structure, bpvalue: Private structures
Structure, bpvariable: Private structures
Structure, buffer: Public structures
Structure, buffer-shard: Public structures
Structure, call-instruction: Public structures
Structure, cenv: Private structures
Structure, cgraph: Private structures
Structure, cluster: Private structures
Structure, cnode: Private structures
Structure, compile-cache: Private structures
Structure, cqueue: Public structures
Structure, delayed-action: Public structures
Structure, delayed-array: Public structures
Structure, delayed-failure: Public structures
Structure, delayed-fuse: Public structures
Structure, delayed-map: Public structures
Structure, delayed-multiple-value-map: Public structures
Structure, delayed-nop: Public structures
Structure, delayed-nth-value: Public structures
Structure, delayed-range: Public structures
Structure, delayed-reshape: Public structures
Structure, delayed-unknown: Public structures
Structure, delayed-wait: Public structures
Structure, dendrite: Private structures
Structure, denv: Private structures
Structure, empty-range: Public structures
Structure, ghostspec: Private structures
Structure, graph: Public structures
Structure, hairy-transformation: Private structures
Structure, identity-transformation: Public structures
Structure, instruction: Public structures
Structure, invocation: Private structures
Structure, ir-converter: Private structures
Structure, iref-instruction: Public structures
Structure, iterating-instruction: Public structures
Structure, kernel: Public structures
Structure, kernel-shard: Public structures
Structure, lazy-array: Public structures
Structure, load-instruction: Public structures
Structure, load-or-store-instruction: Public structures
Structure, node: Public structures
Structure, node: Private structures
Structure, non-empty-range: Public structures
Structure, pdfs-queue: Private structures
Structure, program: Public structures
Structure, prune: Private structures
Structure, range: Public structures
Structure, request: Private structures
Structure, shape: Public structures
Structure, shape-table: Public structures
Structure, simulated-memory: Private structures
Structure, split: Public structures
Structure, stem: Private structures
Structure, stencil: Public structures
Structure, storage: Public structures
Structure, store-instruction: Public structures
Structure, subset: Private structures
Structure, task: Public structures
Structure, transformation: Public structures
Structure, tuple: Private structures
Structure, vicinity: Public structures
Structure, worker: Private structures
Structure, worker-pool: Private structures
subset: Private structures
substitute-lazy-arrays.lisp: The petalisp․core/substitute-lazy-arrays․lisp file
System, petalisp: The petalisp system
System, petalisp.api: The petalisp․api system
System, petalisp.codegen: The petalisp․codegen system
System, petalisp.core: The petalisp․core system
System, petalisp.ir: The petalisp․ir system
System, petalisp.native-backend: The petalisp․native-backend system
System, petalisp.test-suite: The petalisp․test-suite system
System, petalisp.utilities: The petalisp․utilities system

T
task: Public structures
test-suite.lisp: The petalisp․test-suite/test-suite․lisp file
testing-backend: Private classes
testing-backend.lisp: The petalisp․test-suite/testing-backend․lisp file
transform.lisp: The petalisp․api/transform․lisp file
transformation: Public structures
transformation-constructors.lisp: The petalisp․core/transformation-constructors․lisp file
transformation.lisp: The petalisp․core/transformation․lisp file
tuple: Private structures
Type, axis: Public types
Type, clp2-fixnum: Private types
Type, color: Private types
Type, colorset: Private types
Type, index: Public types
Type, rank: Public types
Type, shape-syntax-delimiter: Private types
Type, small-fixnum: Private types
Type, small-non-negative-fixnum: Private types
Type, worker-id: Private types

V
vicinity: Public structures

W
with-backend.lisp: The petalisp․api/with-backend․lisp file
with-collectors.lisp: The petalisp․utilities/with-collectors․lisp file
with-lazy-arrays.lisp: The petalisp․api/with-lazy-arrays․lisp file
with-pinned-objects.lisp: The petalisp․utilities/with-pinned-objects․lisp file
worker: Private structures
worker-id: Private types
worker-pool: Private structures
worker-pool.lisp: The petalisp․native-backend/worker-pool․lisp file