Announcement

Collapse
No announcement yet.

Idea Raised For Reducing The Size Of The AMDGPU Driver With Its Massive Header Files

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Idea Raised For Reducing The Size Of The AMDGPU Driver With Its Massive Header Files

    Phoronix: Idea Raised For Reducing The Size Of The AMDGPU Driver With Its Massive Header Files

    Following the weekend news of the AMDGPU kernel driver becoming too large that it's causing the Plymouth boot splash screen on slower Linux systems to time-out, longtime AMD Linux graphics driver engineer Marek Olšák expressed a new idea for helping to reduce some bloat from this AMD kernel graphics driver...

    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

  • #2
    I have to say, I'm not a big fan of moving the AMDGPU headers into a separate repository. Pruning the the headers and eliminating the unused bits seems to me as a much more sane solution to this problem.

    Of course an even better solution would be to not store generated code in the kernel tree at all, and store the program that generates that source in stead, though that might prove difficult in the case of AMDGPU. I am not sure if that program/those programs are publicly available.

    Comment


    • #3
      Okay, that's repo bloat. But how does this affect the alleged binary size bloat? It is not that those headers result in unused symbols, is it?

      Comment


      • #4
        Or maybe let the AMD devs port to the open source driver the remaining important stuff (if any) not yet present in the open source driver and then remove AMDGPU altogether.

        Comment


        • #5
          Get rid of plymouth or at least its fancy boot splash screens. Problem solved.

          Comment


          • #6
            Originally posted by oleid View Post
            Okay, that's repo bloat. But how does this affect the alleged binary size bloat? It is not that those headers result in unused symbols, is it?
            That’s exactly what I said in the last comment thread on this topic

            Comment


            • #7
              Originally posted by DanL View Post
              Get rid of plymouth or at least its fancy boot splash screens. Problem solved.
              Plymouth's fancy splash screens contribute considerably to linux feeling polished or good to the average person, as silly as that might seem

              Comment


              • #8
                Originally posted by rhbvkleef View Post
                I have to say, I'm not a big fan of moving the AMDGPU headers into a separate repository. Pruning the the headers and eliminating the unused bits seems to me as a much more sane solution to this problem.
                I think some of what he was proposing to prune was the documentation they contain. If that's needed to figure out what the definitions mean and how to use them, then you'd want that information to be maintained somewhere. If just the needed definitions are in the kernel tree, then these should be derived from the full headers that should live elsewhere.

                Originally posted by rhbvkleef View Post
                Of course an even better solution would be to not store generated code in the kernel tree at all, and store the program that generates that source in stead, though that might prove difficult in the case of AMDGPU. I am not sure if that program/those programs are publicly available.
                The headers are generated from their hardware design sources. They're not going to release those, and they'd bloat the tree way worse than the existing headers, if that did happen.

                Comment


                • #9
                  Originally posted by oleid View Post
                  Okay, that's repo bloat. But how does this affect the alleged binary size bloat? It is not that those headers result in unused symbols, is it?
                  What about some way to selectively determine what can be compiled with -Os ? By compiling some parts of the driver that way, you might even achieve faster runtimes! This wouldn't only be applicable to AMD's GPU driver, either.
                  Last edited by coder; 16 September 2024, 12:50 PM.

                  Comment


                  • #10
                    i'm a bit confuse
                    are the headers in the final driver after compilation?
                    i was under the impresion that the headers files are only during compilation
                    if the are not in the finale driver whats the point in moving/trim them?

                    Comment

                    Working...
                    X