Intel "Performance Tips" Published For Optimal Linux Graphics Use

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • phoronix
    Administrator
    • Jan 2007
    • 67377

    Intel "Performance Tips" Published For Optimal Linux Graphics Use

    Phoronix: Intel "Performance Tips" Published For Optimal Linux Graphics Use

    Added today to the Mesa documentation for the open-source Intel OpenGL/Vulkan drivers used on Linux systems is a set of "performance tips" for ensuring an optimal Intel Linux graphics 3D accelerated experience...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite
  • nuetzel
    Senior Member
    • May 2016
    • 754

    #2
    Boot into Win... to get latest firmware, currently? - Really?
    Last edited by nuetzel; 15 January 2025, 09:53 AM. Reason: @Michael - Several clicks to write a comment?

    Comment

    • Quackdoc
      Senior Member
      • Oct 2020
      • 5089

      #3
      them working on getting fwupd working is massive. it's been a while since I updated my firmware since it's been such a massive pain. ASPM and rebar I didn't really find I needed, above 4g decoding seems to work for me, but if it helps I guess that's nice.

      Comment

      • nuetzel
        Senior Member
        • May 2016
        • 754

        #4
        ReBAR (AMD SAM) together with 'above 4g decoding' is needed for best speed (AMD AM4/AM5/etc, too).
        To get this one have to disabling CSM and switching to UEFI boot (GPT).
        Linux has it since 2017: #2

        See here, too: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12404 ;-)

        Anyone know where to find ASPM in AMD BIOSes?
        It should be something like ASPM L1/L0 (PM L1 SS).
        ASRock B550 PG Riptide (AM4)

        Currently only this in dmesg:
        ​[ 0.551611] [ T1] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments M
        SI EDR HPX-Type3]

        Update
        It is PM L1 SS / ASPM L1 SS
        valid modes are: L1.1 / L1.2 / L1.1_L1.2

        With L1.1_L1.2 dmesg is the same but

        lspci -vv
        LnkCap: Port #0, Speed 16GT/s, Width x8, ASPM L1, Exit Latency L1 <32us
        ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
        LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
        L1SubCap: PCI-PM_L1.2- PCI-PM_L1.1+ ASPM_L1.2- ASPM_L1.1+ L1_PM_Substates+
        L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L1, Exit Latency L1 <64us
        ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
        LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
        L1SubCap: PCI-PM_L1.2- PCI-PM_L1.1+ ASPM_L1.2- ASPM_L1.1+ L1_PM_Substates+
        L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1
        us
        ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1
        us
        ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L0s L1, Exit Latency L0s <2us, L1 <32us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L0s L1, Exit Latency L0s <2us, L1 <32us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L0s L1, Exit Latency L0s <2us, L1 <32us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM L1 Enabled; LnkDisable- CommClk+
        LnkCap: Port #0, Speed 8GT/s, Width x4, ASPM L1, Exit Latency L1 <64us
        ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
        LnkCtl: ASPM Disabled; LnkDisable- CommClk+
        LnkCap: Port #8, Speed 8GT/s, Width x1, ASPM L1, Exit Latency L1 <64us
        ClockPM- Surprise- LLActRep+ BwNot+ ASPMOptComp+
        LnkCtl: ASPM Disabled; LnkDisable- CommClk+
        pcilib: sysfs_read_vpd: read failed: No such device
        LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s, Exit Latency L0s <64ns
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        pcilib: sysfs_read_vpd: read failed: No such device
        LnkCap: Port #0, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s unlimited, L1
        <64us
        ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
        L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
        LnkCap: Port #0, Speed 8GT/s, Width x16, ASPM L1, Exit Latency L1 <1us
        ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
        L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
        L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
        LnkCap: Port #0, Speed 8GT/s, Width x16, ASPM L1, Exit Latency L1 <1us
        ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1
        us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1
        us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1
        us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1
        us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        LnkCap: Port #0, Speed 16GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <64ns, L1 <1
        us
        ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
        LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
        Last edited by nuetzel; 15 January 2025, 01:24 PM. Reason: Update included.

        Comment

        • Quackdoc
          Senior Member
          • Oct 2020
          • 5089

          #5
          Originally posted by nuetzel View Post
          ReBAR (AMD SAM) together with 'above 4g decoding' is needed for best speed (AMD AM4/AM5/etc, too).
          To get this one have to disabling CSM and switching to UEFI boot (GPT).
          Linux has it since 2017: #2

          See here, too: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12404 ;-)

          Anyone know where to find ASPM in AMD BIOSes?
          It should be something like ASPM L1/L0 (PM L1 SS).
          ASRock B550 PG Riptide (AM4)

          Currently only this in demsg:
          ​[ 0.551611] [ T1] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments M
          SI EDR HPX-Type3]
          aspm is not exposed in many bios, you can try to see if it is here https://github.com/DavidS95/Smokeless_UMAF/ but be warned, in many cases it won't be, and using this can sometimes brick a bios hard, so if your mobo doesn't support one of the dual bios or advanced bios flashing stuff, don't use it.

          honestly I don't think it would make a massive difference anyways. aspm would just be for energy savings when idling. and currently my idle without it is 20w on a system that has 3 monitors.

          4k60, 1080p60 and 960p60.

          as for rebar, Im, not sure if it helps, im on a ryzen 2600 currently so I can't test it again, but when I did have accsess I didn't notice a difference between it and above 4g decoding only.

          Comment

          • coder
            Senior Member
            • Nov 2014
            • 8954

            #6
            Originally posted by Intel
            - For discrete GPUs:
            + Enable `ReBAR`
            + Enable `ASPM`
            I find it weird that ASPM would improve performance. However, if it comes at no significant detriment, then sure I'd enable it.

            Comment

            • coder
              Senior Member
              • Nov 2014
              • 8954

              #7
              Michael , this thread doesn't seem to be properly linked from the article.

              Comment

              • nuetzel
                Senior Member
                • May 2016
                • 754

                #8
                Originally posted by coder View Post
                I find it weird that ASPM would improve performance. However, if it comes at no significant detriment, then sure I'd enable it.
                Green touch...

                But Intel did GREAT things for the eco-system (Linux/OSS).

                Comment

                • rogerx
                  Senior Member
                  • Dec 2013
                  • 387

                  #9
                  Originally posted by coder View Post
                  I find it weird that ASPM would improve performance. However, if it comes at no significant detriment, then sure I'd enable it.
                  As I reread the statement within the article, "ASPM (Active-State Power Management) improving performance", think the statement intention -- (power savings) performance would be improved. Proof reading is quickly becoming a lost skill, faster than the quickest graphics card on the market nowadays!

                  ASPM is available on recent Gigabyte BIOS/EFI motherboards, doesn't so-called brick my Z790 UD AC motherboard, and from my research due to a significant lacking of documentation for BIOS/EFI settings, found ASPM is primarily utilized/targeted for laptops/notebooks/portable devices depending upon battery, rather than for desktop computers. ASPM public statements from what I read, all stated ASPM is solely targeted for power savings. (eg. PCI sleep states) So chances are, if you're using a laptop and the BIOS/EFI negates mentioning anything about ASPM but has native power management settings/options within BIOS/EFI, likely ASPM is provided/enabled under the hood? And, will likely will find relevant ASPM statements within Linux kernel boot messages?

                  Comment

                  • dlq84
                    Senior Member
                    • Jul 2012
                    • 434

                    #10
                    Originally posted by nuetzel View Post
                    Boot into Win... to get latest firmware, currently? - Really?
                    You should have read the next sentence. They are working on fwupd support, something neither AMD nor Nvidia has support for, and there are no known plans. So right there Intel is doing better than all other discrete GPU makers. <- AMD, take notes.
                    Last edited by dlq84; 18 January 2025, 10:29 AM.

                    Comment

                    Working...
                    X