Announcement

Collapse
No announcement yet.

ORC Unwinder For Linux 4.14, Boosts Kernel Performance By Disabling Frame Pointers

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

  • #31
    Originally posted by bug77 View Post

    Your claim, your duty to prove it.



    When the kernel is both custom and non-debug, you can't automatically pin all performance gains on removing the debug info.
    the debug information itself doesn't impact performance.

    some kernel debug options do while others don't....

    rule 1 of performance work is: Measure Measure Measure.

    Comment


    • #32
      Originally posted by arjan_intel View Post

      the debug information itself doesn't impact performance.

      some kernel debug options do while others don't....

      rule 1 of performance work is: Measure Measure Measure.
      I know, I was just highlighting debianxfce's bs for the uninitiated.

      Edit: Most likely, his beloved 1000Hz introduces more overhead than the debug options he strips down.
      Last edited by bug77; 05 September 2017, 10:03 AM.

      Comment


      • #33
        Originally posted by linuxgeex View Post
        frame pointer != stack pointer.
        i never said otherwise. that's why we have 5 of 8 left on x86 and 14 of 16 left on amd64

        Comment


        • #34
          Originally posted by Wielkie G View Post
          There is no such thing as a "pic register" (or what did you mean really?).
          there is, you are just showing lack of education. you need ip-relative addressing for pic and x86 didn't have one. so they had to waste register

          Comment


          • #35
            Originally posted by linuxgeex View Post
            x86 has a lot more than 8 GPR's thanks to register renaming
            those aren't registers, compiler will still do lots of spilling

            Comment


            • #36
              Originally posted by debianxfce View Post
              16. Don't use debug kernels. Debug kernels are slow.
              but nobody is using them

              Comment


              • #37
                Originally posted by Xorg View Post
                Code:
                $ uname -a
                Linux localhost 4.12.10-1-ck-sandybridge #1 SMP PREEMPT Wed Aug 30 15:49:36 EDT 2017 x86_64 GNU/Linux
                
                $ zgrep CONFIG_FRAME_POINTER /proc/config.gz
                CONFIG_FRAME_POINTER=y
                Ah. True story on Arch.
                Uh,,,, "Since gcc 4.6.0 adds -fomit-frame-pointer to the default set of -O2 flags for both i686 and x86_64, isn't enabling this option in the kernel's config redundant?" (https://bugs.archlinux.org/task/24231)

                Comment


                • #38
                  Originally posted by halo9en View Post

                  Uh,,,, "Since gcc 4.6.0 adds -fomit-frame-pointer to the default set of -O2 flags for both i686 and x86_64, isn't enabling this option in the kernel's config redundant?" (https://bugs.archlinux.org/task/24231)
                  kconfig has both -O2 and -Os as supported options, and kbuild supports different CFLAGS (adding/removing/testing) per subsystem/module/source file. I think that enabling/disabling the frame pointer even when -O2 is selected is about developers trying to get intelligible stack traces from non-debug builds. And this topic is exactly about how this new ORC unwinder will improve the reliability of the stack unwinder, with the happy result that developers won't need to jump though this hoop any more. :-)

                  Comment


                  • #39
                    Up to 4.13 it was possible to unset CONFIG_FRAME_POINTER without any additional options. Now in order to disable frame pointers we have to choose unwinder. Why does it happened? I'd like to keep my kernel as efficient as possible without any debugging features, and someone just forces to have their tracing code in every kernel. Is there a way to disable any tracing code in new kernel?

                    Comment

                    Working...
                    X