diff --git a/dev/arrayjit/Arrayjit/Backend_impl/index.html b/dev/arrayjit/Arrayjit/Backend_impl/index.html index ff006a20..8da3f5af 100644 --- a/dev/arrayjit/Arrayjit/Backend_impl/index.html +++ b/dev/arrayjit/Arrayjit/Backend_impl/index.html @@ -7,7 +7,7 @@ Backend_intf.Alloc_buffer with type buffer_ptr := Device_types.buffer_ptr and type stream := Device_types.stream) : - sig ... end
module type Backend_impl_common = sig ... end
Parts shared by backend implementations excluding what's already in Backend_any_common
, except for Buffer
which is duplicated for technical reasons.
module type For_add_scheduler = sig ... end
An interface to adding schedulers for stream-agnostic (typically CPU) backend implementations.
module type Lowered_no_device_backend = sig ... end
Lowered-level stream agnostic backend interface: implementation-facing API for CPU backends.
module type No_buffer_retrieval_or_syncing = sig ... end
module type With_scheduler = sig ... end
A compilation-agnostic backend API -- Lowered_backend
instantates it, but Lowered_no_device_backend
backends are also converted to its instantations.
module type Lowered_backend = sig ... end
Lowered-level backend interface: implementation-facing API for device-based (GPU, or CPU after adding a scheduler) backends.
module Alloc_buffer_ignore_stream
+ sig ... end
module type Backend_impl_common = sig ... end
Parts shared by backend implementations excluding what's already in Backend_any_common
, except for Buffer
which is duplicated for technical reasons.
module type For_add_scheduler = sig ... end
An interface to adding schedulers for stream-agnostic (typically CPU) backend implementations.
module type Lowered_no_device_backend = sig ... end
Lowered-level stream agnostic backend interface: implementation-facing API for CPU backends.
module type No_buffer_retrieval_or_syncing = sig ... end
module type With_scheduler = sig ... end
An intermediate stage for converting Lowered_no_device_backend
backends into Lowered_backend
.
module type Lowered_backend = sig ... end
Lowered-level backend interface: implementation-facing API for device-based (GPU, or CPU after adding a scheduler) backends.
module Alloc_buffer_ignore_stream
(Device_types : Backend_intf.Device_types)
(Backend :
Backend_intf.Alloc_buffer
diff --git a/dev/arrayjit/Arrayjit/Backend_impl/module-type-With_scheduler/index.html b/dev/arrayjit/Arrayjit/Backend_impl/module-type-With_scheduler/index.html
index 2b66da74..8b1c71ce 100644
--- a/dev/arrayjit/Arrayjit/Backend_impl/module-type-With_scheduler/index.html
+++ b/dev/arrayjit/Arrayjit/Backend_impl/module-type-With_scheduler/index.html
@@ -1,5 +1,5 @@
-With_scheduler (arrayjit.Arrayjit.Backend_impl.With_scheduler) Module type Backend_impl.With_scheduler
A compilation-agnostic backend API -- Lowered_backend
instantates it, but Lowered_no_device_backend
backends are also converted to its instantations.
include Backend_intf.Backend_device_common
include Backend_intf.Device
include Backend_intf.Device_types
include Backend_intf.Device_config
val sexp_of_dev : dev -> Sexplib0.Sexp.t
val sexp_of_runner : runner -> Sexplib0.Sexp.t
An event tracks if a stream finished computing past a particular point in its schedue. These values are used internally for scheduling across streams of the backend, and can be used for explicit scheduling.
val sexp_of_event : event -> Sexplib0.Sexp.t
type nonrec device = (buffer_ptr, dev, runner, event) Backend_intf.device
val sexp_of_device : device -> Sexplib0.Sexp.t
type nonrec stream = (buffer_ptr, dev, runner, event) Backend_intf.stream
val sexp_of_stream : stream -> Sexplib0.Sexp.t
type nonrec context = (buffer_ptr, stream) Backend_intf.context
val sexp_of_context : context -> Sexplib0.Sexp.t
include Backend_intf.Alloc_buffer
+With_scheduler (arrayjit.Arrayjit.Backend_impl.With_scheduler) Module type Backend_impl.With_scheduler
An intermediate stage for converting Lowered_no_device_backend
backends into Lowered_backend
.
include Backend_intf.Backend_device_common
include Backend_intf.Device
include Backend_intf.Device_types
include Backend_intf.Device_config
val sexp_of_dev : dev -> Sexplib0.Sexp.t
val sexp_of_runner : runner -> Sexplib0.Sexp.t
An event tracks if a stream finished computing past a particular point in its schedue. These values are used internally for scheduling across streams of the backend, and can be used for explicit scheduling.
val sexp_of_event : event -> Sexplib0.Sexp.t
type nonrec device = (buffer_ptr, dev, runner, event) Backend_intf.device
val sexp_of_device : device -> Sexplib0.Sexp.t
type nonrec stream = (buffer_ptr, dev, runner, event) Backend_intf.stream
val sexp_of_stream : stream -> Sexplib0.Sexp.t
type nonrec context = (buffer_ptr, stream) Backend_intf.context
val sexp_of_context : context -> Sexplib0.Sexp.t
include Backend_intf.Alloc_buffer
with type buffer_ptr := buffer_ptr
and type stream := stream
include Backend_intf.Buffer with type buffer_ptr := buffer_ptr
include sig ... end