All Classes and Interfaces
Class
Description
Exception is thrown when an Aparapi kernel is executing in Java mode,
and a barrier cannot be completed due to threads that die during its execution.
We use
AparapiException
class and subclasses to wrap other
Exception
classes, mainly to allow differentiation between Aparapi specific issues at runtime.This exception is thrown by underlying Aparapi JNI native code when the JNI call fails
This exception is thrown when a Java kernel execution fails.
Base abstract class for converting
Aparapi
IR to text.Deals with the issue of recognizing that a sequence of bytecode branch instructions actually represent a single if/while with a logical expression.
A node in the expression tree representing a simple logical expression.
Base abstract class used to hold information used to construct node tree for logical expressions.
A node in the expression tree representing a simple logical expression.
Used to parse ClassFile structure.
Primarily used to parse various ClassFile structures.
Class represents a ClassFile (MyClass.class).
We throw
ClassParseException
s (derived from AparapiException
) if we encounter any Aparapi unfriendly
constructs.A central location for holding all runtime configurable properties as well as logging configuration.
This class is intended to be used as a 'proxy' or 'facade' object for Java code to interact with JNI
Use this annotation to tag stuff that needs Java Doc added
Used to tag experimental features (methods/fields)
Essentially a glorified linked list of Instructions plus some additional state to allow us to transform sequences.
Provides the interface for Aparapi Kernel barriers.
Initially represents a single Java bytecode instruction.
Represents an Operator
This interface provides a way for the client application to refine the default devices
configuration obtained by the underlying OpenCL platforms in a centralized, automated manner.
Defines interface for listener/observer of Kernel profile reports
A kernel encapsulates a data parallel algorithm that will execute either on a GPU
(through conversion to OpenCL) or on a CPU via a Java Thread Pool.
We can use this Annotation to 'tag' intended constant buffers.
Deprecated.
We can use this Annotation to 'tag' intended local buffers.
Annotation which can be applied to either a getter (with usual java bean naming convention relative to an instance field), or to any method
with void return type, which prevents both the method body and any calls to the method being emitted in the generated OpenCL.
This annotation is for internal use only
This annotation is for internal use only
We can use this Annotation to 'tag' __private (unshared) array fields.
Each field (or captured field in the case of an anonymous inner class) referenced by any bytecode reachable from the users Kernel.run(), will
need to be represented as a
KernelArg
.This class is intended to be used as a 'proxy' or 'facade' object for Java code to interact with JNI
Created by Barney on 02/09/2015.
Created by Barney on 24/08/2015.
New home for deprecated methods of
Device
.KernelManager instances useful for debugging.
Thread safe class holding the kernel preferences for a given kernel class.
Collects profiling information per kernel class per device.
The class is responsible for executing
Kernel
implementations.This class is intended to be used as a 'proxy' or 'facade' object for Java code to interact with JNI
Implementation of SwingWorker to assist in progress tracking and cancellation of multi-pass
Kernel
s.This class is intended to be used as a 'proxy' or 'facade' object for Java code to interact with JNI
This class is intended to be a singleton which determines if OpenCL is available upon startup of Aparapi
This utility class encapsulates the necessary actions required to query underlying OpenCL information
Created by Barney on 02/09/2015.
This exception is thrown when an unexpected behavior occurs while querying the OpenCL platform.
A representation of 1, 2 or 3 dimensional range of execution.
This class is intended to be used as a 'proxy' or 'facade' object for Java code to interact with JNI
Created by Barney on 03/09/2015.
Use this annotation to tag fields that we think need to be removed (method/field/var)
Substitute of Java8's Supplier interface, used in Java7 backport of caches.
A wrapper around sun.misc.Unsafe for handling atomic operations, copies from fields to arrays and vice versa.
Used to tag unused features (methods/fields)
Be careful changing the name/type of this field as it is referenced from JNI code.
EXECUTION_MODE
s are used, as a more sophisticatedDevice
preference mechanism is in place, seeKernelManager
.