- Add docs/in-place-inputs.md: reading the DLSS inputs in place does not work, because a hardware texture fetch on a HIP texture object over memory imported from vkd3d-proton returns stale data while plain loads and cuMemcpy2D are correct; records the measurements, the rule-outs and the reworked-fetch workaround that turned out not to pay for itself. - Add tools/hip_vk_texture_stale_repro.cpp and its build script, the native Vulkan + HIP reproducer that rules out a general ROCm or RADV bug.
12 lines
635 B
Bash
Executable File
12 lines
635 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Builds build/hip_vk_texture_stale_repro: a native Vulkan + HIP check that a HIP texture object on
|
|
# memory imported from Vulkan follows Vulkan's later writes (see tools/hip_vk_texture_stale_repro.cpp).
|
|
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
ROCM_ROOT="${ROCM_ROOT:-/opt/rocm}"
|
|
mkdir -p "$ROOT/build"
|
|
"$ROCM_ROOT/bin/hipcc" -std=c++17 -O2 "$ROOT/tools/hip_vk_texture_stale_repro.cpp" -lvulkan \
|
|
-o "$ROOT/build/hip_vk_texture_stale_repro"
|
|
printf 'Built %s (run with LD_LIBRARY_PATH=%s/lib:%s/lib/llvm/lib)\n' "$ROOT/build/hip_vk_texture_stale_repro" "$ROCM_ROOT" "$ROCM_ROOT"
|