<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Frame presentation extremely erratic in Minecraft with the Sodium performance mod installed (Xe- in Developing Games on Intel Graphics</title>
    <link>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665049#M2582</link>
    <description>&lt;P&gt;Hi, I'm the developer of the aforementioned project.&lt;/P&gt;&lt;P&gt;The source code for the project is located here and is provided under a source-available license: &lt;A href="https://github.com/CaffeineMC/Sodium" target="_blank"&gt;https://github.com/CaffeineMC/Sodium&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There is not a specific shader involved here, as it is a frame presentation issue and happens regardless of what shaders are actively being rendered with. Specifically, the frames that are scanned out to the monitor may appear out-of-order and/or have significant judder, despite the fact that the application is maintaining a high frame rate and not modifying frame presentation in any manner.&lt;/P&gt;&lt;P&gt;My only guess as to what is causing the problem in our code is the fact that we insert one semaphore right after the buffer swap (see &lt;A href="https://github.com/CaffeineMC/sodium/blob/dev/common/src/main/java/net/caffeinemc/mods/sodium/mixin/core/MinecraftMixin.java" target="_blank"&gt;here&lt;/A&gt;), insert it into a deque, and then await the oldest semaphore if there are more than 3 outstanding frames in-flight to the driver. In effect, this creates a "frame render ahead" limit. This is required for our application since we don't want an unlimited number of in-flight memory transfers from CPU-&amp;gt;GPU to be queued, like most games.&lt;/P&gt;</description>
    <pubDate>Tue, 11 Feb 2025 19:07:56 GMT</pubDate>
    <dc:creator>JellySquid</dc:creator>
    <dc:date>2025-02-11T19:07:56Z</dc:date>
    <item>
      <title>Frame presentation extremely erratic in Minecraft with the Sodium performance mod installed (Xe-HPG)</title>
      <link>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665020#M2576</link>
      <description>&lt;P&gt;This is a continuation from &lt;A href="https://community.intel.com/t5/Developing-Games-on-Intel/Driver-level-bugs-causing-issues-in-Minecraft-amp-OpenGL-shaders/td-p/1664368" target="_blank" rel="noopener"&gt;https://community.intel.com/t5/Developing-Games-on-Intel/Driver-level-bugs-causing-issues-in-Minecraft-amp-OpenGL-shaders/td-p/1664368&lt;/A&gt; which will be split into 3 separate reports.&lt;BR /&gt;&lt;BR /&gt;Link to the tracking issue on Sodium's github &lt;A href="https://github.com/CaffeineMC/sodium/issues/3004" target="_blank" rel="noopener"&gt;https://github.com/CaffeineMC/sodium/issues/3004&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;The frame persentation layer in the Xe-HPG driver is busted. Frames will present extremely erratically. This manifests in the game's motion appearing jittery, despite no frametime spikes being present to explain the jitter. The workaround is to increase render ahead limit to 4 or more and cap the framerate to somewhere below the average, which still doesn't solve the issue entirely.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;Video of the issue: &lt;/SPAN&gt;&lt;A class="" href="https://drive.google.com/file/d/1VsygjDYucoz82VyD47mD38dcq22nVkb_/view?usp=sharing" target="_blank" rel="noopener nofollow noreferrer"&gt;&lt;SPAN class=""&gt;https://drive.google.com/file/d/1VsygjDYucoz82VyD47mD38dcq22nVkb_/view?usp=sharing&lt;/SPAN&gt;&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;To observe the issue these criteria need to be met&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;- The framerate mustn't be the in the hundreds. So you either need to run shaders or have a very high render distance in an intensive scene.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;- The framerate mustn't be capped below the uncapped average framerate.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;- Render Ahead Limit musn't be set to 4 or higher.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN class=""&gt;Even after increasing the render ahead limit the frame presentation appears to be somewhat funky especially during lag spikes.&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Reproduction Steps&lt;BR /&gt;&lt;BR /&gt;Preparation:&lt;BR /&gt;&lt;/STRONG&gt;- Install Iris &amp;amp; Sodium for 1.21.4 :&amp;nbsp;&lt;A class="" href="https://github.com/IrisShaders/Iris/blob/multiloader-new/docs/guide.md" target="_blank" rel="noopener nofollow noreferrer"&gt;https://github.com/IrisShaders/Iris/blob/multiloader-new/docs/guide.md&lt;/A&gt;&lt;BR /&gt;- Unpack the shaderpacks.zip inside the (...)\AppData\Roaming\.minecraft folder&lt;BR /&gt;- Go into options&amp;gt;video settings&amp;gt;shaderpacks and select "complementary unbound 5.4 + euphoria patches 1.5.2"&lt;BR /&gt;- Press apply&lt;BR /&gt;&lt;BR /&gt;&lt;STRONG&gt;Reproduction&lt;/STRONG&gt;&lt;BR /&gt;These settings concide with the performance of my B580. I'm bringing the FPS to around 100. On older cards you may not need to set render distance to such high value to achieve this FPS.&lt;BR /&gt;&lt;BR /&gt;- Enable the provided shaders to lower your framerate&lt;BR /&gt;- Create a new world&lt;BR /&gt;- Set render distance to 32&lt;BR /&gt;- It is advised to turn off view bobbing&lt;BR /&gt;- Fly around in a circle while rotating your camera&lt;BR /&gt;&lt;BR /&gt;If you go to "options&amp;gt;video settings&amp;gt;advanced&amp;gt;render ahead limit" and change that to 4 or a higher value the issue will be greately alleviated.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 11 Feb 2025 16:48:23 GMT</pubDate>
      <guid>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665020#M2576</guid>
      <dc:creator>djmrFunnyMan</dc:creator>
      <dc:date>2025-02-11T16:48:23Z</dc:date>
    </item>
    <item>
      <title>Re: Frame presentation extremely erratic in Minecraft with the Sodium performance mod installed (Xe-</title>
      <link>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665031#M2580</link>
      <description>&lt;P&gt;&lt;a href="https://community.intel.com/t5/user/viewprofilepage/user-id/237032"&gt;@karen_intel&lt;/a&gt;&amp;nbsp; the developer of sodium said they'll respond if intel (presumably meaning you) responds to this post, as currently there is simply nothing for them to respond to. So like I suppose give them something to go off and you can continue from there.&lt;/P&gt;</description>
      <pubDate>Tue, 11 Feb 2025 17:27:43 GMT</pubDate>
      <guid>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665031#M2580</guid>
      <dc:creator>djmrFunnyMan</dc:creator>
      <dc:date>2025-02-11T17:27:43Z</dc:date>
    </item>
    <item>
      <title>Re: Frame presentation extremely erratic in Minecraft with the Sodium performance mod installed (Xe-</title>
      <link>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665032#M2581</link>
      <description>&lt;P class="sub_section_element_selectors"&gt;Hey&amp;nbsp;&lt;A class="sub_section_element_selectors" href="https://community.intel.com/t5/user/viewprofilepage/user-id/410902" target="_blank"&gt;@djmrFunnyMan&lt;/A&gt;&amp;nbsp;thanks for opening the thread so the dev can see.&lt;/P&gt;
&lt;P class="sub_section_element_selectors"&gt;As I mentioned before, we need to isolate the issue in a homebrew code (raw code focusing on the issue) to do some testing on our end with the code, debug, root cause the issue and report it internally.&lt;/P&gt;
&lt;P class="sub_section_element_selectors"&gt;Finished products require an NDA which we cannot handle here and as we don't need access to the whole code, we require the isolation of the problematic shader in a small piece of code.&lt;/P&gt;
&lt;P class="sub_section_element_selectors"&gt;Thank you. Hope they reply soon&lt;BR /&gt;Karen&lt;/P&gt;</description>
      <pubDate>Tue, 11 Feb 2025 17:28:21 GMT</pubDate>
      <guid>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665032#M2581</guid>
      <dc:creator>karen_intel</dc:creator>
      <dc:date>2025-02-11T17:28:21Z</dc:date>
    </item>
    <item>
      <title>Re: Frame presentation extremely erratic in Minecraft with the Sodium performance mod installed (Xe-</title>
      <link>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665049#M2582</link>
      <description>&lt;P&gt;Hi, I'm the developer of the aforementioned project.&lt;/P&gt;&lt;P&gt;The source code for the project is located here and is provided under a source-available license: &lt;A href="https://github.com/CaffeineMC/Sodium" target="_blank"&gt;https://github.com/CaffeineMC/Sodium&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There is not a specific shader involved here, as it is a frame presentation issue and happens regardless of what shaders are actively being rendered with. Specifically, the frames that are scanned out to the monitor may appear out-of-order and/or have significant judder, despite the fact that the application is maintaining a high frame rate and not modifying frame presentation in any manner.&lt;/P&gt;&lt;P&gt;My only guess as to what is causing the problem in our code is the fact that we insert one semaphore right after the buffer swap (see &lt;A href="https://github.com/CaffeineMC/sodium/blob/dev/common/src/main/java/net/caffeinemc/mods/sodium/mixin/core/MinecraftMixin.java" target="_blank"&gt;here&lt;/A&gt;), insert it into a deque, and then await the oldest semaphore if there are more than 3 outstanding frames in-flight to the driver. In effect, this creates a "frame render ahead" limit. This is required for our application since we don't want an unlimited number of in-flight memory transfers from CPU-&amp;gt;GPU to be queued, like most games.&lt;/P&gt;</description>
      <pubDate>Tue, 11 Feb 2025 19:07:56 GMT</pubDate>
      <guid>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665049#M2582</guid>
      <dc:creator>JellySquid</dc:creator>
      <dc:date>2025-02-11T19:07:56Z</dc:date>
    </item>
    <item>
      <title>Re: Frame presentation extremely erratic in Minecraft with the Sodium performance mod installed (Xe-</title>
      <link>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665093#M2583</link>
      <description>&lt;P&gt;Hey&amp;nbsp;&lt;a href="https://community.intel.com/t5/user/viewprofilepage/user-id/411333"&gt;@JellySquid&lt;/a&gt;&amp;nbsp;thanks a lot for your explanation &lt;LI-EMOJI id="lia_slightly-smiling-face" title=":slightly_smiling_face:"&gt;&lt;/LI-EMOJI&gt;&lt;BR /&gt;These pointers will come in handy when debugging this behavior&lt;BR /&gt;I'll reach out to you if there's something I need help with&lt;/P&gt;
&lt;P&gt;&lt;a href="https://community.intel.com/t5/user/viewprofilepage/user-id/410902"&gt;@djmrFunnyMan&lt;/a&gt;&amp;nbsp;I will proceed to triage this case&lt;BR /&gt;Any update I'll let you both know here&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Karen&lt;/P&gt;</description>
      <pubDate>Tue, 11 Feb 2025 22:20:36 GMT</pubDate>
      <guid>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1665093#M2583</guid>
      <dc:creator>karen_intel</dc:creator>
      <dc:date>2025-02-11T22:20:36Z</dc:date>
    </item>
    <item>
      <title>Re: Frame presentation extremely erratic in Minecraft with the Sodium performance mod installed (Xe-</title>
      <link>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1666721#M2595</link>
      <description>In case it's useful, I'm seeing the same issue on Lunar Lake as well (Intel Core Ultra 7 258V + Intel Arc 140V iGPU) i.e. the game becomes very jittery when the fps is low (e.g. when playing with shaders) and setting an fps limit drastically improved smoothness</description>
      <pubDate>Mon, 17 Feb 2025 02:30:32 GMT</pubDate>
      <guid>https://community.intel.com/t5/Developing-Games-on-Intel/Frame-presentation-extremely-erratic-in-Minecraft-with-the/m-p/1666721#M2595</guid>
      <dc:creator>retrixe</dc:creator>
      <dc:date>2025-02-17T02:30:32Z</dc:date>
    </item>
  </channel>
</rss>

