TraceMaker
C++ API of the engine
Loading...
Searching...
No Matches
backoff.hpp File Reference

Back-off for a GPU that refused work (design doc 07 §4). More...

#include <algorithm>
#include <atomic>
#include <cstdint>

Go to the source code of this file.

Classes

class  tmk::gpu::DeviceBackOff

Namespaces

namespace  tmk
namespace  tmk::gpu

Detailed Description

Back-off for a GPU that refused work (design doc 07 §4).

With the shared GPUs full of other jobs, every cost-to-go field asked the driver for free memory and the threads queued on its lock for seconds before falling back to the CPU: interf_u took 2,900 s instead of 20 s, with byte-identical output (soak 2026-10-25, phase 6b). A device that refused is therefore not asked again for a while, the delay doubling while it stays full (30 s, 1, 2, 4, 8 min, then 15 min); the CPU reference meanwhile computes the same results. Wall time decides only which of two identical paths runs, so outputs cannot change (rule 2).

Definition in file backoff.hpp.