DBM/OFFLOAD: prepared for hybrid execution

- Split backend_upload_packs into two phases on GPU.
- Initial phase is chosen to have not triggered upload.
- Offload: offloadEventQuery to check if GPU is busy.
- Removed dbm_multiply_gpu_download_results
- Transfers are launched as early as possible.
- Improved overlap between transfer/compute.
- Idea: proceed on CPU if GPU is busy.

Other changes:
- Documented way to perform validation (ctx=NULL).
- Permit DBM_ prefix for preprocessor symbols.
- Removed C-shard pointer from GPU-context.
- Per-shard event stored/provided by shard.
- Migrated CPU-options into context.
- Miniapp: allow to omit validation.
- Use preincrement (atomic).
This commit is contained in:
Hans Pabst 2025-09-04 12:59:12 +02:00
parent 63a7c4bee4
commit 7face5689e
6 changed files with 184 additions and 181 deletions

View file

@ -24,10 +24,7 @@ FLAG_EXCEPTIONS = (
r"__ARM_ARCH",
r"__ARM_FEATURE_.+",
r"CUDA_VERSION",
r"DBM_LIBXSMM_PREFETCH",
r"DBM_VALIDATE_AGAINST_.+",
r"DBM_ALLOC_.+",
r"DBM_MEMPOOL_.+",
r"DBM_.+",
r"OPENMP_TRACE_SYMBOL",
r"OPENCL_.+",
r"ACC_OPENCL_.+",