Announcement

Collapse
No announcement yet.

Torvalds Is Unconvinced By LTO'ing A Linux Kernel

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

  • #51
    Originally posted by caligula View Post
    I also use Windows 8.1 for gaming and Mac OS X and can sure tell you that the rest of the world doesn't care. Mac apps are huge. Windows games are huge. The binaries are huge. Nothing is optimized well. Windows updater for Java doesn't delete old versions and the C: drive can be filled with 50 versions of Java 5 and 60 versions of Java 6. Nobody cares. On top of that they constantly run antivirus software which slows down the machine.
    We care. One might ask why you're on a Linux forum if your philosophy is so different.

    Comment


    • #52
      Originally posted by Brane215 View Post
      I've used freshest gcc I could find. Last few gcc bumps in gentoo were mine, since I couldn't wait for an official ebuild. I recompiled everything so many times.

      And even with gcc-4.8.2 and freshest binutils, my list of problematic packages was quite long and not shrinking much.
      I think you posted the list in another thread. But have you posted it to GCC bugzilla?

      Comment


      • #53
        Originally posted by curaga View Post
        I think you posted the list in another thread. But have you posted it to GCC bugzilla?
        No. AFAIK they need easily testable small example that exhibits the error. This means that I was expected to sit down, understand what's going on and reduce bazillion files to one of a few lines.

        I didn't have the time nor knowledge for such things.

        And have I just showed them whole package in the report, what good would that do ? They must have known things aren't 100% peachy since so many packages failed.
        And without doing the journey myself I'd just report what they already know - not all packages compile with LTO. And list of those was not shrinking, so they obviously haven't been investing work into this directly and one or a few more package names wouldn't mean a thing.

        Comment


        • #54
          Having such a list publicly documented would help a lot of people: users to avoid using LTO on those, devs to focus on those. You yourself complained about lack of documentation on LTO.

          If not a bug, then a gcc wiki page "Problematic packages with LTO" or such.

          Comment


          • #55
            Originally posted by curaga View Post
            Having such a list publicly documented would help a lot of people: users to avoid using LTO on those, devs to focus on those. You yourself complained about lack of documentation on LTO.

            If not a bug, then a gcc wiki page "Problematic packages with LTO" or such.
            maybe, but I have a strong feeling they know about those holes.

            Besides, this has made me reGoogle sh*t about LTO.

            So it sent me back to "GCC Internals Manual", which I either didn't see before or it was too high for me and my brain perceived it as white noise.

            Be it as it may, now I can kind of follow it. And it deals with LTO and -fwhopr etc.

            I'll try to read through it and see if I can contibute in more useful way after that.

            Reading that stuff gives me headaches, but it sure beats long nights guessing my way around without any documentation...

            Comment


            • #56
              Originally posted by curaga View Post
              I care. One might ask why you're on a Linux forum if your philosophy is so different from mine.
              FTFY.
              One can care about linux and still not care about what you specifically care.

              Comment


              • #57
                Originally posted by erendorn View Post
                FTFY.
                One can care about linux and still not care about what you specifically care.
                I use Linux because it's great for servers, embedded and development desktops, but most games only work on Windows and Macs are great when travelling since their power consumption is low (only on Mac OS X), great UI/UX, great looks, good quality, nice.

                Comment


                • #58
                  Originally posted by ryao View Post
                  It turns out this is not strictly correct. Older Linux kernels use the ts bit on x86 to try to avoid reloads as much as possible:

                  This is related to this question. I'm not an expert on Linux device drivers or kernel modules, but I've been reading "Linux Device Drivers" [O'Reilly] by Rubini & Corbet and a number of online


                  It is still basically what I described earlier though. The kernel simply does not need floating point arithmetic. Sometimes, vector instructions are useful, but in those times, we use critical sections. Anyway, few kernel developers ever use these functions.
                  yes, floating point is banned from the kernel for a couple reason
                  one being just that, that its behavior is dependent on some flags (and they are cpu wide)

                  check out http://softpixel.com/~cwright/programming/simd/sse.php , the mxcsr register is for sse (x87 has even more stuff)

                  Comment


                  • #59
                    Originally posted by gens View Post
                    yes, floating point is banned from the kernel for a couple reason
                    one being just that, that its behavior is dependent on some flags (and they are cpu wide)

                    check out http://softpixel.com/~cwright/programming/simd/sse.php , the mxcsr register is for sse (x87 has even more stuff)
                    can't edit
                    http://wiki.osdev.org/SSE better explains what needs to be done
                    also i'm not 100% about how userspace floating point is handled, never had problems with it (tbh never needed to change the state, so..)

                    Comment


                    • #60
                      Originally posted by Brane215 View Post
                      Have you noticed that even now even here no one actually knows even loosely WTF this is and how it is supposed to work ?
                      Speak for yourself.

                      Comment

                      Working...
                      X