Repository navigation
Straydog v0.1.9
Pre-release
Pre-release
Straydog 0.1.9. It is still a pre-release. What Straydog does and how fast it runs are in the
v0.1.0 notes; what 0.1.8 brought is in its
notes.
This release fixes a start that failed on GPUs that cannot page-lock memory read-only.
Fixes
- CUDA: the model loads on GPUs that cannot page-lock memory read-only. Straydog page-locks the buffers it loads the model through,
and the expert banks of a partially resident layer, asking for read-only registration (cudaHostRegisterReadOnly). A device without
cudaDevAttrHostRegisterReadOnlySupportedrefuses that with error 801, and the start failed: "Straydog GPU: operation not supported
(kernels.cpp:2135, code 801)" (two RTX 3090s on Windows 10, #2). The loader's buffers,
which are only copied from, are now page-locked as plain writable memory (no read-only flag, no device mapping), whatever the device
supports. A bank's read-only registration that a device refuses is asked again without the flag, and a bank that still cannot be
locked is read without the lock, as before when locking was refused. Devices that take the flag register the banks as before.