* [FFmpeg-devel] [PR] vulkan/dpx: drop using the nontemporal extension (PR #21438)
@ 2026-01-12 18:40 Lynne via ffmpeg-devel
0 siblings, 0 replies; only message in thread
From: Lynne via ffmpeg-devel @ 2026-01-12 18:40 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Lynne
PR #21438 opened by Lynne
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21438
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/21438.patch
>From ab66bc577681336e4a5e1d1811c251300ddeb621 Mon Sep 17 00:00:00 2001
From: Lynne <dev@lynne.ee>
Date: Mon, 12 Jan 2026 19:18:00 +0100
Subject: [PATCH 1/2] Makefile: add missing vpath for glsl/spv
Similar to CUDA. Fixes building on some systems.
---
Makefile | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Makefile b/Makefile
index f563a37fca..01c04d6bba 100644
--- a/Makefile
+++ b/Makefile
@@ -11,6 +11,8 @@ vpath %.asm $(SRC_PATH)
vpath %.rc $(SRC_PATH)
vpath %.v $(SRC_PATH)
vpath %.texi $(SRC_PATH)
+vpath %.glsl $(SRC_PATH)
+vpath %.spv $(SRC_PATH)
vpath %.cu $(SRC_PATH)
vpath %.ptx $(SRC_PATH)
vpath %.metal $(SRC_PATH)
--
2.49.1
>From 2e448e4462ce2419fed0cc1a4efa610f4cdcc060 Mon Sep 17 00:00:00 2001
From: Lynne <dev@lynne.ee>
Date: Mon, 12 Jan 2026 19:37:33 +0100
Subject: [PATCH 2/2] vulkan/dpx: drop using the nontemporal extension
Its rarely respected by implementations, its fairly new (1 year old),
and it has a scuffed define (neither glslc nor glslang enable the
"GL_EXT_nontemporal_keyword" define if its enabled, unlike all other extensions).
---
libavcodec/vulkan/dpx_copy.comp.glsl | 7 +++----
libavcodec/vulkan/dpx_unpack.comp.glsl | 3 +--
2 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/libavcodec/vulkan/dpx_copy.comp.glsl b/libavcodec/vulkan/dpx_copy.comp.glsl
index 3903d35944..d9651dbfdf 100644
--- a/libavcodec/vulkan/dpx_copy.comp.glsl
+++ b/libavcodec/vulkan/dpx_copy.comp.glsl
@@ -21,7 +21,6 @@
#version 460
#pragma shader_stage(compute)
#extension GL_GOOGLE_include_directive : require
-#extension GL_EXT_nontemporal_keyword : require
#include "common.comp"
@@ -29,13 +28,13 @@ layout (constant_id = 0) const bool big_endian = false;
layout (constant_id = 1) const int type_bits = 0;
layout (set = 0, binding = 0) uniform writeonly uimage2D dst[];
-layout (set = 0, binding = 1, scalar) nontemporal readonly buffer data_buf8 {
+layout (set = 0, binding = 1, scalar) readonly buffer data_buf8 {
uint8_t data8[];
};
-layout (set = 0, binding = 2, scalar) nontemporal readonly buffer data_buf16 {
+layout (set = 0, binding = 2, scalar) readonly buffer data_buf16 {
uint16_t data16[];
};
-layout (set = 0, binding = 3, scalar) nontemporal readonly buffer data_buf32 {
+layout (set = 0, binding = 3, scalar) readonly buffer data_buf32 {
uint32_t data32[];
};
diff --git a/libavcodec/vulkan/dpx_unpack.comp.glsl b/libavcodec/vulkan/dpx_unpack.comp.glsl
index e722899d04..93fda6142d 100644
--- a/libavcodec/vulkan/dpx_unpack.comp.glsl
+++ b/libavcodec/vulkan/dpx_unpack.comp.glsl
@@ -21,7 +21,6 @@
#version 460
#pragma shader_stage(compute)
#extension GL_GOOGLE_include_directive : require
-#extension GL_EXT_nontemporal_keyword : require
#include "common.comp"
@@ -29,7 +28,7 @@ layout (constant_id = 0) const bool big_endian = false;
layout (constant_id = 1) const bool packed_10bit = false;
layout (set = 0, binding = 0) uniform writeonly uimage2D dst[];
-layout (set = 0, binding = 1, scalar) nontemporal readonly buffer data_buf {
+layout (set = 0, binding = 1, scalar) readonly buffer data_buf {
uint32_t data[];
};
--
2.49.1
_______________________________________________
ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org
To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-01-12 18:41 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-01-12 18:40 [FFmpeg-devel] [PR] vulkan/dpx: drop using the nontemporal extension (PR #21438) Lynne via ffmpeg-devel
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git