Expand description
Executors for batches of runs, with each outcome committed to a sink in request order.
A CPU model runs in lanes. Each lane drives one run at a time on its own thread pool, a single lane included. A GPU model runs on tracks, several runs sharing the device from the calling thread.
Structs§
- Active
Run - One run in progress.
- Active
Runs - Runs in progress and the tick each has reached, and the finished runs waiting to be committed, shared by clones.
- Execution
Layout - Lanes and GPU tracks a sweep runs on.
- Executor
- Runner of batches of one model, with its lane pools built once.
- GpuTrack
Depth - Command buffers and steps each GPU track keeps on the device.
- RunRequest
- One run for an executor to build and drive.
- RunWatch
- Entry of one run in an
ActiveRunstable, removed when the watch is dropped. - Sweep
Control - Pause, resume and abort switch for a sweep, shared by clones.
Enums§
- Batch
End - End of a batch that did not fail.
- Concurrency
- Number of runs that a sweep keeps running at once.
- Execution
Error - A batch that cannot run.
Constants§
- JOBS_
PER_ THREAD - Number of jobs of one step for each thread of a lane.
- POPULATION_
PER_ JOB - Population counted as one job when a model does not report its jobs.
Traits§
- RunSink
- Receiver of the outcomes of a batch.
Functions§
- gpu_
memory_ budget - Returns the device memory budget in bytes for all GPU runs together on
ctx:budgetwhen given, and otherwise the device’s largest buffer.