This is the petalisp Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon May 15 06:08:24 2023 GMT+0.
petalisp/petalisp.asd
petalisp.api/petalisp.api.asd
petalisp.utilities/petalisp.utilities.asd
petalisp.core/petalisp.core.asd
petalisp.xmas-backend/petalisp.xmas-backend.asd
petalisp.ir/petalisp.ir.asd
petalisp.test-suite/petalisp.test-suite.asd
petalisp.api/differentiator.lisp
petalisp.api/lazy-allreduce.lisp
petalisp.api/lazy-array-indices.lisp
petalisp.api/lazy-array-interior.lisp
petalisp.api/lazy-broadcast.lisp
petalisp.api/lazy-drop-axes.lisp
petalisp.api/lazy-flatten.lisp
petalisp.api/lazy.lisp
petalisp.api/lazy-multiple-value.lisp
petalisp.api/lazy-overwrite.lisp
petalisp.api/lazy-reduce.lisp
petalisp.api/lazy-reshape.lisp
petalisp.api/lazy-shape-indices.lisp
petalisp.api/lazy-slice.lisp
petalisp.api/lazy-slices.lisp
petalisp.api/lazy-stack.lisp
petalisp.api/network.lisp
petalisp.api/packages.lisp
petalisp.api/shape-interior.lisp
petalisp.api/shape-syntax.lisp
petalisp.api/transform.lisp
petalisp.api/vectorize.lisp
petalisp.api/documentation.lisp
petalisp.utilities/packages.lisp
petalisp.utilities/documentation.lisp
petalisp.utilities/defalias.lisp
petalisp.utilities/queue.lisp
petalisp.utilities/circular-array.lisp
petalisp.utilities/wsdeque.lisp
petalisp.utilities/bitfield.lisp
petalisp.utilities/identical.lisp
petalisp.utilities/memoization.lisp
petalisp.utilities/extended-euclid.lisp
petalisp.utilities/powers-of-two.lisp
petalisp.utilities/prime-factors.lisp
petalisp.utilities/weak-set.lisp
petalisp.utilities/with-collectors.lisp
petalisp.utilities/number-of-cpus.lisp
petalisp.utilities/topological-sort.lisp
petalisp.utilities/graph-coloring.lisp
petalisp.utilities/karmarkar-karp.lisp
petalisp.utilities/with-pinned-objects.lisp
petalisp.core/packages.lisp
petalisp.core/range.lisp
petalisp.core/shape.lisp
petalisp.core/transformation.lisp
petalisp.core/transformation-constructors.lisp
petalisp.core/lazy-array.lisp
petalisp.core/lazy-ref.lisp
petalisp.core/lazy-fuse.lisp
petalisp.core/lazy-map.lisp
petalisp.core/substitute-lazy-arrays.lisp
petalisp.core/backend.lisp
petalisp.core/reference-backend.lisp
petalisp.xmas-backend/packages.lisp
petalisp.xmas-backend/memory-pool.lisp
petalisp.xmas-backend/worker-pool.lisp
petalisp.xmas-backend/xmas-backend.lisp
petalisp.ir/packages.lisp
petalisp.ir/device.lisp
petalisp.ir/ir.lisp
petalisp.ir/ir-checker.lisp
petalisp.ir/ir-conversion.lisp
petalisp.ir/blueprint.lisp
petalisp.ir/kernel-interpreter.lisp
petalisp.ir/kernel-compiler.lisp
petalisp.ir/partitioning.lisp
petalisp.ir/coloring.lisp
petalisp.ir/ir-backend.lisp
petalisp.ir/documentation.lisp
petalisp.test-suite/packages.lisp
petalisp.test-suite/test-suite.lisp
petalisp.test-suite/testing-backend.lisp
petalisp.test-suite/code-statistics.lisp
petalisp.test-suite/defgenerator.lisp
petalisp.test-suite/generators.lisp
petalisp.test-suite/run-petalisp-test-suite.lisp
petalisp.test-suite/petalisp.utilities.lisp
petalisp.test-suite/petalisp.core.lisp
petalisp.test-suite/petalisp.examples.lisp
The main system appears first, followed by any subsystem dependency.
petalisp
petalisp.api
petalisp.utilities
petalisp.core
petalisp.xmas-backend
petalisp.ir
petalisp.test-suite
petalisp
Elegant High Performance Computing
Marco Heisig <marco.heisig@fau.de>
AGPLv3
petalisp.api
(system).
petalisp.test-suite
(system).
petalisp.api
A Convenient API for Petalisp.
Marco Heisig <marco.heisig@fau.de>
AGPLv3
alexandria
(system).
trivia
(system).
split-sequence
(system).
trivial-macroexpand-all
(system).
petalisp.utilities
(system).
petalisp.core
(system).
petalisp.xmas-backend
(system).
differentiator.lisp
(file).
lazy-allreduce.lisp
(file).
lazy-array-indices.lisp
(file).
lazy-array-interior.lisp
(file).
lazy-broadcast.lisp
(file).
lazy-drop-axes.lisp
(file).
lazy-flatten.lisp
(file).
lazy.lisp
(file).
lazy-multiple-value.lisp
(file).
lazy-overwrite.lisp
(file).
lazy-reduce.lisp
(file).
lazy-reshape.lisp
(file).
lazy-shape-indices.lisp
(file).
lazy-slice.lisp
(file).
lazy-slices.lisp
(file).
lazy-stack.lisp
(file).
network.lisp
(file).
packages.lisp
(file).
shape-interior.lisp
(file).
shape-syntax.lisp
(file).
transform.lisp
(file).
vectorize.lisp
(file).
documentation.lisp
(file).
petalisp.utilities
Marco Heisig <marco.heisig@fau.de>
AGPLv3
alexandria
(system).
atomics
(system).
bordeaux-threads
(system).
queues.priority-queue
(system).
trivia
(system).
trivial-garbage
(system).
packages.lisp
(file).
documentation.lisp
(file).
defalias.lisp
(file).
queue.lisp
(file).
circular-array.lisp
(file).
wsdeque.lisp
(file).
bitfield.lisp
(file).
identical.lisp
(file).
memoization.lisp
(file).
extended-euclid.lisp
(file).
powers-of-two.lisp
(file).
prime-factors.lisp
(file).
weak-set.lisp
(file).
with-collectors.lisp
(file).
number-of-cpus.lisp
(file).
topological-sort.lisp
(file).
graph-coloring.lisp
(file).
karmarkar-karp.lisp
(file).
with-pinned-objects.lisp
(file).
petalisp.core
Marco Heisig <marco.heisig@fau.de>
AGPLv3
alexandria
(system).
bordeaux-threads
(system).
lparallel
(system).
trivia
(system).
petalisp.utilities
(system).
typo
(system).
packages.lisp
(file).
range.lisp
(file).
shape.lisp
(file).
transformation.lisp
(file).
transformation-constructors.lisp
(file).
lazy-array.lisp
(file).
lazy-ref.lisp
(file).
lazy-fuse.lisp
(file).
lazy-map.lisp
(file).
substitute-lazy-arrays.lisp
(file).
backend.lisp
(file).
reference-backend.lisp
(file).
petalisp.xmas-backend
Marco Heisig <marco.heisig@fau.de>
AGPLv3
alexandria
(system).
atomics
(system).
bordeaux-threads
(system).
lparallel
(system).
trivia
(system).
trivial-garbage
(system).
petalisp.utilities
(system).
petalisp.core
(system).
petalisp.ir
(system).
typo
(system).
packages.lisp
(file).
memory-pool.lisp
(file).
worker-pool.lisp
(file).
xmas-backend.lisp
(file).
petalisp.ir
Marco Heisig <marco.heisig@fau.de>
AGPLv3
alexandria
(system).
ucons
(system).
priority-queue
(system).
split-sequence
(system).
petalisp.utilities
(system).
petalisp.core
(system).
packages.lisp
(file).
device.lisp
(file).
ir.lisp
(file).
ir-checker.lisp
(file).
ir-conversion.lisp
(file).
blueprint.lisp
(file).
kernel-interpreter.lisp
(file).
kernel-compiler.lisp
(file).
partitioning.lisp
(file).
coloring.lisp
(file).
ir-backend.lisp
(file).
documentation.lisp
(file).
petalisp.test-suite
A comprehensive test suite for Petalisp.
Marco Heisig <marco.heisig@fau.de>
AGPLv3
asdf
(system).
bordeaux-threads
(system).
closer-mop
(system).
petalisp.examples
(system).
petalisp.xmas-backend
(system).
packages.lisp
(file).
test-suite.lisp
(file).
testing-backend.lisp
(file).
code-statistics.lisp
(file).
defgenerator.lisp
(file).
generators.lisp
(file).
run-petalisp-test-suite.lisp
(file).
petalisp.utilities.lisp
(file).
petalisp.core.lisp
(file).
petalisp.examples.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
petalisp/petalisp.asd
petalisp.api/petalisp.api.asd
petalisp.utilities/petalisp.utilities.asd
petalisp.core/petalisp.core.asd
petalisp.xmas-backend/petalisp.xmas-backend.asd
petalisp.ir/petalisp.ir.asd
petalisp.test-suite/petalisp.test-suite.asd
petalisp.api/differentiator.lisp
petalisp.api/lazy-allreduce.lisp
petalisp.api/lazy-array-indices.lisp
petalisp.api/lazy-array-interior.lisp
petalisp.api/lazy-broadcast.lisp
petalisp.api/lazy-drop-axes.lisp
petalisp.api/lazy-flatten.lisp
petalisp.api/lazy.lisp
petalisp.api/lazy-multiple-value.lisp
petalisp.api/lazy-overwrite.lisp
petalisp.api/lazy-reduce.lisp
petalisp.api/lazy-reshape.lisp
petalisp.api/lazy-shape-indices.lisp
petalisp.api/lazy-slice.lisp
petalisp.api/lazy-slices.lisp
petalisp.api/lazy-stack.lisp
petalisp.api/network.lisp
petalisp.api/packages.lisp
petalisp.api/shape-interior.lisp
petalisp.api/shape-syntax.lisp
petalisp.api/transform.lisp
petalisp.api/vectorize.lisp
petalisp.api/documentation.lisp
petalisp.utilities/packages.lisp
petalisp.utilities/documentation.lisp
petalisp.utilities/defalias.lisp
petalisp.utilities/queue.lisp
petalisp.utilities/circular-array.lisp
petalisp.utilities/wsdeque.lisp
petalisp.utilities/bitfield.lisp
petalisp.utilities/identical.lisp
petalisp.utilities/memoization.lisp
petalisp.utilities/extended-euclid.lisp
petalisp.utilities/powers-of-two.lisp
petalisp.utilities/prime-factors.lisp
petalisp.utilities/weak-set.lisp
petalisp.utilities/with-collectors.lisp
petalisp.utilities/number-of-cpus.lisp
petalisp.utilities/topological-sort.lisp
petalisp.utilities/graph-coloring.lisp
petalisp.utilities/karmarkar-karp.lisp
petalisp.utilities/with-pinned-objects.lisp
petalisp.core/packages.lisp
petalisp.core/range.lisp
petalisp.core/shape.lisp
petalisp.core/transformation.lisp
petalisp.core/transformation-constructors.lisp
petalisp.core/lazy-array.lisp
petalisp.core/lazy-ref.lisp
petalisp.core/lazy-fuse.lisp
petalisp.core/lazy-map.lisp
petalisp.core/substitute-lazy-arrays.lisp
petalisp.core/backend.lisp
petalisp.core/reference-backend.lisp
petalisp.xmas-backend/packages.lisp
petalisp.xmas-backend/memory-pool.lisp
petalisp.xmas-backend/worker-pool.lisp
petalisp.xmas-backend/xmas-backend.lisp
petalisp.ir/packages.lisp
petalisp.ir/device.lisp
petalisp.ir/ir.lisp
petalisp.ir/ir-checker.lisp
petalisp.ir/ir-conversion.lisp
petalisp.ir/blueprint.lisp
petalisp.ir/kernel-interpreter.lisp
petalisp.ir/kernel-compiler.lisp
petalisp.ir/partitioning.lisp
petalisp.ir/coloring.lisp
petalisp.ir/ir-backend.lisp
petalisp.ir/documentation.lisp
petalisp.test-suite/packages.lisp
petalisp.test-suite/test-suite.lisp
petalisp.test-suite/testing-backend.lisp
petalisp.test-suite/code-statistics.lisp
petalisp.test-suite/defgenerator.lisp
petalisp.test-suite/generators.lisp
petalisp.test-suite/run-petalisp-test-suite.lisp
petalisp.test-suite/petalisp.utilities.lisp
petalisp.test-suite/petalisp.core.lisp
petalisp.test-suite/petalisp.examples.lisp
petalisp.utilities/petalisp.utilities.asd
petalisp.utilities
(system).
petalisp.xmas-backend/petalisp.xmas-backend.asd
petalisp.xmas-backend
(system).
petalisp.test-suite/petalisp.test-suite.asd
petalisp.test-suite
(system).
petalisp.api/differentiator.lisp
lazy-reshape.lisp
(file).
lazy-overwrite.lisp
(file).
lazy.lisp
(file).
lazy-reduce.lisp
(file).
petalisp.api
(system).
differentiator
(function).
move-axis-to-front
(function).
print-object
(method).
ad-record
(structure).
ad-record-alist
(reader).
(setf ad-record-alist)
(writer).
ad-record-input-gradient
(function).
ad-record-input-gradient-cache
(macro).
ad-record-input-gradient-caches
(reader).
(setf ad-record-input-gradient-caches)
(writer).
ad-record-lazy-array
(reader).
ad-record-output-gradient
(function).
ad-record-output-gradient-cache
(reader).
(setf ad-record-output-gradient-cache)
(writer).
coerce-to-ntype
(function).
input-gradient
(generic function).
make-ad-record
(function).
sum-axis
(function).
petalisp.api/lazy-allreduce.lisp
lazy-reduce.lisp
(file).
petalisp.api
(system).
lazy-allreduce
(function).
petalisp.api/lazy-array-indices.lisp
lazy-shape-indices.lisp
(file).
petalisp.api
(system).
lazy-array-indices
(function).
petalisp.api/lazy-array-interior.lisp
shape-interior.lisp
(file).
petalisp.api
(system).
lazy-array-interior
(function).
petalisp.api/lazy-broadcast.lisp
lazy-reshape.lisp
(file).
petalisp.api
(system).
lazy-broadcast-arrays
(function).
lazy-broadcast-list-of-arrays
(function).
lazy-broadcast-to
(function).
broadcast-ranges
(function).
make-broadcast-transformation
(function).
petalisp.api/lazy-drop-axes.lisp
lazy-reshape.lisp
(file).
petalisp.api
(system).
lazy-drop-axes
(function).
petalisp.api/lazy-flatten.lisp
lazy-reshape.lisp
(file).
petalisp.api
(system).
lazy-flatten
(function).
petalisp.api/lazy.lisp
lazy-broadcast.lisp
(file).
petalisp.api
(system).
lazy
(function).
petalisp.api/lazy-multiple-value.lisp
lazy-broadcast.lisp
(file).
petalisp.api
(system).
lazy-multiple-value
(function).
petalisp.api/lazy-overwrite.lisp
packages.lisp
(file).
petalisp.api
(system).
lazy-overwrite
(function).
petalisp.api/lazy-reduce.lisp
lazy-multiple-value.lisp
(file).
lazy-reshape.lisp
(file).
lazy-drop-axes.lisp
(file).
lazy-stack.lisp
(file).
petalisp.api
(system).
lazy-reduce
(function).
lazy-reduce-aux
(function).
petalisp.api/lazy-reshape.lisp
shape-syntax.lisp
(file).
petalisp.api
(system).
lazy-reshape
(function).
change-shape
(function).
change-shape/normalized
(function).
factorize-shape
(function).
insert-axis-after
(function).
insert-axis-before
(function).
lazy-reshape-using-shape
(function).
make-shape-transformation
(function).
remove-axis-after
(function).
remove-axis-before
(function).
reshape/flatten
(function).
reshape/unflatten
(function).
petalisp.api/lazy-shape-indices.lisp
packages.lisp
(file).
petalisp.api
(system).
lazy-shape-indices
(function).
petalisp.api/lazy-slice.lisp
packages.lisp
(file).
petalisp.api
(system).
lazy-slice
(function).
petalisp.api/lazy-slices.lisp
packages.lisp
(file).
petalisp.api
(system).
lazy-slices
(function).
petalisp.api/lazy-stack.lisp
lazy-overwrite.lisp
(file).
lazy-reshape.lisp
(file).
petalisp.api
(system).
lazy-stack
(function).
petalisp.api/network.lisp
lazy.lisp
(file).
lazy-reshape.lisp
(file).
petalisp.api
(system).
call-network
(function).
make-network
(function).
network
(class).
network-outputs
(reader method).
network-parameters
(reader method).
network-evaluator
(reader method).
petalisp.api/packages.lisp
petalisp.api
(system).
*backend*
(special variable).
petalisp.api/shape-interior.lisp
packages.lisp
(file).
petalisp.api
(system).
shape-interior
(function).
petalisp.api/shape-syntax.lisp
packages.lisp
(file).
petalisp.api
(system).
define-shape-syntax
(macro).
print-object
(method).
~
(constant).
~
(function).
~l
(constant).
~l
(function).
~r
(constant).
~r
(function).
~s
(constant).
~s
(function).
*shape-syntax*
(special variable).
ensure-shape-syntax
(function).
find-shape-syntax
(function).
find-shape-syntax-no-error
(function).
listify-range-for-printing
(function).
listify-shape-for-printing
(function).
make-shape-syntax
(function).
parse-shape
(function).
parse-shape-pattern
(function).
shape-syntax
(structure).
shape-syntax-constructor-parser
(reader).
(setf shape-syntax-constructor-parser)
(writer).
shape-syntax-delimiter
(reader).
(setf shape-syntax-delimiter)
(writer).
shape-syntax-delimiter
(type).
shape-syntax-delimiter-p
(function).
shape-syntax-p
(function).
shape-syntax-pattern-parser
(reader).
(setf shape-syntax-pattern-parser)
(writer).
petalisp.api/transform.lisp
packages.lisp
(file).
petalisp.api
(system).
print-object
(method).
transform
(macro).
*alphabet*
(special variable).
*free-variables*
(special variable).
canonicalize-transform-input
(function).
compute-transform-input-mask
(function).
compute-transform-output-functions
(function).
expand-transform
(function).
free-variables
(function).
make-transform-transformation
(function).
parse-transform-inputs
(function).
parse-transform-output
(function).
parse-transform-outputs
(function).
register-free-variable
(function).
transformation-input-symbol
(function).
petalisp.api/vectorize.lisp
lazy-multiple-value.lisp
(file).
petalisp.api
(system).
vectorize
(function).
petalisp.api/documentation.lisp
differentiator.lisp
(file).
lazy-allreduce.lisp
(file).
lazy-array-indices.lisp
(file).
lazy-array-interior.lisp
(file).
lazy-broadcast.lisp
(file).
lazy-drop-axes.lisp
(file).
lazy-flatten.lisp
(file).
lazy.lisp
(file).
lazy-multiple-value.lisp
(file).
lazy-overwrite.lisp
(file).
lazy-reduce.lisp
(file).
lazy-reshape.lisp
(file).
lazy-shape-indices.lisp
(file).
lazy-slice.lisp
(file).
lazy-slices.lisp
(file).
lazy-stack.lisp
(file).
network.lisp
(file).
packages.lisp
(file).
shape-interior.lisp
(file).
shape-syntax.lisp
(file).
transform.lisp
(file).
vectorize.lisp
(file).
petalisp.api
(system).
petalisp.utilities/packages.lisp
petalisp.utilities
(system).
petalisp.utilities/documentation.lisp
packages.lisp
(file).
petalisp.utilities
(system).
document-compiler-macro
(macro).
document-compiler-macros
(macro).
document-function
(macro).
document-functions
(macro).
document-method-combination
(macro).
document-method-combinations
(macro).
document-setf-expander
(macro).
document-setf-expanders
(macro).
document-structure
(macro).
document-structures
(macro).
document-variable
(macro).
document-variables
(macro).
build-documentation
(function).
document-type
(macro).
document-types
(macro).
ensure-documentation
(function).
expand-documentation
(macro).
petalisp.utilities/defalias.lisp
documentation.lisp
(file).
petalisp.utilities
(system).
defalias
(macro).
ensure-alias
(function).
petalisp.utilities/queue.lisp
defalias.lisp
(file).
petalisp.utilities
(system).
make-queue
(function).
queue
(structure).
queue-dequeue
(function).
queue-enqueue
(function).
queuep
(function).
queue-h-lock
(reader).
(setf queue-h-lock)
(writer).
queue-head
(reader).
(setf queue-head)
(writer).
queue-t-lock
(reader).
(setf queue-t-lock)
(writer).
queue-tail
(reader).
(setf queue-tail)
(writer).
petalisp.utilities/circular-array.lisp
queue.lisp
(file).
petalisp.utilities
(system).
circular-array
(structure).
circular-array-elt
(function).
(setf circular-array-elt)
(function).
circular-array-grow
(function).
circular-array-log-size
(reader).
(setf circular-array-log-size)
(writer).
circular-array-p
(function).
circular-array-segment
(reader).
(setf circular-array-segment)
(writer).
circular-array-size
(function).
make-circular-array
(function).
petalisp.utilities/wsdeque.lisp
circular-array.lisp
(file).
petalisp.utilities
(system).
make-wsdeque
(function).
wsdeque
(structure).
wsdeque-pop
(function).
wsdeque-push
(function).
wsdeque-steal
(function).
wsdequep
(function).
wsdeque-bottom
(reader).
(setf wsdeque-bottom)
(writer).
wsdeque-circular-array
(reader).
(setf wsdeque-circular-array)
(writer).
wsdeque-lock
(reader).
(setf wsdeque-lock)
(writer).
wsdeque-top
(reader).
(setf wsdeque-top)
(writer).
petalisp.utilities/bitfield.lisp
wsdeque.lisp
(file).
petalisp.utilities
(system).
define-bitfield
(macro).
*bitfield-name*
(special variable).
*bitfield-position*
(special variable).
+bitfield-max-bits+
(constant).
bitfield-boolean-slot
(class).
bitfield-signed-byte-slot
(class).
bitfield-slot
(class).
bitfield-slot-end
(generic reader).
bitfield-slot-initform
(generic function).
bitfield-slot-name
(generic reader).
bitfield-slot-pack
(generic function).
bitfield-slot-reader
(generic reader).
bitfield-slot-size
(generic function).
bitfield-slot-start
(generic reader).
bitfield-slot-unpack
(generic function).
bitfield-unsigned-byte-slot
(class).
parse-bitfield-slot
(function).
petalisp.utilities/identical.lisp
bitfield.lisp
(file).
petalisp.utilities
(system).
identical
(function).
petalisp.utilities/memoization.lisp
identical.lisp
(file).
petalisp.utilities
(system).
with-hash-table-memoization
(macro).
with-memoization
(macro).
with-multiple-value-hash-table-memoization
(macro).
with-multiple-value-memoization
(macro).
with-multiple-value-vector-memoization
(macro).
with-vector-memoization
(macro).
+empty+
(constant).
petalisp.utilities/extended-euclid.lisp
memoization.lisp
(file).
petalisp.utilities
(system).
extended-euclid
(function).
small-fixnum
(type).
small-non-negative-fixnum
(type).
petalisp.utilities/powers-of-two.lisp
extended-euclid.lisp
(file).
petalisp.utilities
(system).
clp2
(function).
clp2-fixnum
(type).
flp2
(function).
petalisp.utilities/prime-factors.lisp
powers-of-two.lisp
(file).
petalisp.utilities
(system).
prime-factors
(function).
primep
(function).
+table-of-primes+
(constant).
make-table-of-primes
(function).
nth-prime-max-bits
(function).
nth-prime-upper-bound
(function).
petalisp.utilities/weak-set.lisp
prime-factors.lisp
(file).
petalisp.utilities
(system).
make-weak-set
(function).
map-weak-set
(function).
weak-set
(structure).
weak-set-add
(function).
weak-set-p
(function).
weak-set-size
(function).
cleanup-weak-set
(function).
weak-set-max-size
(reader).
weak-set-min-size
(reader).
weak-set-pointers
(reader).
(setf weak-set-pointers)
(writer).
weak-set-test
(reader).
petalisp.utilities/with-collectors.lisp
weak-set.lisp
(file).
petalisp.utilities
(system).
with-collectors
(macro).
with-collector
(macro).
petalisp.utilities/number-of-cpus.lisp
with-collectors.lisp
(file).
petalisp.utilities
(system).
number-of-cpus
(function).
petalisp.utilities/topological-sort.lisp
number-of-cpus.lisp
(file).
petalisp.utilities
(system).
topological-sort
(function).
petalisp.utilities/graph-coloring.lisp
topological-sort.lisp
(file).
petalisp.utilities
(system).
cgraph-add-conflict
(function).
cgraph-coloring
(function).
cgraph-ensure-cnode
(function).
make-cgraph
(function).
+empty-colorset+
(constant).
cgraph
(structure).
cgraph-p
(function).
cgraph-table
(reader).
(setf cgraph-table)
(writer).
cnode
(structure).
cnode-color
(reader).
(setf cnode-color)
(writer).
cnode-colorset
(reader).
(setf cnode-colorset)
(writer).
cnode-degree
(reader).
(setf cnode-degree)
(writer).
cnode-neighbors
(reader).
(setf cnode-neighbors)
(writer).
cnode-object
(reader).
cnode-p
(function).
cnode-queue-node
(reader).
(setf cnode-queue-node)
(writer).
cnode-saturation
(reader).
(setf cnode-saturation)
(writer).
cnode>
(function).
color
(type).
colorset
(type).
colorset-add
(function).
colorset-contains
(function).
colorset-next-free-color
(function).
colorset-union
(function).
copy-cgraph
(function).
copy-cnode
(function).
make-cnode
(function).
petalisp.utilities/karmarkar-karp.lisp
graph-coloring.lisp
(file).
petalisp.utilities
(system).
karmarkar-karp
(function).
*k*
(special variable).
*weight*
(special variable).
combine-subsets
(function).
combine-tuples
(function).
copy-subset
(function).
copy-tuple
(function).
make-subset
(function).
make-tuple
(function).
subset
(structure).
subset-elements
(reader).
(setf subset-elements)
(writer).
subset-p
(function).
subset-weight
(reader).
(setf subset-weight)
(writer).
tuple
(structure).
tuple-from-object
(function).
tuple-p
(function).
tuple-subset
(function).
tuple-subsets
(reader).
(setf tuple-subsets)
(writer).
tuple-weight
(reader).
(setf tuple-weight)
(writer).
tuple>
(function).
petalisp.utilities/with-pinned-objects.lisp
karmarkar-karp.lisp
(file).
petalisp.utilities
(system).
with-pinned-objects
(macro).
touch
(function).
petalisp.core/range.lisp
packages.lisp
(file).
petalisp.core
(system).
empty-range
(function).
empty-range
(structure).
empty-range-p
(function).
fuse-ranges
(function).
map-range
(function).
non-empty-range
(structure).
non-empty-range-p
(function).
print-object
(method).
print-object
(method).
range
(compiler macro).
range
(function).
range
(structure).
range-contains
(function).
range-difference-list
(function).
range-end
(function).
range-equal
(function).
range-intersection
(function).
range-intersectionp
(function).
range-last
(function).
range-size
(reader).
range-start
(reader).
range-step
(reader).
rangep
(function).
size-one-range-p
(function).
split-range
(function).
subrangep
(function).
%make-empty-range
(function).
empty-range-size
(function).
make-non-empty-range
(function).
make-range
(function).
range-difference-list--contiguous
(function).
range-difference-list--single
(function).
range-intersection-start-end-step
(function).
petalisp.core/shape.lisp
range.lisp
(file).
petalisp.core
(system).
array-has-shape-p
(function).
array-shape
(function).
clear-shape-table
(function).
empty-shape-p
(function).
enlarge-shape
(function).
fuse-shapes
(function).
make-shape
(function).
make-shape-table
(function).
map-shape
(function).
remove-shape-table-entry
(function).
shape
(structure).
shape-contains
(function).
shape-designator-shape
(generic function).
shape-difference-list
(function).
shape-dimensions
(function).
shape-intersection
(function).
shape-intersectionp
(function).
shape-range
(function).
shape-ranges
(reader).
shape-rank
(reader).
shape-size
(reader).
shape-table
(structure).
shape-table-p
(function).
shape-table-value
(function).
(setf shape-table-value)
(function).
shape<
(function).
shape=
(function).
shapep
(function).
shrink-shape
(function).
split-shape
(function).
subdivide-shapes
(function).
subshapep
(function).
%make-shape
(function).
fragment-difference-list
(function).
fragment-intersections
(function).
rank
(type).
shape-table-ht
(reader).
subdivide-aux
(function).
subtract-fragment-lists
(function).
petalisp.core/transformation.lisp
shape.lisp
(file).
petalisp.core
(system).
compose-transformations
(compiler macro).
compose-transformations
(function).
enlarge-transformation
(generic function).
identity-transformation
(structure).
identity-transformation-p
(function).
invert-transformation
(generic function).
map-transformation-inputs
(generic function).
map-transformation-outputs
(generic function).
transform-axis
(generic function).
transform-sequence
(generic function).
transform-shape
(generic function).
transformation
(structure).
transformation-input-mask
(reader).
transformation-input-rank
(reader).
transformation-invertiblep
(function).
transformation-offsets
(reader).
transformation-output-mask
(reader).
transformation-output-rank
(reader).
transformation-scalings
(reader).
transformation-similar
(generic function).
transformation=
(generic function).
transformationp
(function).
%make-hairy-transformation
(function).
%make-identity-transformation
(function).
compose-two-transformations
(generic function).
hairy-transformation
(structure).
hairy-transformation-input-mask
(function).
hairy-transformation-input-rank
(function).
hairy-transformation-inverse
(function).
(setf hairy-transformation-inverse)
(function).
hairy-transformation-offsets
(function).
hairy-transformation-output-mask
(function).
hairy-transformation-output-rank
(function).
hairy-transformation-p
(function).
hairy-transformation-scalings
(function).
identity-transformation-input-mask
(function).
identity-transformation-input-rank
(function).
identity-transformation-inverse
(function).
(setf identity-transformation-inverse)
(function).
identity-transformation-offsets
(function).
identity-transformation-output-mask
(function).
identity-transformation-output-rank
(function).
identity-transformation-scalings
(function).
transformation-inverse
(reader).
(setf transformation-inverse)
(writer).
petalisp.core/transformation-constructors.lisp
transformation.lisp
(file).
petalisp.core
(system).
collapsing-transformation
(function).
identity-transformation
(function).
make-transformation
(function).
normalizing-transformation
(function).
canonicalize-inputs
(function).
canonicalize-outputs
(function).
from-storage-transformation
(function).
size-one-range-removing-transformation
(function).
petalisp.core/lazy-array.lisp
transformation-constructors.lisp
(file).
petalisp.core
(system).
*lazy-array-lock*
(special variable).
array-value
(function).
compatible-with-lazy-array-p
(function).
delayed-action
(structure).
delayed-action-inputs
(generic function).
delayed-action-p
(function).
delayed-array
(structure).
delayed-array-p
(function).
delayed-array-storage
(reader).
(setf delayed-array-storage)
(writer).
delayed-failure
(structure).
delayed-failure-condition
(reader).
delayed-failure-p
(function).
delayed-fuse
(structure).
delayed-fuse-inputs
(reader).
(setf delayed-fuse-inputs)
(writer).
delayed-fuse-p
(function).
delayed-map
(structure).
delayed-map-fnrecord
(reader).
(setf delayed-map-fnrecord)
(writer).
delayed-map-inputs
(reader).
(setf delayed-map-inputs)
(writer).
delayed-map-number-of-values
(function).
delayed-map-p
(function).
delayed-multiple-value-map
(structure).
delayed-multiple-value-map-fnrecord
(function).
(setf delayed-multiple-value-map-fnrecord)
(function).
delayed-multiple-value-map-inputs
(function).
(setf delayed-multiple-value-map-inputs)
(function).
delayed-multiple-value-map-p
(function).
delayed-multiple-value-map-refbits
(reader).
(setf delayed-multiple-value-map-refbits)
(writer).
delayed-multiple-value-map-values-ntype
(reader).
delayed-nop
(structure).
delayed-nop-p
(function).
delayed-nth-value
(structure).
delayed-nth-value-input
(reader).
(setf delayed-nth-value-input)
(writer).
delayed-nth-value-number
(reader).
(setf delayed-nth-value-number)
(writer).
delayed-nth-value-p
(function).
delayed-range
(structure).
delayed-range-p
(function).
delayed-reshape
(structure).
delayed-reshape-input
(reader).
(setf delayed-reshape-input)
(writer).
delayed-reshape-p
(function).
delayed-reshape-transformation
(reader).
(setf delayed-reshape-transformation)
(writer).
delayed-unknown
(structure).
delayed-unknown-p
(function).
delayed-wait
(structure).
delayed-wait-delayed-action
(reader).
(setf delayed-wait-delayed-action)
(writer).
delayed-wait-p
(function).
delayed-wait-request
(reader).
empty-lazy-array
(function).
empty-lazy-arrays
(function).
lazy-array
(function).
lazy-array
(structure).
lazy-array-delayed-action
(reader).
(setf lazy-array-delayed-action)
(writer).
lazy-array-depth
(reader).
lazy-array-element-type
(function).
lazy-array-from-array
(function).
lazy-array-from-range
(function).
lazy-array-from-scalar
(function).
lazy-array-inputs
(function).
lazy-array-ntype
(reader).
lazy-array-p
(function).
lazy-array-ranges
(function).
lazy-array-rank
(function).
lazy-array-refcount
(reader).
(setf lazy-array-refcount)
(writer).
lazy-array-shape
(reader).
lazy-array-size
(function).
lazy-unknowns
(function).
make-delayed-array
(function).
make-rank-zero-array
(function).
make-unknown
(function).
print-object
(method).
shape-designator-shape
(method).
subdivide-arrays
(function).
value-array
(function).
%make-delayed-array
(function).
%make-delayed-fuse
(function).
%make-delayed-map
(function).
%make-delayed-multiple-value-map
(function).
%make-delayed-nth-value
(function).
%make-delayed-reshape
(function).
copy-delayed-array
(function).
copy-delayed-failure
(function).
copy-delayed-fuse
(function).
copy-delayed-map
(function).
copy-delayed-multiple-value-map
(function).
copy-delayed-nop
(function).
copy-delayed-nth-value
(function).
copy-delayed-range
(function).
copy-delayed-reshape
(function).
copy-delayed-unknown
(function).
copy-delayed-wait
(function).
make-delayed-failure
(function).
make-delayed-fuse
(function).
make-delayed-map
(function).
make-delayed-multiple-value-map
(function).
make-delayed-nop
(function).
make-delayed-nth-value
(function).
make-delayed-range
(function).
make-delayed-reshape
(function).
make-delayed-unknown
(function).
make-delayed-wait
(function).
make-lazy-array
(function).
maxdepth
(function).
simplify-array
(function).
trivial-lazy-array-p
(generic function).
trivial-lazy-array-value
(generic function).
trivial-object-p
(function).
trivial-object-value
(function).
petalisp.core/lazy-ref.lisp
lazy-array.lisp
(file).
petalisp.core
(system).
lazy-collapse
(function).
lazy-ref
(function).
transform-lazy-array
(function).
add-transformation-constraints
(function).
petalisp.core/lazy-fuse.lisp
lazy-ref.lisp
(file).
petalisp.core
(system).
lazy-fuse
(function).
petalisp.core/lazy-map.lisp
lazy-fuse.lisp
(file).
petalisp.core
(system).
lazy-map
(function).
lazy-multiple-value-map
(function).
petalisp.core/substitute-lazy-arrays.lisp
lazy-map.lisp
(file).
petalisp.core
(system).
copy-lazy-arrays
(function).
substitute-delayed-action
(generic function).
substitute-lazy-array
(function).
substitute-lazy-arrays
(function).
*substitutions*
(special variable).
petalisp.core/backend.lisp
substitute-lazy-arrays.lisp
(file).
petalisp.core
(system).
backend
(class).
backend-compute
(generic function).
backend-compute-asynchronously
(generic function).
backend-evaluator
(generic function).
backendp
(generic function).
compute
(function).
compute-asynchronously
(function).
compute-list-of-arrays
(function).
delete-backend
(generic function).
evaluator
(function).
request
(class).
request-completedp
(generic function).
request-wait
(generic function).
requestp
(generic function).
wait
(function).
with-temporary-backend
(macro).
*backend-compute-recursion*
(special variable).
backend-stats
(class).
completed-request
(class).
deleted-backend
(class).
petalisp.core/reference-backend.lisp
backend.lisp
(file).
petalisp.core
(system).
backend-compute
(method).
make-reference-backend
(function).
*table*
(special variable).
compute-delayed-array
(function).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
delayed-action-value
(method).
lazy-array-value
(function).
reference-backend
(class).
petalisp.xmas-backend/packages.lisp
petalisp.xmas-backend
(system).
petalisp.xmas-backend/memory-pool.lisp
packages.lisp
(file).
petalisp.xmas-backend
(system).
copy-memory-pool
(function).
make-memory-pool
(function).
memory-pool
(structure).
memory-pool-allocate
(function).
memory-pool-free
(function).
memory-pool-ntype-allocator-vector
(reader).
memory-pool-p
(function).
memory-pool-weak-pointer-list
(macro).
petalisp.xmas-backend/worker-pool.lisp
memory-pool.lisp
(file).
petalisp.xmas-backend
(system).
%make-worker
(function).
%make-worker-pool
(function).
*worker*
(special variable).
atomic-counter
(type).
barrier
(function).
make-worker-pool
(function).
message
(function).
start-worker
(function).
worker
(function).
worker
(structure).
worker-barrier-sense
(reader).
(setf worker-barrier-sense)
(writer).
worker-enqueue
(function).
worker-id
(reader).
worker-id
(type).
worker-pool
(structure).
worker-pool-barrier-countdown
(reader).
(setf worker-pool-barrier-countdown)
(writer).
worker-pool-barrier-sense
(reader).
(setf worker-pool-barrier-sense)
(writer).
worker-pool-p
(function).
worker-pool-size
(function).
worker-pool-worker
(function).
worker-pool-workers
(reader).
worker-queue
(reader).
(setf worker-queue)
(writer).
worker-serious-conditions
(reader).
(setf worker-serious-conditions)
(writer).
worker-thread
(reader).
(setf worker-thread)
(writer).
worker-worker-pool
(reader).
workerp
(function).
petalisp.xmas-backend/xmas-backend.lisp
worker-pool.lisp
(file).
petalisp.xmas-backend
(system).
backend-evaluator
(method).
delete-backend
(method).
make-xmas-backend
(function).
*min-per-thread-cost*
(special variable).
allocate-buffer
(function).
allocator-and-deallocator
(function).
argument-processor
(function).
argument-variables
(function).
bind-buffer
(function).
compile-kernel
(function).
copy-subtask
(function).
evaluator-template
(function).
evaluator-template-arguments
(function).
execute-schedule
(function).
generate-variable
(function).
make-subtask
(function).
map-partitioned-iteration-space
(function).
result-processor
(function).
result-variables
(function).
runner
(function).
subtask
(structure).
subtask-cost
(reader).
(setf subtask-cost)
(writer).
subtask-fn
(reader).
(setf subtask-fn)
(writer).
subtask-iteration-space
(reader).
(setf subtask-iteration-space)
(writer).
subtask-kernel
(reader).
(setf subtask-kernel)
(writer).
subtask-p
(function).
xmas-backend
(class).
xmas-backend-compile-cache
(reader method).
xmas-backend-memory-pool
(reader method).
xmas-backend-number-of-threads
(function).
xmas-backend-worker-pool
(reader method).
petalisp.ir/device.lisp
packages.lisp
(file).
petalisp.ir
(system).
core
(class).
core-memory
(generic reader).
core-name
(generic reader).
device
(class).
device-cores
(generic function).
device-memory
(generic reader).
device-name
(generic reader).
host-device
(function).
memory
(class).
memory-bandwidth
(generic reader).
memory-children
(generic reader).
memory-cores
(generic reader).
memory-granularity
(generic reader).
memory-latency
(generic reader).
memory-name
(generic reader).
memory-parent
(generic reader).
memory-parent-bandwidth
(generic reader).
memory-size
(generic reader).
print-object
(method).
print-object
(method).
print-object
(method).
shared-initialize
(method).
shared-initialize
(method).
*suffix-factors*
(special variable).
device-number-of-cores
(reader method).
fallback-host-device
(function).
linux-host-device
(function).
memory-children-slot
(reader method).
(setf memory-children-slot)
(writer method).
memory-cores-slot
(reader method).
(setf memory-cores-slot)
(writer method).
parse-cache-type
(function).
parse-integer-set
(function).
parse-size
(function).
suffix-factor
(function).
petalisp.ir/ir.lisp
device.lisp
(file).
petalisp.ir
(system).
*stencil-max-radius*
(special variable).
buffer
(structure).
buffer-bits
(function).
buffer-depth
(reader).
(setf buffer-depth)
(writer).
buffer-ntype
(reader).
(setf buffer-ntype)
(writer).
buffer-number
(reader).
(setf buffer-number)
(writer).
buffer-number-of-inputs
(function).
buffer-number-of-loads
(function).
buffer-number-of-outputs
(function).
buffer-number-of-stores
(function).
buffer-program
(function).
buffer-reuse-potential
(function).
buffer-shape
(reader).
(setf buffer-shape)
(writer).
buffer-size
(function).
buffer-storage
(reader).
(setf buffer-storage)
(writer).
buffer-task
(reader).
(setf buffer-task)
(writer).
bufferp
(function).
call-instruction
(structure).
call-instruction-fnrecord
(reader).
(setf call-instruction-fnrecord)
(writer).
call-instruction-function
(function).
call-instruction-p
(function).
compute-stencil-center
(function).
do-buffer-inputs
(macro).
do-buffer-load-instructions
(macro).
do-buffer-outputs
(macro).
do-buffer-store-instructions
(macro).
do-instruction-inputs
(macro).
do-kernel-inputs
(macro).
do-kernel-instructions
(macro).
do-kernel-load-instructions
(macro).
do-kernel-outputs
(macro).
do-kernel-stencils
(macro).
do-kernel-store-instructions
(macro).
do-program-buffer-groups
(macro).
do-program-buffers
(macro).
do-program-kernels
(macro).
do-program-tasks
(macro).
do-stencil-load-instructions
(macro).
do-task-defined-buffers
(macro).
do-task-kernels
(macro).
do-task-predecessors
(macro).
do-task-successors
(macro).
ensure-array-buffer-compatibility
(function).
instruction
(structure).
instruction-inputs
(reader).
(setf instruction-inputs)
(writer).
instruction-number
(reader).
(setf instruction-number)
(writer).
instruction-transformation
(reader).
(setf instruction-transformation)
(writer).
instructionp
(function).
interior-buffer-p
(function).
iref-instruction
(structure).
iref-instruction-p
(function).
iref-instruction-transformation
(function).
(setf iref-instruction-transformation)
(function).
iterating-instruction
(structure).
iterating-instruction-p
(function).
kernel
(structure).
kernel-cost
(function).
kernel-instruction-vector
(reader).
(setf kernel-instruction-vector)
(writer).
kernel-iteration-space
(reader).
(setf kernel-iteration-space)
(writer).
kernel-number
(reader).
(setf kernel-number)
(writer).
kernel-number-of-inputs
(function).
kernel-number-of-loads
(function).
kernel-number-of-outputs
(function).
kernel-number-of-stores
(function).
kernel-program
(function).
kernel-reuse-potential
(function).
kernel-stencils
(function).
kernel-task
(reader).
(setf kernel-task)
(writer).
kernelp
(function).
leaf-buffer-p
(function).
load-instruction
(structure).
load-instruction-buffer
(reader).
(setf load-instruction-buffer)
(writer).
load-instruction-p
(function).
load-instruction-transformation
(function).
(setf load-instruction-transformation)
(function).
make-buffer
(function).
make-buffer-like-array
(function).
make-kernel
(function).
make-program
(function).
make-stencil
(function).
make-task
(function).
map-buffer-inputs
(function).
map-buffer-load-instructions
(function).
map-buffer-outputs
(function).
map-buffer-store-instructions
(function).
map-buffers
(function).
map-buffers-and-kernels
(function).
map-instruction-inputs
(function).
map-kernel-inputs
(function).
map-kernel-instructions
(function).
map-kernel-load-instructions
(function).
map-kernel-outputs
(function).
map-kernel-stencils
(function).
map-kernel-store-instructions
(function).
map-kernels
(function).
map-program-buffer-groups
(function).
map-program-buffers
(function).
map-program-kernels
(function).
map-program-tasks
(function).
map-stencil-load-instructions
(function).
map-task-defined-buffers
(function).
map-task-kernels
(function).
map-task-predecessors
(function).
map-task-successors
(function).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
print-object
(method).
program
(structure).
program-buffer
(function).
program-final-task
(reader).
(setf program-final-task)
(writer).
program-initial-task
(reader).
(setf program-initial-task)
(writer).
program-kernel
(function).
program-leaf-alist
(reader).
(setf program-leaf-alist)
(writer).
program-number-of-buffers
(reader).
(setf program-number-of-buffers)
(writer).
program-number-of-kernels
(reader).
(setf program-number-of-kernels)
(writer).
program-number-of-tasks
(function).
program-root-buffers
(reader).
(setf program-root-buffers)
(writer).
program-task-vector
(reader).
(setf program-task-vector)
(writer).
programp
(function).
reuse-optimizing-transformation
(function).
root-buffer-p
(function).
stencil
(structure).
stencil-buffer
(function).
stencil-center
(reader).
(setf stencil-center)
(writer).
stencil-from-load-instruction
(function).
stencil-input-rank
(function).
stencil-load-instructions
(reader).
(setf stencil-load-instructions)
(writer).
stencil-output-mask
(function).
stencil-output-rank
(function).
stencil-scalings
(function).
stencilp
(function).
store-instruction
(structure).
store-instruction-buffer
(reader).
(setf store-instruction-buffer)
(writer).
store-instruction-p
(function).
store-instruction-transformation
(function).
(setf store-instruction-transformation)
(function).
task
(structure).
task-number
(reader).
(setf task-number)
(writer).
task-program
(reader).
(setf task-program)
(writer).
taskp
(function).
%make-load-instruction
(function).
%make-stencil
(function).
%make-store-instruction
(function).
buffer-readers
(reader).
(setf buffer-readers)
(writer).
buffer-writers
(reader).
(setf buffer-writers)
(writer).
call-instruction-inputs
(function).
(setf call-instruction-inputs)
(function).
call-instruction-number
(function).
(setf call-instruction-number)
(function).
call-instruction-number-of-values
(reader).
(setf call-instruction-number-of-values)
(writer).
copy-buffer
(function).
copy-kernel
(function).
copy-program
(function).
copy-task
(function).
count-mapped-elements
(function).
delete-kernel
(function).
differs-exactly-at
(function).
instruction-number-of-values
(generic function).
iref-instruction-inputs
(function).
(setf iref-instruction-inputs)
(function).
iref-instruction-number
(function).
(setf iref-instruction-number)
(function).
kernel-data
(reader).
(setf kernel-data)
(writer).
kernel-highest-instruction-number
(function).
kernel-sources
(reader).
(setf kernel-sources)
(writer).
kernel-targets
(reader).
(setf kernel-targets)
(writer).
load-instruction-inputs
(function).
(setf load-instruction-inputs)
(function).
load-instruction-number
(function).
(setf load-instruction-number)
(function).
make-call-instruction
(function).
make-iref-instruction
(function).
make-load-instruction
(function).
make-store-instruction
(function).
simplify-input
(function).
store-instruction-input
(function).
store-instruction-inputs
(function).
(setf store-instruction-inputs)
(function).
store-instruction-number
(function).
(setf store-instruction-number)
(function).
task-defined-buffers
(reader).
(setf task-defined-buffers)
(writer).
task-kernels
(reader).
(setf task-kernels)
(writer).
task-predecessors
(reader).
(setf task-predecessors)
(writer).
task-successors
(reader).
(setf task-successors)
(writer).
transform-buffer
(function).
transform-instruction-input
(generic function).
transform-instruction-output
(generic function).
transform-kernel
(function).
petalisp.ir/ir-checker.lisp
ir.lisp
(file).
petalisp.ir
(system).
check-ir
(function).
*ir-checker-table*
(special variable).
*ir-checker-worklist*
(special variable).
check-ir-node
(generic function).
check-ir-node-eventually
(function).
check-reverse-link
(function).
duplicates
(function).
petalisp.ir/ir-conversion.lisp
ir-checker.lisp
(file).
petalisp.ir
(system).
ir-from-lazy-arrays
(function).
program-from-lazy-arrays
(function).
%make-dendrite
(function).
*instruction-table*
(special variable).
*instruction-tables*
(special variable).
*ir-converter*
(special variable).
*prune*
(special variable).
buffer-dendrites
(macro).
clone-reference
(generic function).
cluster
(structure).
cluster-dendrites
(reader).
(setf cluster-dendrites)
(writer).
cluster-lazy-array
(reader).
(setf cluster-lazy-array)
(writer).
cluster-ntype
(function).
cluster-p
(function).
cluster-shape
(function).
collect-prune-buffer-dendrites-alist
(function).
convert-cluster
(generic function).
copy-cluster
(function).
copy-dendrite
(function).
copy-ir-converter
(function).
copy-prune
(function).
copy-stem
(function).
dendrite
(structure).
dendrite-cluster
(function).
dendrite-cons
(reader).
(setf dendrite-cons)
(writer).
dendrite-depth
(reader).
(setf dendrite-depth)
(writer).
dendrite-kernel
(function).
dendrite-p
(function).
dendrite-shape
(reader).
(setf dendrite-shape)
(writer).
dendrite-stem
(reader).
(setf dendrite-stem)
(writer).
dendrite-transformation
(reader).
(setf dendrite-transformation)
(writer).
dendrite-validp
(function).
dendrite-value-n
(function).
ensure-buffer-task
(function).
ensure-cluster
(function).
ensure-instruction-clone
(macro).
ensure-instruction-table
(function).
ensure-tasks
(function).
event-horizon
(function).
finalize-buffer
(function).
finalize-ir
(function).
finalize-kernel
(function).
find-prune
(function).
grow-dendrite
(function).
grow-dendrite-aux
(generic function).
insert-copy-kernel
(function).
ir-converter
(structure).
ir-converter-array-table
(reader).
(setf ir-converter-array-table)
(writer).
ir-converter-buffer-dendrites-table
(reader).
(setf ir-converter-buffer-dendrites-table)
(writer).
ir-converter-cluster-table
(reader).
(setf ir-converter-cluster-table)
(writer).
ir-converter-cons-updates
(reader).
(setf ir-converter-cons-updates)
(writer).
ir-converter-empty-p
(function).
ir-converter-kernel-size-threshold
(reader).
ir-converter-leaf-alist
(reader).
(setf ir-converter-leaf-alist)
(writer).
ir-converter-next-cluster
(function).
ir-converter-p
(function).
ir-converter-potentially-superfluous-buffers
(reader).
(setf ir-converter-potentially-superfluous-buffers)
(writer).
ir-converter-pqueue
(reader).
(setf ir-converter-pqueue)
(writer).
ir-converter-scalar-table
(reader).
(setf ir-converter-scalar-table)
(writer).
ir-converter-unknown-table
(reader).
(setf ir-converter-unknown-table)
(writer).
make-cluster
(function).
make-dendrite
(function).
make-ir-converter
(function).
make-prune
(function).
make-stem
(function).
make-substitute-kernel
(function).
maybe-prune
(function).
mergeable-dendrites-p
(function).
partition-dendrites
(function).
potentially-superfluous-buffer-p
(function).
prune
(structure).
prune-bits
(reader).
prune-buffers
(reader).
prune-p
(function).
prune-superfluous-buffers
(function).
recompute-kernel-instruction-vector
(function).
recompute-program-task-vector
(function).
reference-to-delayed-unknown
(function).
select-masked-elements
(function).
stem
(structure).
stem-buffers
(reader).
(setf stem-buffers)
(writer).
stem-cluster
(reader).
(setf stem-cluster)
(writer).
stem-kernel
(reader).
(setf stem-kernel)
(writer).
stem-p
(function).
stem-validp
(reader).
(setf stem-validp)
(writer).
petalisp.ir/blueprint.lisp
ir-conversion.lisp
(file).
petalisp.ir
(system).
kernel-blueprint
(function).
fnrecord-blueprint
(function).
instruction-blueprint
(generic function).
instruction-blueprints
(function).
iteration-space-blueprint
(function).
source-blueprint
(function).
source-blueprints
(function).
target-blueprint
(function).
target-blueprints
(function).
transformation-blueprint
(function).
value-blueprint
(function).
petalisp.ir/kernel-interpreter.lisp
blueprint.lisp
(file).
petalisp.ir
(system).
interpret-kernel
(function).
petalisp.ir/kernel-compiler.lisp
kernel-interpreter.lisp
(file).
petalisp.ir
(system).
translate-blueprint
(function).
*index-proxies*
(special variable).
*instructions*
(special variable).
*rproxies-vector*
(special variable).
*source-array-proxies*
(special variable).
*source-index-proxies-vector*
(special variable).
*source-stride-proxies-vector*
(special variable).
*target-array-proxies*
(special variable).
*target-index-proxies-vector*
(special variable).
*target-stride-proxies-vector*
(special variable).
bind
(macro).
constant-proxy
(compiler macro).
constant-proxy
(function).
copy-proxy
(function).
ensure-proxy
(function).
index-*
(compiler macro).
index-*
(function).
index-+
(compiler macro).
index-+
(function).
make-gensym-vector
(function).
make-index-proxy-vector
(function).
make-proxy
(function).
meta-funcall
(function).
meta-index-*
(function).
meta-index-+
(function).
proxy
(structure).
proxy-binding
(function).
proxy-expr
(reader).
proxy-level
(reader).
proxy-p
(function).
proxy-ref
(function).
proxy-type
(reader).
proxy-value
(function).
proxy-values
(reader).
translate-array-info
(function).
translate-instruction
(function).
translate-iteration-space
(function).
with-unsafe-optimizations
(macro).
with-unsafe-optimizations*
(macro).
without-compiler-notes
(macro).
petalisp.ir/partitioning.lisp
kernel-compiler.lisp
(file).
petalisp.ir
(system).
chunk
(structure).
chunk-bits
(function).
chunk-buffer
(reader).
chunk-infants
(function).
chunk-parent
(reader).
chunk-primogenitor
(function).
chunk-shape
(reader).
chunk-split
(reader).
(setf chunk-split)
(writer).
chunk-writers
(reader).
(setf chunk-writers)
(writer).
chunkp
(function).
compute-chunk-vicinity
(function).
compute-program-primogenitor-chunk-vector
(function).
partition-chunks
(function).
print-object
(method).
print-object
(method).
split
(structure).
split-axis
(reader).
split-left-child
(reader).
split-parent
(reader).
split-position
(function).
split-right-child
(reader).
splitp
(function).
vicinity
(structure).
vicinity-left-neighbors
(function).
vicinity-right-neighbors
(function).
vicinityp
(function).
*buffer-chunk*
(special variable).
*buffer-ghostspec-table*
(special variable).
*chunk-pqueue*
(special variable).
*chunk-split-max-redundancy*
(special variable).
*chunk-split-min-priority*
(special variable).
*chunk-split-priority*
(special variable).
*unpropagated-splits*
(special variable).
attempt-split
(function).
buffer-chunk
(function).
buffer-ghostspec
(function).
chunk-chains
(function).
chunk-domain
(reader).
chunk-split-axis
(function).
chunk-split-priority
(function).
chunk-split-priority-cache
(reader).
(setf chunk-split-priority-cache)
(writer).
compute-buffer-ghostspec
(function).
compute-chunk-shape
(function).
copy-chunk
(function).
copy-ghostspec
(function).
copy-split
(function).
copy-vicinity
(function).
destructure-transformoid
(function).
enqueue-chunk
(function).
find-most-specific-target-chunk
(function).
ghostspec
(structure).
ghostspec-left-padding
(function).
ghostspec-left-padding-vec
(reader).
ghostspec-right-padding
(function).
ghostspec-right-padding-vec
(reader).
ghostspecp
(function).
make-chunk
(function).
make-ghostspec
(function).
make-split
(function).
make-vicinity
(function).
maxf
(macro).
next-chunk
(function).
next-chunk-p
(function).
propagate-split/determine-child-writers
(function).
relative-position
(function).
reverse-transform-axis-and-position
(function).
transform-axis-and-position
(function).
vicinity-left-neighbors-vec
(reader).
vicinity-right-neighbors-vec
(reader).
petalisp.ir/coloring.lisp
partitioning.lisp
(file).
petalisp.ir
(system).
compute-program-buffer-coloring
(function).
petalisp.ir/ir-backend.lisp
coloring.lisp
(file).
petalisp.ir
(system).
backend-compute
(method).
make-ir-backend
(function).
*chunks*
(special variable).
*nodes*
(special variable).
*worklist*
(special variable).
copy-node
(function).
ensure-node
(function).
execute-node
(function).
ir-backend
(class).
ir-backend-compile-cache
(reader method).
ir-backend-mode
(reader method).
make-node
(function).
node
(structure).
node-dependencies
(reader).
(setf node-dependencies)
(writer).
node-fn
(reader).
(setf node-fn)
(writer).
node-kernel
(reader).
(setf node-kernel)
(writer).
node-p
(function).
node-users
(reader).
(setf node-users)
(writer).
petalisp.ir/documentation.lisp
ir-backend.lisp
(file).
petalisp.ir
(system).
petalisp.test-suite/packages.lisp
petalisp.test-suite
(system).
petalisp.test-suite/test-suite.lisp
packages.lisp
(file).
petalisp.test-suite
(system).
all-tests
(function).
check-package
(function).
define-test
(macro).
is
(macro).
signals
(macro).
*check-count*
(special variable).
*failed-random-state*
(special variable).
*pass-count*
(special variable).
*test-count*
(special variable).
*tests*
(special variable).
call-with-random-state
(function).
call-with-test-harness
(function).
enter-test
(function).
expect-condition
(function).
pass
(function).
report
(function).
symbol-defined-p
(function).
type-specifier-p
(function).
with-random-state
(macro).
with-test-harness
(macro).
petalisp.test-suite/testing-backend.lisp
test-suite.lisp
(file).
petalisp.test-suite
(system).
backend-compute
(method).
delete-backend
(method).
make-testing-backend
(function).
approximately-equal
(generic function).
call-with-testing-backend
(function).
compare-solutions
(function).
ir-backend-compiled
(reader method).
ir-backend-interpreted
(reader method).
reference-backend
(reader method).
testing-backend
(class).
with-testing-backend
(macro).
xmas-backend
(reader method).
petalisp.test-suite/code-statistics.lisp
testing-backend.lisp
(file).
petalisp.test-suite
(system).
class-name-p
(function).
defgeneric-name-p
(function).
defun-name-p
(function).
macro-name-p
(function).
print-package-statistics
(function).
print-platform-information
(function).
print-system-statistics
(function).
symbol-methods
(function).
system-git-revision
(function).
system-source-file-pathnames
(function).
petalisp.test-suite/defgenerator.lisp
code-statistics.lisp
(file).
petalisp.test-suite
(system).
defgenerator
(macro).
defwrapper
(macro).
parse-defwrapper-lambda-list
(function).
petalisp.test-suite/generators.lisp
defgenerator.lisp
(file).
petalisp.test-suite
(system).
define-float-generator
(macro).
generate-double-float
(function).
generate-integer
(function).
generate-lazy-array
(function).
generate-long-float
(function).
generate-matrix
(function).
generate-range
(function).
generate-shape
(function).
generate-short-float
(function).
generate-single-float
(function).
make-double-float-generator
(function).
make-integer-generator
(function).
make-lazy-array-generator
(function).
make-long-float-generator
(function).
make-matrix-generator
(function).
make-range-generator
(function).
make-shape-generator
(function).
make-short-float-generator
(function).
make-single-float-generator
(function).
ndarray
(function).
reshape-randomly
(function).
petalisp.test-suite/run-petalisp-test-suite.lisp
generators.lisp
(file).
petalisp.test-suite
(system).
run-petalisp-test-suite
(function).
run-tests
(function).
petalisp.test-suite/petalisp.utilities.lisp
run-petalisp-test-suite.lisp
(file).
petalisp.test-suite
(system).
wsdeque-test
(function).
petalisp.test-suite/petalisp.core.lisp
petalisp.utilities.lisp
(file).
petalisp.test-suite
(system).
fusion-test
(function).
indices-test
(function).
lazy-map-test
(function).
multiple-arguments
(function).
network-test
(function).
range-test
(function).
reduction-of-fusions
(function).
reduction-test
(function).
reshape-test
(function).
sum-of-pairs
(function).
petalisp.test-suite/petalisp.examples.lisp
petalisp.core.lisp
(file).
petalisp.test-suite
(system).
jacobi-test
(function).
linear-algebra-test
(function).
rbgs-test
(function).
v-cycle-test
(function).
Packages are listed by definition order.
petalisp.core
petalisp.ir
petalisp-user
petalisp.api
petalisp.xmas-backend
petalisp.utilities
petalisp.test-suite
petalisp.karmarkar-karp
petalisp.core
common-lisp
.
*backend*
(special variable).
*lazy-array-lock*
(special variable).
array-has-shape-p
(function).
array-shape
(function).
array-value
(function).
backend
(class).
backend-compute
(generic function).
backend-compute-asynchronously
(generic function).
backend-evaluator
(generic function).
backendp
(generic function).
clear-shape-table
(function).
collapsing-transformation
(function).
compatible-with-lazy-array-p
(function).
compose-transformations
(compiler macro).
compose-transformations
(function).
compute
(function).
compute-asynchronously
(function).
compute-list-of-arrays
(function).
copy-lazy-arrays
(function).
delayed-action
(structure).
delayed-action-inputs
(generic function).
delayed-action-p
(function).
delayed-array
(structure).
delayed-array-p
(function).
delayed-array-storage
(reader).
(setf delayed-array-storage)
(writer).
delayed-failure
(structure).
delayed-failure-condition
(reader).
delayed-failure-p
(function).
delayed-fuse
(structure).
delayed-fuse-inputs
(reader).
(setf delayed-fuse-inputs)
(writer).
delayed-fuse-p
(function).
delayed-map
(structure).
delayed-map-fnrecord
(reader).
(setf delayed-map-fnrecord)
(writer).
delayed-map-inputs
(reader).
(setf delayed-map-inputs)
(writer).
delayed-map-number-of-values
(function).
delayed-map-p
(function).
delayed-multiple-value-map
(structure).
delayed-multiple-value-map-fnrecord
(function).
(setf delayed-multiple-value-map-fnrecord)
(function).
delayed-multiple-value-map-inputs
(function).
(setf delayed-multiple-value-map-inputs)
(function).
delayed-multiple-value-map-p
(function).
delayed-multiple-value-map-refbits
(reader).
(setf delayed-multiple-value-map-refbits)
(writer).
delayed-multiple-value-map-values-ntype
(reader).
delayed-nop
(structure).
delayed-nop-p
(function).
delayed-nth-value
(structure).
delayed-nth-value-input
(reader).
(setf delayed-nth-value-input)
(writer).
delayed-nth-value-number
(reader).
(setf delayed-nth-value-number)
(writer).
delayed-nth-value-p
(function).
delayed-range
(structure).
delayed-range-p
(function).
delayed-reshape
(structure).
delayed-reshape-input
(reader).
(setf delayed-reshape-input)
(writer).
delayed-reshape-p
(function).
delayed-reshape-transformation
(reader).
(setf delayed-reshape-transformation)
(writer).
delayed-unknown
(structure).
delayed-unknown-p
(function).
delayed-wait
(structure).
delayed-wait-delayed-action
(reader).
(setf delayed-wait-delayed-action)
(writer).
delayed-wait-p
(function).
delayed-wait-request
(reader).
delete-backend
(generic function).
empty-lazy-array
(function).
empty-lazy-arrays
(function).
empty-range
(function).
empty-range
(structure).
empty-range-p
(function).
empty-shape-p
(function).
enlarge-shape
(function).
enlarge-transformation
(generic function).
evaluator
(function).
fuse-ranges
(function).
fuse-shapes
(function).
identity-transformation
(function).
identity-transformation
(structure).
identity-transformation-p
(function).
invert-transformation
(generic function).
lazy-array
(function).
lazy-array
(structure).
lazy-array
(slot).
lazy-array
(slot).
lazy-array-delayed-action
(reader).
(setf lazy-array-delayed-action)
(writer).
lazy-array-depth
(reader).
lazy-array-element-type
(function).
lazy-array-from-array
(function).
lazy-array-from-range
(function).
lazy-array-from-scalar
(function).
lazy-array-inputs
(function).
lazy-array-ntype
(reader).
lazy-array-p
(function).
lazy-array-ranges
(function).
lazy-array-rank
(function).
lazy-array-refcount
(reader).
(setf lazy-array-refcount)
(writer).
lazy-array-shape
(reader).
lazy-array-size
(function).
lazy-collapse
(function).
lazy-fuse
(function).
lazy-map
(function).
lazy-multiple-value-map
(function).
lazy-ref
(function).
lazy-reshape
(function).
lazy-unknowns
(function).
make-delayed-array
(function).
make-rank-zero-array
(function).
make-reference-backend
(function).
make-shape
(function).
make-shape-table
(function).
make-transformation
(function).
make-unknown
(function).
map-range
(function).
map-shape
(function).
map-transformation-inputs
(generic function).
map-transformation-outputs
(generic function).
move-axis-to-front
(function).
non-empty-range
(structure).
non-empty-range-p
(function).
normalizing-transformation
(function).
range
(compiler macro).
range
(function).
range
(structure).
range-contains
(function).
range-difference-list
(function).
range-end
(function).
range-equal
(function).
range-intersection
(function).
range-intersectionp
(function).
range-last
(function).
range-size
(reader).
range-start
(reader).
range-step
(reader).
rangep
(function).
remove-shape-table-entry
(function).
request
(class).
request-completedp
(generic function).
request-wait
(generic function).
requestp
(generic function).
shape
(structure).
shape
(slot).
shape
(slot).
shape
(slot).
shape-contains
(function).
shape-designator-shape
(generic function).
shape-difference-list
(function).
shape-dimensions
(function).
shape-intersection
(function).
shape-intersectionp
(function).
shape-range
(function).
shape-ranges
(reader).
shape-rank
(reader).
shape-size
(reader).
shape-table
(structure).
shape-table-p
(function).
shape-table-value
(function).
(setf shape-table-value)
(function).
shape<
(function).
shape=
(function).
shapep
(function).
shrink-shape
(function).
size-one-range-p
(function).
split-range
(function).
split-shape
(function).
subdivide-arrays
(function).
subdivide-shapes
(function).
subrangep
(function).
subshapep
(function).
substitute-delayed-action
(generic function).
substitute-lazy-array
(function).
substitute-lazy-arrays
(function).
transform-axis
(generic function).
transform-lazy-array
(function).
transform-sequence
(generic function).
transform-shape
(generic function).
transformation
(structure).
transformation
(slot).
transformation
(slot).
transformation-input-mask
(reader).
transformation-input-rank
(reader).
transformation-invertiblep
(function).
transformation-offsets
(reader).
transformation-output-mask
(reader).
transformation-output-rank
(reader).
transformation-scalings
(reader).
transformation-similar
(generic function).
transformation=
(generic function).
transformationp
(function).
value-array
(function).
wait
(function).
with-temporary-backend
(macro).
%make-delayed-array
(function).
%make-delayed-fuse
(function).
%make-delayed-map
(function).
%make-delayed-multiple-value-map
(function).
%make-delayed-nth-value
(function).
%make-delayed-reshape
(function).
%make-empty-range
(function).
%make-hairy-transformation
(function).
%make-identity-transformation
(function).
%make-shape
(function).
*backend-compute-recursion*
(special variable).
*substitutions*
(special variable).
*table*
(special variable).
add-transformation-constraints
(function).
backend-stats
(class).
canonicalize-inputs
(function).
canonicalize-outputs
(function).
completed-request
(class).
compose-two-transformations
(generic function).
compute-delayed-array
(function).
copy-delayed-array
(function).
copy-delayed-failure
(function).
copy-delayed-fuse
(function).
copy-delayed-map
(function).
copy-delayed-multiple-value-map
(function).
copy-delayed-nop
(function).
copy-delayed-nth-value
(function).
copy-delayed-range
(function).
copy-delayed-reshape
(function).
copy-delayed-unknown
(function).
copy-delayed-wait
(function).
delayed-action-value
(generic function).
deleted-backend
(class).
empty-range-size
(function).
fragment-difference-list
(function).
fragment-intersections
(function).
from-storage-transformation
(function).
hairy-transformation
(structure).
hairy-transformation-input-mask
(function).
hairy-transformation-input-rank
(function).
hairy-transformation-inverse
(function).
(setf hairy-transformation-inverse)
(function).
hairy-transformation-offsets
(function).
hairy-transformation-output-mask
(function).
hairy-transformation-output-rank
(function).
hairy-transformation-p
(function).
hairy-transformation-scalings
(function).
identity-transformation-input-mask
(function).
identity-transformation-input-rank
(function).
identity-transformation-inverse
(function).
(setf identity-transformation-inverse)
(function).
identity-transformation-offsets
(function).
identity-transformation-output-mask
(function).
identity-transformation-output-rank
(function).
identity-transformation-scalings
(function).
lazy-array-value
(function).
make-delayed-failure
(function).
make-delayed-fuse
(function).
make-delayed-map
(function).
make-delayed-multiple-value-map
(function).
make-delayed-nop
(function).
make-delayed-nth-value
(function).
make-delayed-range
(function).
make-delayed-reshape
(function).
make-delayed-unknown
(function).
make-delayed-wait
(function).
make-lazy-array
(function).
make-non-empty-range
(function).
make-range
(function).
maxdepth
(function).
range-difference-list--contiguous
(function).
range-difference-list--single
(function).
range-intersection-start-end-step
(function).
rank
(type).
reference-backend
(class).
shape-table-ht
(reader).
simplify-array
(function).
size-one-range-removing-transformation
(function).
subdivide-aux
(function).
subtract-fragment-lists
(function).
transformation-inverse
(reader).
(setf transformation-inverse)
(writer).
trivial-lazy-array-p
(generic function).
trivial-lazy-array-value
(generic function).
trivial-object-p
(function).
trivial-object-value
(function).
petalisp.ir
common-lisp
.
petalisp.core
.
*stencil-max-radius*
(special variable).
buffer
(structure).
buffer-bits
(function).
buffer-depth
(reader).
(setf buffer-depth)
(writer).
buffer-ntype
(reader).
(setf buffer-ntype)
(writer).
buffer-number
(reader).
(setf buffer-number)
(writer).
buffer-number-of-inputs
(function).
buffer-number-of-loads
(function).
buffer-number-of-outputs
(function).
buffer-number-of-stores
(function).
buffer-program
(function).
buffer-reuse-potential
(function).
buffer-shape
(reader).
(setf buffer-shape)
(writer).
buffer-size
(function).
buffer-storage
(reader).
(setf buffer-storage)
(writer).
buffer-task
(reader).
(setf buffer-task)
(writer).
bufferp
(function).
call-instruction
(structure).
call-instruction-fnrecord
(reader).
(setf call-instruction-fnrecord)
(writer).
call-instruction-function
(function).
call-instruction-p
(function).
check-ir
(function).
chunk
(structure).
chunk-bits
(function).
chunk-buffer
(reader).
chunk-infants
(function).
chunk-parent
(reader).
chunk-primogenitor
(function).
chunk-shape
(reader).
chunk-split
(reader).
(setf chunk-split)
(writer).
chunk-writers
(reader).
(setf chunk-writers)
(writer).
chunkp
(function).
compute-chunk-vicinity
(function).
compute-program-buffer-coloring
(function).
compute-program-primogenitor-chunk-vector
(function).
compute-stencil-center
(function).
core
(class).
core-memory
(generic reader).
core-name
(generic reader).
device
(class).
device-cores
(generic function).
device-memory
(generic reader).
device-name
(generic reader).
do-buffer-inputs
(macro).
do-buffer-load-instructions
(macro).
do-buffer-outputs
(macro).
do-buffer-store-instructions
(macro).
do-instruction-inputs
(macro).
do-kernel-inputs
(macro).
do-kernel-instructions
(macro).
do-kernel-load-instructions
(macro).
do-kernel-outputs
(macro).
do-kernel-stencils
(macro).
do-kernel-store-instructions
(macro).
do-program-buffer-groups
(macro).
do-program-buffers
(macro).
do-program-kernels
(macro).
do-program-tasks
(macro).
do-stencil-load-instructions
(macro).
do-task-defined-buffers
(macro).
do-task-kernels
(macro).
do-task-predecessors
(macro).
do-task-successors
(macro).
ensure-array-buffer-compatibility
(function).
host-device
(function).
instruction
(structure).
instruction-inputs
(reader).
(setf instruction-inputs)
(writer).
instruction-number
(reader).
(setf instruction-number)
(writer).
instruction-transformation
(reader).
(setf instruction-transformation)
(writer).
instructionp
(function).
interior-buffer-p
(function).
interpret-kernel
(function).
ir-from-lazy-arrays
(function).
iref-instruction
(structure).
iref-instruction-p
(function).
iref-instruction-transformation
(function).
(setf iref-instruction-transformation)
(function).
iterating-instruction
(structure).
iterating-instruction-p
(function).
kernel
(structure).
kernel
(slot).
kernel-blueprint
(function).
kernel-cost
(function).
kernel-instruction-vector
(reader).
(setf kernel-instruction-vector)
(writer).
kernel-iteration-space
(reader).
(setf kernel-iteration-space)
(writer).
kernel-number
(reader).
(setf kernel-number)
(writer).
kernel-number-of-inputs
(function).
kernel-number-of-loads
(function).
kernel-number-of-outputs
(function).
kernel-number-of-stores
(function).
kernel-program
(function).
kernel-reuse-potential
(function).
kernel-stencils
(function).
kernel-task
(reader).
(setf kernel-task)
(writer).
kernelp
(function).
leaf-buffer-p
(function).
load-instruction
(structure).
load-instruction-buffer
(reader).
(setf load-instruction-buffer)
(writer).
load-instruction-p
(function).
load-instruction-transformation
(function).
(setf load-instruction-transformation)
(function).
make-buffer
(function).
make-buffer-like-array
(function).
make-ir-backend
(function).
make-kernel
(function).
make-program
(function).
make-stencil
(function).
make-task
(function).
map-buffer-inputs
(function).
map-buffer-load-instructions
(function).
map-buffer-outputs
(function).
map-buffer-store-instructions
(function).
map-buffers
(function).
map-buffers-and-kernels
(function).
map-instruction-inputs
(function).
map-kernel-inputs
(function).
map-kernel-instructions
(function).
map-kernel-load-instructions
(function).
map-kernel-outputs
(function).
map-kernel-stencils
(function).
map-kernel-store-instructions
(function).
map-kernels
(function).
map-program-buffer-groups
(function).
map-program-buffers
(function).
map-program-kernels
(function).
map-program-tasks
(function).
map-stencil-load-instructions
(function).
map-task-defined-buffers
(function).
map-task-kernels
(function).
map-task-predecessors
(function).
map-task-successors
(function).
memory
(class).
memory-bandwidth
(generic reader).
memory-children
(generic reader).
memory-cores
(generic reader).
memory-granularity
(generic reader).
memory-latency
(generic reader).
memory-name
(generic reader).
memory-parent
(generic reader).
memory-parent-bandwidth
(generic reader).
memory-size
(generic reader).
partition-chunks
(function).
program
(structure).
program-buffer
(function).
program-final-task
(reader).
(setf program-final-task)
(writer).
program-from-lazy-arrays
(function).
program-initial-task
(reader).
(setf program-initial-task)
(writer).
program-kernel
(function).
program-leaf-alist
(reader).
(setf program-leaf-alist)
(writer).
program-number-of-buffers
(reader).
(setf program-number-of-buffers)
(writer).
program-number-of-kernels
(reader).
(setf program-number-of-kernels)
(writer).
program-number-of-tasks
(function).
program-root-buffers
(reader).
(setf program-root-buffers)
(writer).
program-task-vector
(reader).
(setf program-task-vector)
(writer).
programp
(function).
reuse-optimizing-transformation
(function).
root-buffer-p
(function).
split
(structure).
split-axis
(reader).
split-left-child
(reader).
split-parent
(reader).
split-position
(function).
split-right-child
(reader).
splitp
(function).
stencil
(structure).
stencil-buffer
(function).
stencil-center
(reader).
(setf stencil-center)
(writer).
stencil-from-load-instruction
(function).
stencil-input-rank
(function).
stencil-load-instructions
(reader).
(setf stencil-load-instructions)
(writer).
stencil-output-mask
(function).
stencil-output-rank
(function).
stencil-scalings
(function).
stencilp
(function).
store-instruction
(structure).
store-instruction-buffer
(reader).
(setf store-instruction-buffer)
(writer).
store-instruction-p
(function).
store-instruction-transformation
(function).
(setf store-instruction-transformation)
(function).
task
(structure).
task-number
(reader).
(setf task-number)
(writer).
task-program
(reader).
(setf task-program)
(writer).
taskp
(function).
translate-blueprint
(function).
vicinity
(structure).
vicinity-left-neighbors
(function).
vicinity-right-neighbors
(function).
vicinityp
(function).
%make-dendrite
(function).
%make-load-instruction
(function).
%make-stencil
(function).
%make-store-instruction
(function).
*buffer-chunk*
(special variable).
*buffer-ghostspec-table*
(special variable).
*chunk-pqueue*
(special variable).
*chunk-split-max-redundancy*
(special variable).
*chunk-split-min-priority*
(special variable).
*chunk-split-priority*
(special variable).
*chunks*
(special variable).
*index-proxies*
(special variable).
*instruction-table*
(special variable).
*instruction-tables*
(special variable).
*instructions*
(special variable).
*ir-checker-table*
(special variable).
*ir-checker-worklist*
(special variable).
*ir-converter*
(special variable).
*nodes*
(special variable).
*prune*
(special variable).
*rproxies-vector*
(special variable).
*source-array-proxies*
(special variable).
*source-index-proxies-vector*
(special variable).
*source-stride-proxies-vector*
(special variable).
*suffix-factors*
(special variable).
*target-array-proxies*
(special variable).
*target-index-proxies-vector*
(special variable).
*target-stride-proxies-vector*
(special variable).
*unpropagated-splits*
(special variable).
*worklist*
(special variable).
attempt-split
(function).
bind
(macro).
buffer-chunk
(function).
buffer-dendrites
(macro).
buffer-ghostspec
(function).
buffer-readers
(reader).
(setf buffer-readers)
(writer).
buffer-writers
(reader).
(setf buffer-writers)
(writer).
call-instruction-inputs
(function).
(setf call-instruction-inputs)
(function).
call-instruction-number
(function).
(setf call-instruction-number)
(function).
call-instruction-number-of-values
(reader).
(setf call-instruction-number-of-values)
(writer).
check-ir-node
(generic function).
check-ir-node-eventually
(function).
check-reverse-link
(function).
chunk-chains
(function).
chunk-domain
(reader).
chunk-split-axis
(function).
chunk-split-priority
(function).
chunk-split-priority-cache
(reader).
(setf chunk-split-priority-cache)
(writer).
clone-reference
(generic function).
cluster
(structure).
cluster-dendrites
(reader).
(setf cluster-dendrites)
(writer).
cluster-lazy-array
(reader).
(setf cluster-lazy-array)
(writer).
cluster-ntype
(function).
cluster-p
(function).
cluster-shape
(function).
collect-prune-buffer-dendrites-alist
(function).
compute-buffer-ghostspec
(function).
compute-chunk-shape
(function).
constant-proxy
(compiler macro).
constant-proxy
(function).
convert-cluster
(generic function).
copy-buffer
(function).
copy-chunk
(function).
copy-cluster
(function).
copy-dendrite
(function).
copy-ghostspec
(function).
copy-ir-converter
(function).
copy-kernel
(function).
copy-node
(function).
copy-program
(function).
copy-proxy
(function).
copy-prune
(function).
copy-split
(function).
copy-stem
(function).
copy-task
(function).
copy-vicinity
(function).
count-mapped-elements
(function).
delete-kernel
(function).
dendrite
(structure).
dendrite-cluster
(function).
dendrite-cons
(reader).
(setf dendrite-cons)
(writer).
dendrite-depth
(reader).
(setf dendrite-depth)
(writer).
dendrite-kernel
(function).
dendrite-p
(function).
dendrite-shape
(reader).
(setf dendrite-shape)
(writer).
dendrite-stem
(reader).
(setf dendrite-stem)
(writer).
dendrite-transformation
(reader).
(setf dendrite-transformation)
(writer).
dendrite-validp
(function).
dendrite-value-n
(function).
destructure-transformoid
(function).
device-number-of-cores
(generic reader).
differs-exactly-at
(function).
duplicates
(function).
enqueue-chunk
(function).
ensure-buffer-task
(function).
ensure-cluster
(function).
ensure-instruction-clone
(macro).
ensure-instruction-table
(function).
ensure-node
(function).
ensure-proxy
(function).
ensure-tasks
(function).
event-horizon
(function).
execute-node
(function).
fallback-host-device
(function).
finalize-buffer
(function).
finalize-ir
(function).
finalize-kernel
(function).
find-most-specific-target-chunk
(function).
find-prune
(function).
fnrecord-blueprint
(function).
ghostspec
(structure).
ghostspec-left-padding
(function).
ghostspec-left-padding-vec
(reader).
ghostspec-right-padding
(function).
ghostspec-right-padding-vec
(reader).
ghostspecp
(function).
grow-dendrite
(function).
grow-dendrite-aux
(generic function).
index-*
(compiler macro).
index-*
(function).
index-+
(compiler macro).
index-+
(function).
insert-copy-kernel
(function).
instruction-blueprint
(generic function).
instruction-blueprints
(function).
instruction-number-of-values
(generic function).
ir-backend
(class).
ir-backend-compile-cache
(generic reader).
ir-backend-mode
(generic reader).
ir-converter
(structure).
ir-converter-array-table
(reader).
(setf ir-converter-array-table)
(writer).
ir-converter-buffer-dendrites-table
(reader).
(setf ir-converter-buffer-dendrites-table)
(writer).
ir-converter-cluster-table
(reader).
(setf ir-converter-cluster-table)
(writer).
ir-converter-cons-updates
(reader).
(setf ir-converter-cons-updates)
(writer).
ir-converter-empty-p
(function).
ir-converter-kernel-size-threshold
(reader).
ir-converter-leaf-alist
(reader).
(setf ir-converter-leaf-alist)
(writer).
ir-converter-next-cluster
(function).
ir-converter-p
(function).
ir-converter-potentially-superfluous-buffers
(reader).
(setf ir-converter-potentially-superfluous-buffers)
(writer).
ir-converter-pqueue
(reader).
(setf ir-converter-pqueue)
(writer).
ir-converter-scalar-table
(reader).
(setf ir-converter-scalar-table)
(writer).
ir-converter-unknown-table
(reader).
(setf ir-converter-unknown-table)
(writer).
iref-instruction-inputs
(function).
(setf iref-instruction-inputs)
(function).
iref-instruction-number
(function).
(setf iref-instruction-number)
(function).
iteration-space-blueprint
(function).
kernel-data
(reader).
(setf kernel-data)
(writer).
kernel-highest-instruction-number
(function).
kernel-sources
(reader).
(setf kernel-sources)
(writer).
kernel-targets
(reader).
(setf kernel-targets)
(writer).
linux-host-device
(function).
load-instruction-inputs
(function).
(setf load-instruction-inputs)
(function).
load-instruction-number
(function).
(setf load-instruction-number)
(function).
make-call-instruction
(function).
make-chunk
(function).
make-cluster
(function).
make-dendrite
(function).
make-gensym-vector
(function).
make-ghostspec
(function).
make-index-proxy-vector
(function).
make-ir-converter
(function).
make-iref-instruction
(function).
make-load-instruction
(function).
make-node
(function).
make-proxy
(function).
make-prune
(function).
make-split
(function).
make-stem
(function).
make-store-instruction
(function).
make-substitute-kernel
(function).
make-vicinity
(function).
maxf
(macro).
maybe-prune
(function).
memory-children-slot
(generic reader).
(setf memory-children-slot)
(generic writer).
memory-cores-slot
(generic reader).
(setf memory-cores-slot)
(generic writer).
mergeable-dendrites-p
(function).
meta-funcall
(function).
meta-index-*
(function).
meta-index-+
(function).
next-chunk
(function).
next-chunk-p
(function).
node
(structure).
node-dependencies
(reader).
(setf node-dependencies)
(writer).
node-fn
(reader).
(setf node-fn)
(writer).
node-kernel
(reader).
(setf node-kernel)
(writer).
node-p
(function).
node-users
(reader).
(setf node-users)
(writer).
parse-cache-type
(function).
parse-integer-set
(function).
parse-size
(function).
partition-dendrites
(function).
potentially-superfluous-buffer-p
(function).
propagate-split/determine-child-writers
(function).
proxy
(structure).
proxy-binding
(function).
proxy-expr
(reader).
proxy-level
(reader).
proxy-p
(function).
proxy-ref
(function).
proxy-type
(reader).
proxy-value
(function).
proxy-values
(reader).
prune
(structure).
prune-bits
(reader).
prune-buffers
(reader).
prune-p
(function).
prune-superfluous-buffers
(function).
recompute-kernel-instruction-vector
(function).
recompute-program-task-vector
(function).
reference-to-delayed-unknown
(function).
relative-position
(function).
reverse-transform-axis-and-position
(function).
select-masked-elements
(function).
simplify-input
(function).
source-blueprint
(function).
source-blueprints
(function).
stem
(structure).
stem-buffers
(reader).
(setf stem-buffers)
(writer).
stem-cluster
(reader).
(setf stem-cluster)
(writer).
stem-kernel
(reader).
(setf stem-kernel)
(writer).
stem-p
(function).
stem-validp
(reader).
(setf stem-validp)
(writer).
store-instruction-input
(function).
store-instruction-inputs
(function).
(setf store-instruction-inputs)
(function).
store-instruction-number
(function).
(setf store-instruction-number)
(function).
suffix-factor
(function).
target-blueprint
(function).
target-blueprints
(function).
task-defined-buffers
(reader).
(setf task-defined-buffers)
(writer).
task-kernels
(reader).
(setf task-kernels)
(writer).
task-predecessors
(reader).
(setf task-predecessors)
(writer).
task-successors
(reader).
(setf task-successors)
(writer).
transform-axis-and-position
(function).
transform-buffer
(function).
transform-instruction-input
(generic function).
transform-instruction-output
(generic function).
transform-kernel
(function).
transformation-blueprint
(function).
translate-array-info
(function).
translate-instruction
(function).
translate-iteration-space
(function).
value-blueprint
(function).
vicinity-left-neighbors-vec
(reader).
vicinity-right-neighbors-vec
(reader).
with-unsafe-optimizations
(macro).
with-unsafe-optimizations*
(macro).
without-compiler-notes
(macro).
petalisp.api
petalisp
common-lisp
.
petalisp.core
.
petalisp-user
.
petalisp.examples.image-processing
.
petalisp.examples.iterative-methods
.
petalisp.examples.linear-algebra
.
petalisp.examples.machine-learning
.
petalisp.examples.mnist
.
petalisp.examples.wave-equation
.
petalisp.test-suite
.
call-network
(function).
define-shape-syntax
(macro).
differentiator
(function).
lazy
(function).
lazy-allreduce
(function).
lazy-array-indices
(function).
lazy-array-interior
(function).
lazy-broadcast-arrays
(function).
lazy-broadcast-list-of-arrays
(function).
lazy-broadcast-to
(function).
lazy-drop-axes
(function).
lazy-flatten
(function).
lazy-multiple-value
(function).
lazy-overwrite
(function).
lazy-reduce
(function).
lazy-shape-indices
(function).
lazy-slice
(function).
lazy-slices
(function).
lazy-stack
(function).
make-network
(function).
network
(class).
network-outputs
(generic reader).
network-parameters
(generic reader).
shape-interior
(function).
transform
(macro).
vectorize
(function).
~
(constant).
~
(function).
~l
(constant).
~l
(function).
~r
(constant).
~r
(function).
~s
(constant).
~s
(function).
*alphabet*
(special variable).
*free-variables*
(special variable).
*shape-syntax*
(special variable).
ad-record
(structure).
ad-record-alist
(reader).
(setf ad-record-alist)
(writer).
ad-record-input-gradient
(function).
ad-record-input-gradient-cache
(macro).
ad-record-input-gradient-caches
(reader).
(setf ad-record-input-gradient-caches)
(writer).
ad-record-lazy-array
(reader).
ad-record-output-gradient
(function).
ad-record-output-gradient-cache
(reader).
(setf ad-record-output-gradient-cache)
(writer).
broadcast-ranges
(function).
canonicalize-transform-input
(function).
change-shape
(function).
change-shape/normalized
(function).
coerce-to-ntype
(function).
compute-transform-input-mask
(function).
compute-transform-output-functions
(function).
ensure-shape-syntax
(function).
expand-transform
(function).
factorize-shape
(function).
find-shape-syntax
(function).
find-shape-syntax-no-error
(function).
free-variables
(function).
input-gradient
(generic function).
insert-axis-after
(function).
insert-axis-before
(function).
lazy-reduce-aux
(function).
lazy-reshape-using-shape
(function).
listify-range-for-printing
(function).
listify-shape-for-printing
(function).
make-ad-record
(function).
make-broadcast-transformation
(function).
make-shape-syntax
(function).
make-shape-transformation
(function).
make-transform-transformation
(function).
network-evaluator
(generic reader).
parse-shape
(function).
parse-shape-pattern
(function).
parse-transform-inputs
(function).
parse-transform-output
(function).
parse-transform-outputs
(function).
register-free-variable
(function).
remove-axis-after
(function).
remove-axis-before
(function).
reshape/flatten
(function).
reshape/unflatten
(function).
shape-syntax
(structure).
shape-syntax-constructor-parser
(reader).
(setf shape-syntax-constructor-parser)
(writer).
shape-syntax-delimiter
(reader).
(setf shape-syntax-delimiter)
(writer).
shape-syntax-delimiter
(type).
shape-syntax-delimiter-p
(function).
shape-syntax-p
(function).
shape-syntax-pattern-parser
(reader).
(setf shape-syntax-pattern-parser)
(writer).
sum-axis
(function).
transformation-input-symbol
(function).
petalisp.xmas-backend
common-lisp
.
petalisp.core
.
petalisp.ir
.
make-xmas-backend
(function).
%make-worker
(function).
%make-worker-pool
(function).
*min-per-thread-cost*
(special variable).
*worker*
(special variable).
allocate-buffer
(function).
allocator-and-deallocator
(function).
argument-processor
(function).
argument-variables
(function).
atomic-counter
(type).
barrier
(function).
bind-buffer
(function).
compile-kernel
(function).
copy-memory-pool
(function).
copy-subtask
(function).
evaluator-template
(function).
evaluator-template-arguments
(function).
execute-schedule
(function).
generate-variable
(function).
make-memory-pool
(function).
make-subtask
(function).
make-worker-pool
(function).
map-partitioned-iteration-space
(function).
memory-pool
(structure).
memory-pool-allocate
(function).
memory-pool-free
(function).
memory-pool-ntype-allocator-vector
(reader).
memory-pool-p
(function).
memory-pool-weak-pointer-list
(macro).
message
(function).
result-processor
(function).
result-variables
(function).
runner
(function).
start-worker
(function).
subtask
(structure).
subtask-cost
(reader).
(setf subtask-cost)
(writer).
subtask-fn
(reader).
(setf subtask-fn)
(writer).
subtask-iteration-space
(reader).
(setf subtask-iteration-space)
(writer).
subtask-kernel
(reader).
(setf subtask-kernel)
(writer).
subtask-p
(function).
worker
(function).
worker
(structure).
worker-barrier-sense
(reader).
(setf worker-barrier-sense)
(writer).
worker-enqueue
(function).
worker-id
(reader).
worker-id
(type).
worker-pool
(structure).
worker-pool-barrier-countdown
(reader).
(setf worker-pool-barrier-countdown)
(writer).
worker-pool-barrier-sense
(reader).
(setf worker-pool-barrier-sense)
(writer).
worker-pool-p
(function).
worker-pool-size
(function).
worker-pool-worker
(function).
worker-pool-workers
(reader).
worker-queue
(reader).
(setf worker-queue)
(writer).
worker-serious-conditions
(reader).
(setf worker-serious-conditions)
(writer).
worker-thread
(reader).
(setf worker-thread)
(writer).
worker-worker-pool
(reader).
workerp
(function).
xmas-backend
(class).
xmas-backend-compile-cache
(generic reader).
xmas-backend-memory-pool
(generic reader).
xmas-backend-number-of-threads
(function).
xmas-backend-worker-pool
(generic reader).
petalisp.utilities
common-lisp
.
cgraph-add-conflict
(function).
cgraph-coloring
(function).
cgraph-ensure-cnode
(function).
defalias
(macro).
define-bitfield
(macro).
document-compiler-macro
(macro).
document-compiler-macros
(macro).
document-function
(macro).
document-functions
(macro).
document-method-combination
(macro).
document-method-combinations
(macro).
document-setf-expander
(macro).
document-setf-expanders
(macro).
document-structure
(macro).
document-structures
(macro).
document-variable
(macro).
document-variables
(macro).
extended-euclid
(function).
identical
(function).
karmarkar-karp
(function).
make-cgraph
(function).
make-queue
(function).
make-weak-set
(function).
make-wsdeque
(function).
map-weak-set
(function).
number-of-cpus
(function).
prime-factors
(function).
primep
(function).
queue
(structure).
queue-dequeue
(function).
queue-enqueue
(function).
queuep
(function).
topological-sort
(function).
weak-set
(structure).
weak-set-add
(function).
weak-set-p
(function).
weak-set-size
(function).
with-collectors
(macro).
with-hash-table-memoization
(macro).
with-memoization
(macro).
with-multiple-value-hash-table-memoization
(macro).
with-multiple-value-memoization
(macro).
with-multiple-value-vector-memoization
(macro).
with-pinned-objects
(macro).
with-vector-memoization
(macro).
wsdeque
(structure).
wsdeque-pop
(function).
wsdeque-push
(function).
wsdeque-steal
(function).
wsdequep
(function).
*bitfield-name*
(special variable).
*bitfield-position*
(special variable).
+bitfield-max-bits+
(constant).
+empty+
(constant).
+empty-colorset+
(constant).
+table-of-primes+
(constant).
bitfield-boolean-slot
(class).
bitfield-signed-byte-slot
(class).
bitfield-slot
(class).
bitfield-slot-end
(generic reader).
bitfield-slot-initform
(generic function).
bitfield-slot-name
(generic reader).
bitfield-slot-pack
(generic function).
bitfield-slot-reader
(generic reader).
bitfield-slot-size
(generic function).
bitfield-slot-start
(generic reader).
bitfield-slot-unpack
(generic function).
bitfield-unsigned-byte-slot
(class).
build-documentation
(function).
cgraph
(structure).
cgraph-p
(function).
cgraph-table
(reader).
(setf cgraph-table)
(writer).
circular-array
(structure).
circular-array-elt
(function).
(setf circular-array-elt)
(function).
circular-array-grow
(function).
circular-array-log-size
(reader).
(setf circular-array-log-size)
(writer).
circular-array-p
(function).
circular-array-segment
(reader).
(setf circular-array-segment)
(writer).
circular-array-size
(function).
cleanup-weak-set
(function).
clp2
(function).
clp2-fixnum
(type).
cnode
(structure).
cnode-color
(reader).
(setf cnode-color)
(writer).
cnode-colorset
(reader).
(setf cnode-colorset)
(writer).
cnode-degree
(reader).
(setf cnode-degree)
(writer).
cnode-neighbors
(reader).
(setf cnode-neighbors)
(writer).
cnode-object
(reader).
cnode-p
(function).
cnode-queue-node
(reader).
(setf cnode-queue-node)
(writer).
cnode-saturation
(reader).
(setf cnode-saturation)
(writer).
cnode>
(function).
color
(type).
colorset
(type).
colorset-add
(function).
colorset-contains
(function).
colorset-next-free-color
(function).
colorset-union
(function).
copy-cgraph
(function).
copy-cnode
(function).
document-type
(macro).
document-types
(macro).
ensure-alias
(function).
ensure-documentation
(function).
expand-documentation
(macro).
flp2
(function).
make-circular-array
(function).
make-cnode
(function).
make-table-of-primes
(function).
nth-prime-max-bits
(function).
nth-prime-upper-bound
(function).
parse-bitfield-slot
(function).
queue-h-lock
(reader).
(setf queue-h-lock)
(writer).
queue-head
(reader).
(setf queue-head)
(writer).
queue-t-lock
(reader).
(setf queue-t-lock)
(writer).
queue-tail
(reader).
(setf queue-tail)
(writer).
small-fixnum
(type).
small-non-negative-fixnum
(type).
touch
(function).
weak-set-max-size
(reader).
weak-set-min-size
(reader).
weak-set-pointers
(reader).
(setf weak-set-pointers)
(writer).
weak-set-test
(reader).
with-collector
(macro).
wsdeque-bottom
(reader).
(setf wsdeque-bottom)
(writer).
wsdeque-circular-array
(reader).
(setf wsdeque-circular-array)
(writer).
wsdeque-lock
(reader).
(setf wsdeque-lock)
(writer).
wsdeque-top
(reader).
(setf wsdeque-top)
(writer).
petalisp.test-suite
common-lisp
.
petalisp.api
.
petalisp.core
.
petalisp.examples.iterative-methods
.
petalisp.examples.linear-algebra
.
all-tests
(function).
check-package
(function).
define-test
(macro).
is
(macro).
make-testing-backend
(function).
run-petalisp-test-suite
(function).
run-tests
(function).
signals
(macro).
*check-count*
(special variable).
*failed-random-state*
(special variable).
*pass-count*
(special variable).
*test-count*
(special variable).
*tests*
(special variable).
approximately-equal
(generic function).
call-with-random-state
(function).
call-with-test-harness
(function).
call-with-testing-backend
(function).
class-name-p
(function).
compare-solutions
(function).
defgenerator
(macro).
defgeneric-name-p
(function).
define-float-generator
(macro).
defun-name-p
(function).
defwrapper
(macro).
enter-test
(function).
expect-condition
(function).
fusion-test
(function).
generate-double-float
(function).
generate-integer
(function).
generate-lazy-array
(function).
generate-long-float
(function).
generate-matrix
(function).
generate-range
(function).
generate-shape
(function).
generate-short-float
(function).
generate-single-float
(function).
indices-test
(function).
ir-backend-compiled
(generic reader).
ir-backend-interpreted
(generic reader).
jacobi-test
(function).
lazy-map-test
(function).
linear-algebra-test
(function).
macro-name-p
(function).
make-double-float-generator
(function).
make-integer-generator
(function).
make-lazy-array-generator
(function).
make-long-float-generator
(function).
make-matrix-generator
(function).
make-range-generator
(function).
make-shape-generator
(function).
make-short-float-generator
(function).
make-single-float-generator
(function).
multiple-arguments
(function).
ndarray
(function).
network-test
(function).
parse-defwrapper-lambda-list
(function).
pass
(function).
print-package-statistics
(function).
print-platform-information
(function).
print-system-statistics
(function).
range-test
(function).
rbgs-test
(function).
reduction-of-fusions
(function).
reduction-test
(function).
reference-backend
(generic reader).
report
(function).
reshape-randomly
(function).
reshape-test
(function).
sum-of-pairs
(function).
symbol-defined-p
(function).
symbol-methods
(function).
system-git-revision
(function).
system-source-file-pathnames
(function).
testing-backend
(class).
type-specifier-p
(function).
v-cycle-test
(function).
with-random-state
(macro).
with-test-harness
(macro).
with-testing-backend
(macro).
wsdeque-test
(function).
xmas-backend
(generic reader).
petalisp.karmarkar-karp
common-lisp
.
petalisp.utilities
.
*k*
(special variable).
*weight*
(special variable).
combine-subsets
(function).
combine-tuples
(function).
copy-subset
(function).
copy-tuple
(function).
make-subset
(function).
make-tuple
(function).
subset
(structure).
subset-elements
(reader).
(setf subset-elements)
(writer).
subset-p
(function).
subset-weight
(reader).
(setf subset-weight)
(writer).
tuple
(structure).
tuple-from-object
(function).
tuple-p
(function).
tuple-subset
(function).
tuple-subsets
(reader).
(setf tuple-subsets)
(writer).
tuple-weight
(reader).
(setf tuple-weight)
(writer).
tuple>
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
The symbols ~, ~l, ~s and ~r are self-evaluating. Their only purpose is to separate range designators in the functions named ~, ~l, ~s and ~r.
The symbols ~, ~l, ~s and ~r are self-evaluating. Their only purpose is to separate range designators in the functions named ~, ~l, ~s and ~r.
The symbols ~, ~l, ~s and ~r are self-evaluating. Their only purpose is to separate range designators in the functions named ~, ~l, ~s and ~r.
The symbols ~, ~l, ~s and ~r are self-evaluating. Their only purpose is to separate range designators in the functions named ~, ~l, ~s and ~r.
Defines an efficient collection of booleans and small integers.
For a supplied bitfield name NAME, and for some slot definitions of the
form (SLOT-NAME TYPE), this macro defines the following functions:
1. A constructor named MAKE-{NAME}, that takes one keyword argument per
SLOT-NAME, similar to the default constructor generated by DEFSTRUCT.
It returns a bitfield whose entries have the values indicated by the
keyword arguments, or a reasonable default (NIL for booleans, 0 for
numbers).
2. A clone operation named CLONE-{NAME}, that takes an existing bitfield
and one keyword argument per SLOT-NAME. It returns a copy of the
existing bitfield, but where each supplied keyword argument supersedes
the value of the corresponding slot.
3. A reader function named {NAME}-{SLOT-NAME} for each slot.
In addition to these functions, NAME is defined as a suitable subtype
of (and unsigned-byte fixnum).
Currently this macro supports boolean, unsigned-byte and signed-byte slots.
Example:
(define-bitfield examplebits
(a boolean)
(b boolean)
(c boolean)
(x (signed-byte 5))
(id (unsigned-byte 16)))
(defparameter *a*
(make-examplebits :a nil :b t :id 42))
(list
(examplebits-a *a*)
(examplebits-b *a*)
(examplebits-c *a*)
(examplebits-x *a*)
(examplebits-id *a*))
;; Returns (NIL T NIL 0 42)
(defparameter *b*
(clone-examplebits *a* :c t :x -2))
(list
(examplebits-a *b*)
(examplebits-b *b*)
(examplebits-c *b*)
(examplebits-x *b*)
(examplebits-id *b*))
;; Returns (NIL T T -2 42)
Define a test function and add it to *TESTS*.
Assert that TEST-FORM evaluates to true.
Assert that ‘body’ signals a condition of type ‘condition’.
Creates a transformation that maps some inputs to the specified outputs.
The syntax is (transform INPUT-1 ... INPUT-N to OUTPUT-1 OUTPUT-N).
Each input can either be a variable, an integer, or a list whose first
element is a variable and whose second element is a form that evaluates
to an integer.
Each output is a form that may reference up to one of the input variables.
The result of an output form in a context where the referenced input
variable is bound to an integer must be an integer. The mapping form the
input to the output must be 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)
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)
Memoize the value of BODY. If KEY is found in HASH-TABLE, BODY is not
evaluated and the corresponding value is returned. Otherwise, BODY is
evaluated and its values are first stored as the HASH-TABLE entry of KEY
and then returned.
If the optional form STORE-KEY is supplied, it is evaluated after any evaluation of BODY and its value is used instead of KEY for storing the results. This way, KEY can be an object with dynamic extent (to avoid consing) and STORE-KEY can create a copy with indefinite extent when necessary.
Memoize the value of BODY. If KEY has the same value (with respect to
TEST) as some previously computed key, then BODY is not evaluated and the
values of the previous computation are returned.
Note: TEST is evaluated at load time in a null lexical environment and must
be a valid hash table test designator.
If the optional form STORE-KEY is supplied, it is evaluated after any evaluation of BODY and its value is used instead of KEY for storing the results. This way, KEY can be an object with dynamic extent (to avoid consing) and STORE-KEY can create a copy with indefinite extent when necessary.
Memoize the multiple values of BODY. If KEY is found in HASH-TABLE,
BODY is not evaluated and the values of the previous computation are
returned. Otherwise, BODY is evaluated and its values are first stored at
KEY in HASH-TABLE and then returned.
If the optional form STORE-KEY is supplied, it is evaluated after any evaluation of BODY and its value is used instead of KEY for storing the results. This way, KEY can be an object with dynamic extent (to avoid consing) and STORE-KEY can create a copy with indefinite extent when necessary.
Memoize the multiple values of BODY. If KEY has the same value (with
respect to TEST) as some previously computed key, then BODY is not
evaluated and the values of the previous computation are returned.
Note: TEST is evaluated at load time in a null lexical environment and must
be a suitable hash table test.
If the optional form STORE-KEY is supplied, it is evaluated after any evaluation of BODY and its value is used instead of KEY for storing the results. This way, KEY can be an object with dynamic extent (to avoid consing) and STORE-KEY can create a copy with indefinite extent when necessary.
Memoize the values of BODY for VAR being a relatively small integer.
Memoize the value of BODY for KEY being a relatively small integer.
task
.
For a supplied conflict graph, returns a vector whose elements are lists of objects with no conflicts.
An infant is a chunk without a split. This function returns the list of infants whose line of ancestry contains the supplied CHUNK.
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 (* 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))
Returns, as multiple values, the computed result of each supplied
argument.
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 (lazy #’+ 2 #(3 4)))
=> #(5 6)
(compute (lazy-reshape #2A((1 2) (3 4)) (transform i j to j i)))
=> #2A((1 3) (2 4))
(compute 2 #0A3 #(4))
=> 2
=> 3
=> #(4)
Hints that it would be worthwhile to compute the supplied arrays
asynchronously. Returns an opaque object that can be supplied to WAIT to
wait until the scheduled operation has been performed.
This function allows speeding up certain programs like
(progn (run-expensive-task)
(compute array-1 array-2))
by rewriting them to something like
(progn (compute-asynchronously array-1 array-2)
(run-expensive-task)
(compute array-1 array-2)).
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))
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.
Returns a vector whose Nth entry is the primogenitor chunk corresponding to the buffer with number N.
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.
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)
Given nonnegative integers u and v, returns the values u1 and u3 such that u*u1 + v*u2 = u3 = gcd(u,v).
Check whether the KEYs of SEQUENCE are identical with respect to TEST.
Returns an identity transformation of the specified rank.
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.
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.
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.
task
.
Returns one or more lazy arrays, whose contents are the values returned
by the supplied function when applied 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 BROADCAST-ARRAYS.
Examples:
(lazy #’+ #(1 2) #(3 4))
=> #<lazy-array number (~ 2)>
(compute (lazy #’+ 2 3))
=> 5
(compute (lazy #’+ 2 #(1 2 3 4 5)))
=> #(3 4 5 6 7)
(compute (lazy #’* #(2 3) #2A((1 2) (3 4))))
=> #2A((2 6) (6 12))
(compute (lazy #’floor 7.5))
=> 7
(compute (lazy #’floor 7.5 #(1 2 3 4 5)))
=> #(7 3 2 1 1)
Returns a lazy array of integers of the shape of ARRAY, where each array
element at index (i_0 ... i_N) has the value i_AXIS. If AXIS is not
supplied, it defaults to zero.
Examples:
(compute (lazy-array-indices #2A((1 2) (3 4))))
=> #2A((0 0) (1 1))
(compute (lazy-array-indices #2A((1 2) (3 4)) 1))
=> #2A((0 1) (0 1))
(compute (lazy-array-indices abc))
=> #(0 1 2)
For a given ARRAY and WIDTH, return a new, lazy array with those
elements that are at least WIDTH entries away from any boundary. If not
supplied, WIDTH defaults to one.
Examples:
(compute (lazy-array-interior #2A((1 2 3 4) (5 6 7 8) (1 2 3 4) (5 6 7 8))))
=> #2A((6 7) (2 3))
(compute (lazy-array-interior #2A((1 2 3 4) (5 6 7 8) (1 2 3 4) (5 6 7 8)) 2)) >> type-error
Returns as many lazy arrays as there are supplied arrays, but broadcast such that all resulting arrays have the same shape. If there is no suitable broadcast shape for all supplied arrays, an error is signaled.
Examples:
(lazy-broadcast-arrays #(1 2 3) 5)
=> #<lazy-array t (~ 3)>
=> #<lazy-array (eql 5) (~ 3)>
(lazy-broadcast-arrays #(2 3 4) #2A((1 2 3) (4 5 6)))
=> #<lazy-array t (~ 2 ~ 3)>
=> #<lazy-array t (~ 2 ~ 3)>
Returns a list of lazy arrays of the same length as the list of supplied
arrays, but where each element is broadcast such that all resulting arrays
have the same shape. If there is no suitable broadcast shape for all
supplied arrays, an error is signaled.
Examples:
(lazy-broadcast-list-of-arrays (list #(1 2 3) 5))
=> (#<lazy-array t (~ 3)> #<lazy-array (eql 5) (~ 3)>)
=> (~ 3)
(lazy-broadcast-list-of-arrays (list #(2 3 4) #2A((1 2 3) (4 5 6))))
=> (#<lazy-array t (~ 2 ~ 3)> #<lazy-array t (~ 2 ~ 3)>)
=> (~ 2 ~ 3)
Turns the supplied array into an array with the same rank and contents,
but where all ranges start from zero and have a step size of one.
Example:
(lazy-collapse (lazy-reshape 42 (~ 1 100 3 ~ 1 100 8)))
=> #<lazy-array (eql 42) (~ 33 ~ 13)>
Removes zero or more axes whose corresponding range has only a single
element from a supplied array.
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
Turns the supplied array into a rank one array, while preserving the
lexicographic ordering of the elements.
Examples:
(compute (lazy-flatten #2A((1 2) (3 4))))
=> #(1 2 3 4)
(compute (lazy-flatten #3A(((1 2) (3 4)) ((5 6) (7 8)))))
=> #(1 2 3 4 5 6 7 8)
Combine ARRAYS into a single strided array. It is an error if some of
the supplied arrays overlap, or if there exists no suitable strided array
to represent the fusion.
Examples:
(compute (lazy-fuse (lazy-reshape 1 (~ 0 2)) (lazy-reshape 0 (~ 2 4))))
=> #*1100
(compute (lazy-fuse (lazy-reshape 1 (~ 0 7 2)) (lazy-reshape 0 (~ 1 7 2)))) => #*1010101
Combines ARRAYS into a single strided array. When some of the supplied
arguments overlap partially, the value of the rightmost object is used.
Example:
(compute (lazy-overwrite (lazy-reshape 1 (~ 0 4)) (lazy-reshape 0 (~ 2 4)))) => #*1100
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-array-indices a 0))
(compute max index)))
=> 9
=> 4
Returns a lazy array with the contents of ARRAY, but after applying the
supplied MODIFIERS in left-to-right order. A modifier must either be a
shape, or a transformation.
A shape can denote one of three different modifications, depending on whether it is larger than the array, smaller than the array, or has the same number of elements as the array. If the shape is larger than the array, it denotes a broadcasting operation. If the shape is smaller than the array, it denotes a selection of a sub-array. If the shape has the same number of elements, it denotes a lexicographic reordering operation.
In case the modifier is a transformation, the new array is obtained by
taking each index and corresponding value of the original array and
applying the transformation to the index while retaining the value.
Examples:
(compute (lazy-reshape 4 (~ 0 4)))
=> #(4 4 4 4)
(compute (lazy-reshape #(1 2 3 4) (~ 1 2)))
=> #(2)
(compute (lazy-reshape (lazy-shape-indices (~ 9)) (~ 3 ~ 3)))
=> #2A((0 1 2) (3 4 5) (6 7 8))
(compute (lazy-reshape #2A((1 2) (3 4)) (transform i j to j i)))
=> #2A((1 3) (2 4))
(compute (lazy-reshape #(1 2 3 4) (~ 1 3) (~ 0 2 ~ 0 2)))
=> #2A((2 3) (2 3))
Returns a lazy array of integers of the shape of SHAPE, where each
array element at index (i_0 ... i_N) has the value i_AXIS. If AXIS is not
supplied, it defaults to zero.
Examples:
(compute (lazy-shape-indices (~ 9)))
=> #(0 1 2 3 4 5 6 7 8)
(compute (lazy-shape-indices (~ 0 4 2 ~ 1 5 2) 0))
=> #2A((0 0) (2 2))
(compute (lazy-shape-indices (~ 0 4 2 ~ 1 5 2) 1))
=> #2A((1 3) (1 3))
For a supplied ARRAY with rank n, returns an array of rank n-1 that
contains all entries that have the supplied INDEX in the position specified
by AXIS.
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)
Selects those elements from ARRAY whose indices at the specified AXIS
are contained in the supplied RANGE.
Examples:
(compute (lazy-slices #(1 2 3 4) (range 0 2 2)))
=> #(1)
(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))
Stacks multiple array next to each other along the specified AXIS such
that along this axis, the leftmost array will have the lowest indices, and
the rightmost array will have the highest indices.
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))
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.
Returns a transformation according to the supplied keyword arguments.
Valid keyword arguments are:
:INPUT-RANK
The length or rank of any valid transformation input. A non-negative
integer.
:OUTPUT-RANK
The length or rank of any transformation output. A non-negative integer.
:INPUT-MASK
A sequence with as many elements as the input rank of the transformation.
Each element must either be an integer, in which case only this integer may
occur in the corresponding input position, or NIL, in which case any
integer may occur in the corresponding input position.
:OUTPUT-MASK
A sequence with as many elements as the output rank of the transformation.
Every element must either be an integer, in which case this integer denotes
the input entry 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 with up
to input rank ascending integers, starting from zero, and followed by
entries of NIL in case the output rank is larger than the input rank.
:SCALINGS
A sequence with as many elements as the output rank of the transformation.
Each element must be a rational number. Every transformation output is
scaled with its corresponding entry in this sequence. If this keyword
argument is not supplied, it defaults to a sequence of ones.
:OFFSETS
A sequence with as many elements as the output rank of the transformation.
Each element must be a rational number that is added to the corresponding
output value after permutation and scaling has taken place. If this keyword
argument is not supplied, it defaults to a sequence of zeros.
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))
Takes a function and a range and applies the function to all integers of
that range, in ascending order.
Example:
(let ((l ’nil))
(map-range (lambda (i) (push i l)) (range 1 9 2))
(nreverse l))
=> (1 3 5 7)
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))
Attempt to split the supplied sequence of chunks based on the supplied
keyword arguments.
BUFFER-CHUNK - A function for looking up the root chunk of each buffer that
is encountered during partitioning.
SPLIT-PRIORITY - A function that takes a chunk and returns an unsigned
integer that is the priority when considering whether to split the chunk.
Chunks with higher priority are split first, and chunks whose priority is
below a certain minimum priority are not split at all.
SPLIT-MIN-PRIORITY - An unsigned integer that is the priority a chunk 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.
Return the list of prime factors of INTEGER in ascending order.
Removes and returns the element at the front of QUEUE, or return NIL if the queue was empty. Return a second value that is a boolean indicating whether an object was taken from the queue or not.
Inserts OBJECT at the back of QUEUE.
Returns a new, normalized range from the supplied parameters.
This function can be invoked with one, two or three integers. In the case
of a single integer, it constructs the range from zero with step size one
up to but excluding that integer. In the case of two integers, it creates
a range from the first integer with step size one up to but excluding the
second integer. In the case of three arguments, it creates a range from
the first integer up to but excluding the second integer, using the third
integer as the step size. If the first, inclusive integer and final,
exclusive integer are not congruent modulo the step size, the latter one is
moved towards the former until they are.
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 7 -3 3)
=> #<empty-range>
Check 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
Compute the difference of two ranges R1 and R2. Returns a list of disjoint subranges of R1 that describe exactly those integers appearing in R1 but not in R2.
Check whether two supplied ranges describe the same set of integers.
Examples:
(range-equal (range 1) (range 2))
=> nil
(range-equal (range 2) (range 2))
=> t
(range-equal (range 0 8 2) (range 0 9 2))
=> nil
(range-equal (range 0 8 3) (range 0 9 3))
=> t
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)>
Check 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
Checks whether a supplied object is a range.
Examples:
(rangep 42)
=> nil
(rangep (range 1 3 2))
=> t
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.
Check whether the supplied shape contains a particular integer tuple.
Examples:
(shape-contains (~ 1 9) (list 4))
=> t
(shape-contains (~ 1 2 9) (list 4))
=> nil
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))
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))
>> simple-error
(shape-dimensions (~ 0 2 9))
=> (1)
(shape-dimensions (~ 0 4 ~ 0 5 ~ 0 6))
=> (4 5 6)
Returns the shape containing exactly those integer tuples that occur in
both supplied shapes. Returns NIL if there are no such elements.
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)
Check 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
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)>)
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
rank
.
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
size
.
Checks 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
Checks whether a supplied object is a shape.
Examples:
(shapep 42)
=> nil
(shapep (~ 1 ~ 2 ~ 3 4))
=> t
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)>
Checks 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
Splits the supplied range R into a lower and an upper half and returns
them 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)>
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)
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))
Returns a list of (shape . bitmask) conses. Each shape is a proper
subshape of one or more of the supplied shapes and their fusion covers all
supplied shapes. The bitmask indicates which of the supplied shapes are
supersets of the corresponding resulting shape.
Examples:
(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))
(subdivide-shapes (list (~ 1 10) (~ 2 20)))
=> (((~ 2 10) . 3) ((~ 1 2) . 1) ((~ 10 20) . 2))
Checks for two shapes whether the former is fully contained in the
latter.
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
Returns a list of all nodes in supplied DAG, in topological ordering. The graph is specified by a list of start nodes, a function for applying a supplied function to each successor of a supplied node, and a function for applying a supplied function to each predecessor of a supplied node.
Check whether a supplied transformation is invertible.
Examples:
(transformation-invertiblep (transform i j to j i))
=> t
(transformation-invertiblep (transform i j to i)) => nil
Turns the supplied function into a lazy, vector-valued Petalisp function.
The desired number of return values can be supplied as an optional second
argument.
Examples:
(compute (funcall (vectorize #’+) #(1 2 3 4) 5))
=> #(6 7 8 9)
(let ((fn (vectorize #’floor 2)))
(multiple-value-bind (quot rem)
(funcall fn #(1 2 3 4) #(4 3 2 1))
(compute quot rem)))
=> #(0 0 1 4)
=> #(1 2 1 0)
Blocks until the work designated by some COMPUTE-ASYNCHRONOUSLY operations has been completed. Each argument must be one of the opaque objects returned by COMPUTE-ASYNCHRONOUSLY.
Remove the VALUE at the bottom of the WSDEQUE. Returns two values: The
object that has been removed and T, or NIL and NIL.
This operation must only be carried out by the thread that owns the WSDEQUE.
Insert VALUE at the bottom of the WSDEQUE. Returns that value.
This operation must only be carried out by the thread that owns the WSDEQUE.
Remove the VALUE at the top of the WSDEQUE. Returns two values: The
object that has been removed and T, or NIL and NIL.
This operation is thread safe.
The functions ~, ~l, ~s and ~r can be used to construct new shapes from
some given range designators, from lists of ranges, from shapes, or from a
single range, respectively. Each of these patterns can be used repeatedly
in a single call.
Examples:
(~)
=> (~)
(~ 8)
=> (~ 8)
(~ 1 10)
=> (~ 1 10)
(~ 0 10 2 ~ 0 10 2)
=> (~ 0 9 2 ~ 0 9 2)
(~ 5 ~s (~ 1 4 2 ~ 4 10 5) ~ 5)
=> (~ 5 ~ 1 4 2 ~ 4 10 5 ~ 5)
(~r (range 1 10) ~l (list (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)
The functions ~, ~l, ~s and ~r can be used to construct new shapes from
some given range designators, from lists of ranges, from shapes, or from a
single range, respectively. Each of these patterns can be used repeatedly
in a single call.
Examples:
(~)
=> (~)
(~ 8)
=> (~ 8)
(~ 1 10)
=> (~ 1 10)
(~ 0 10 2 ~ 0 10 2)
=> (~ 0 9 2 ~ 0 9 2)
(~ 5 ~s (~ 1 4 2 ~ 4 10 5) ~ 5)
=> (~ 5 ~ 1 4 2 ~ 4 10 5 ~ 5)
(~r (range 1 10) ~l (list (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)
The functions ~, ~l, ~s and ~r can be used to construct new shapes from
some given range designators, from lists of ranges, from shapes, or from a
single range, respectively. Each of these patterns can be used repeatedly
in a single call.
Examples:
(~)
=> (~)
(~ 8)
=> (~ 8)
(~ 1 10)
=> (~ 1 10)
(~ 0 10 2 ~ 0 10 2)
=> (~ 0 9 2 ~ 0 9 2)
(~ 5 ~s (~ 1 4 2 ~ 4 10 5) ~ 5)
=> (~ 5 ~ 1 4 2 ~ 4 10 5 ~ 5)
(~r (range 1 10) ~l (list (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)
The functions ~, ~l, ~s and ~r can be used to construct new shapes from
some given range designators, from lists of ranges, from shapes, or from a
single range, respectively. Each of these patterns can be used repeatedly
in a single call.
Examples:
(~)
=> (~)
(~ 8)
=> (~ 8)
(~ 1 10)
=> (~ 1 10)
(~ 0 10 2 ~ 0 10 2)
=> (~ 0 9 2 ~ 0 9 2)
(~ 5 ~s (~ 1 4 2 ~ 4 10 5) ~ 5)
=> (~ 5 ~ 1 4 2 ~ 4 10 5 ~ 5)
(~r (range 1 10) ~l (list (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)
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.
testing-backend
) (data-structures list
)) ¶ir-backend
) (lazy-arrays list
)) ¶reference-backend
) (lazy-arrays list
)) ¶Returns a REQUEST object that can be used to wait until all of the supplied LAZY-ARRAYS have been computed.
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 supplied arrays has a different shape or element type as the corresponding result or unknown.
xmas-backend
) (unknowns list
) (lazy-arrays list
)) ¶Returns whether the supplied OBJECT is a Petalisp backend.
delayed-action
)) ¶delayed-map
)) ¶delayed-nth-value
)) ¶delayed-reshape
)) ¶delayed-fuse
)) ¶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.
testing-backend
)) ¶xmas-backend
)) ¶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).
hairy-transformation
) (scaling rational
) (offset rational
)) ¶identity-transformation
) (scale rational
) (offset rational
)) ¶identity-transformation
) (scale (eql 1)
) (offset (eql 0)
)) ¶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
hairy-transformation
)) ¶identity-transformation
)) ¶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.
function
) (transformation hairy-transformation
) &key from-end) ¶function
) (transformation identity-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.
function
) (transformation hairy-transformation
) &key from-end) ¶function
) (transformation identity-transformation
) &key from-end) ¶Returns whether all lazy arrays that are part of the supplied REQUEST have already been computed.
completed-request
)) ¶Block until all lazy arrays that are part of the supplied REQUEST have been computed.
completed-request
)) ¶Returns whether the supplied OBJECT is a request.
lazy-array
)) ¶array
)) ¶delayed-action
)) ¶delayed-fuse
)) ¶delayed-reshape
)) ¶delayed-nth-value
)) ¶delayed-multiple-value-map
)) ¶delayed-map
)) ¶integer
) (hairy-transformation hairy-transformation
)) ¶integer
) (transformation identity-transformation
)) ¶integer
) (transformation transformation
)) ¶vector
) (transformation hairy-transformation
)) ¶list
) (transformation hairy-transformation
)) ¶sequence
) (transformation identity-transformation
)) ¶sequence
) (transformation hairy-transformation
)) ¶sequence
) (transformation transformation
)) ¶shape
) (transformation hairy-transformation
)) ¶shape
) (operator identity-transformation
)) ¶shape
) (transformation hairy-transformation
)) ¶shape
) (transformation transformation
)) ¶Check 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
transformation
) (t2 transformation
) (delta integer
)) ¶Check 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
hairy-transformation
) (t2 hairy-transformation
)) ¶identity-transformation
) (t2 identity-transformation
)) ¶transformation
) (t2 transformation
)) ¶non-empty-range
) stream) ¶lazy-array
) stream) ¶empty-range
) stream) ¶transformation
) stream) ¶iref-instruction
) stream) ¶store-instruction
) stream) ¶call-instruction
) stream) ¶load-instruction
) stream) ¶structure-object
.
petalisp.core:shape
typo:ntype
(and unsigned-byte fixnum)
list
(quote nil)
list
(quote nil)
(or null petalisp.ir:task)
common-lisp
.
(and unsigned-byte fixnum)
0
structure-object
.
petalisp.ir:buffer
This slot is read-only.
petalisp.core:shape
This slot is read-only.
petalisp.core:shape
This slot is read-only.
(or null petalisp.ir:chunk)
This slot is read-only.
list
(quote nil)
(or null unsigned-byte)
(or null structure-object)
structure-object
.
array
(alexandria:required-argument :storage)
common-lisp
.
condition
(alexandria:required-argument :condition)
This slot is read-only.
list
(alexandria:required-argument :inputs)
An empty range is a range with zero elements.
An identity transformation of rank N maps every list of length N to itself. An identity transformation is its own inverse.
petalisp.core:transformation
structure-object
.
petalisp.core:shape
list
(quote nil)
list
(quote nil)
simple-vector
#()
(or null petalisp.ir:task)
common-lisp
.
(and unsigned-byte fixnum)
0
A lazy array encapsulates some information that can be used to compute actual Common Lisp arrays.
structure-object
.
convert-cluster
.
convert-cluster
.
convert-cluster
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
grow-dendrite-aux
.
input-gradient
.
input-gradient
.
input-gradient
.
print-object
.
shape-designator-shape
.
trivial-lazy-array-p
.
trivial-lazy-array-p
.
trivial-lazy-array-p
.
trivial-lazy-array-value
.
trivial-lazy-array-value
.
petalisp.core:shape
(alexandria:required-argument :shape)
This slot is read-only.
typo:ntype
(alexandria:required-argument :ntype)
This slot is read-only.
(and unsigned-byte fixnum)
0
This slot is read-only.
(and unsigned-byte fixnum)
0
petalisp.core:delayed-action
(alexandria:required-argument :delayed-action)
petalisp.ir:buffer
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.
structure-object
.
list
(quote nil)
list
(quote nil)
simple-vector
#()
(and unsigned-byte fixnum)
0
(and unsigned-byte fixnum)
0
structure-object
.
bordeaux-threads:lock
(bordeaux-threads:make-lock "h-lock")
bordeaux-threads:lock
(bordeaux-threads:make-lock "t-lock")
cons