diff --git a/docs/twitter/2075769880092037309/media/2075769880092037309_1.png b/docs/twitter/2075769880092037309/media/2075769880092037309_1.png new file mode 100644 index 00000000..2bd757f5 Binary files /dev/null and b/docs/twitter/2075769880092037309/media/2075769880092037309_1.png differ diff --git a/docs/twitter/2075769880092037309/media/2075770634349527454_1.jpg b/docs/twitter/2075769880092037309/media/2075770634349527454_1.jpg new file mode 100644 index 00000000..f733f247 Binary files /dev/null and b/docs/twitter/2075769880092037309/media/2075770634349527454_1.jpg differ diff --git a/docs/twitter/2075769880092037309/media/2075770634349527454_2.jpg b/docs/twitter/2075769880092037309/media/2075770634349527454_2.jpg new file mode 100644 index 00000000..c758a134 Binary files /dev/null and b/docs/twitter/2075769880092037309/media/2075770634349527454_2.jpg differ diff --git a/docs/twitter/2075769880092037309/media/2075771407510773906_1.jpg b/docs/twitter/2075769880092037309/media/2075771407510773906_1.jpg new file mode 100644 index 00000000..7769d2a6 Binary files /dev/null and b/docs/twitter/2075769880092037309/media/2075771407510773906_1.jpg differ diff --git a/docs/twitter/2075769880092037309/media/2075771407510773906_2.jpg b/docs/twitter/2075769880092037309/media/2075771407510773906_2.jpg new file mode 100644 index 00000000..fb43a404 Binary files /dev/null and b/docs/twitter/2075769880092037309/media/2075771407510773906_2.jpg differ diff --git a/docs/twitter/2075769880092037309/media/2075771407510773906_3.jpg b/docs/twitter/2075769880092037309/media/2075771407510773906_3.jpg new file mode 100644 index 00000000..fb43a404 Binary files /dev/null and b/docs/twitter/2075769880092037309/media/2075771407510773906_3.jpg differ diff --git a/docs/twitter/2075769880092037309/thread.md b/docs/twitter/2075769880092037309/thread.md new file mode 100644 index 00000000..9b96f779 --- /dev/null +++ b/docs/twitter/2075769880092037309/thread.md @@ -0,0 +1,40 @@ +--- +title: "Rethinking Vulkan queue choice. Traditional double-buffered games might do somet" +author: "NOTimothyLottes" +handle: "@NOTimothyLottes" +post_url: "https://x.com/NOTimothyLottes/status/2075769880092037309" +post_id: "2075769880092037309" +timestamp: "2026-07-11 02:31:20" +post_count: 4 +reply_count: 2 +repost_count: 2 +like_count: 42 +view_count: 5063 +--- + +# @NOTimothyLottes — Rethinking Vulkan queue choice. Traditional double-buffered games might do somet + +## Post 1 (2026-07-11 02:31:20) + +Rethinking Vulkan queue choice. Traditional double-buffered games might do something like the code below. Find the queue that does {presentation,graphics,compute}. First off this seems like a lot of unnecessary work when one could just choose queue 0 and be done with it ... + +![Media 1](./media/2075769880092037309_1.png) + +## Post 2 (2026-07-11 02:34:19) — reply to Post 1 + +AMD on Linux (RADV) and Windows. Queue 0 just works. But note both platforms support doing present on queue 1. So on AMD I'm likely going to render via compute on queue 0 [to reduce chance of preemption] and present on queue 1. And have both decoupled (for front buffer rendering) + +![Media 1](./media/2075770634349527454_1.jpg) +![Media 2](./media/2075770634349527454_2.jpg) + +## Post 3 (2026-07-11 02:37:24) — reply to Post 2 + +NVIDIA is more complex. They put a DMA engine in queue 1 slot, and compute engine in queue 2 slot. Some sometimes queue 2 slot can or cannot do present (varies by driver). So maybe present on 0 (gfx queue), and dispatch on queue 2 by default for NV. + +![Media 1](./media/2075771407510773906_1.jpg) +![Media 2](./media/2075771407510773906_2.jpg) +![Media 3](./media/2075771407510773906_3.jpg) + +## Post 4 (2026-07-11 06:31:23) — reply to Post 1 + +@NOTimothyLottes Am I having a stroke? What is this font? It feels like reading a captcha. Is it only me? diff --git a/docs/twitter/2075769880092037309/thread_data.json b/docs/twitter/2075769880092037309/thread_data.json new file mode 100644 index 00000000..1c4f1db5 --- /dev/null +++ b/docs/twitter/2075769880092037309/thread_data.json @@ -0,0 +1,79 @@ +{ + "root_post_id": "2075769880092037309", + "posts": [ + { + "post_id": "2075769880092037309", + "author": "NOTimothyLottes", + "handle": "NOTimothyLottes", + "text": "Rethinking Vulkan queue choice. Traditional double-buffered games might do something like the code below. Find the queue that does {presentation,graphics,compute}. First off this seems like a lot of unnecessary work when one could just choose queue 0 and be done with it ...", + "timestamp": "2026-07-11 02:31:20", + "media_urls": [ + "https://pbs.twimg.com/media/HM6desTW0AAHA_H?format=png&name=orig" + ], + "reply_to_id": null, + "quote_of_id": null, + "metrics": { + "reply_count": 2, + "repost_count": 2, + "like_count": 42, + "view_count": 5063 + } + }, + { + "post_id": "2075770634349527454", + "author": "NOTimothyLottes", + "handle": "NOTimothyLottes", + "text": "AMD on Linux (RADV) and Windows. Queue 0 just works. But note both platforms support doing present on queue 1. So on AMD I'm likely going to render via compute on queue 0 [to reduce chance of preemption] and present on queue 1. And have both decoupled (for front buffer rendering)", + "timestamp": "2026-07-11 02:34:19", + "media_urls": [ + "https://pbs.twimg.com/media/HM6d5GnWAAAGOmg?format=jpg&name=orig", + "https://pbs.twimg.com/media/HM6d8lcXsAA-8LJ?format=jpg&name=orig" + ], + "reply_to_id": "2075769880092037309", + "quote_of_id": null, + "metrics": { + "reply_count": 1, + "repost_count": 0, + "like_count": 7, + "view_count": 1230 + } + }, + { + "post_id": "2075771407510773906", + "author": "NOTimothyLottes", + "handle": "NOTimothyLottes", + "text": "NVIDIA is more complex. They put a DMA engine in queue 1 slot, and compute engine in queue 2 slot. Some sometimes queue 2 slot can or cannot do present (varies by driver). So maybe present on 0 (gfx queue), and dispatch on queue 2 by default for NV.", + "timestamp": "2026-07-11 02:37:24", + "media_urls": [ + "https://pbs.twimg.com/media/HM6egsMWcAAkjOq?format=jpg&name=orig", + "https://pbs.twimg.com/media/HM6ex2jXwAAkmI6?format=jpg&name=orig", + "https://pbs.twimg.com/media/HM6e5EdXwAAuOG5?format=jpg&name=orig" + ], + "reply_to_id": "2075770634349527454", + "quote_of_id": null, + "metrics": { + "reply_count": 1, + "repost_count": 0, + "like_count": 4, + "view_count": 1100 + } + }, + { + "post_id": "2075830291499737598", + "author": "Konrad Kubacki", + "handle": "konrad_kubacki_", + "text": "@NOTimothyLottes Am I having a stroke? What is this font? It feels like reading a captcha. Is it only me?", + "timestamp": "2026-07-11 06:31:23", + "media_urls": [], + "reply_to_id": "2075769880092037309", + "quote_of_id": null, + "metrics": { + "reply_count": 2, + "repost_count": 0, + "like_count": 19, + "view_count": 437 + } + } + ], + "source_url": "https://x.com/NOTimothyLottes/status/2075769880092037309" +} \ No newline at end of file