Announcement

Collapse
No announcement yet.

Linux Kernel Performance Counter Subsystem

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

  • Linux Kernel Performance Counter Subsystem

    Phoronix: Linux Kernel Performance Counter Subsystem

    Thomas Gleixner has proposed a series of patches to the Linux kernel that would (finally) introduced a performance counter sub-system. This sub-system would make it possible to read performance-oriented data off special registers on modern processors such as the number of CPU instructions executed, cache misses, branches mis-predicted, etc.Thomas describes this proposed performance counter subsystem as being very simple (it only takes a few lines of user-space code to read the counters) but still an extensible design that can implement a full range of features...

    http://www.phoronix.com/vr.php?view=NjkxMQ

  • #2
    isn't that also possible with systemtap?

    Comment


    • #3
      I have been told that IBM mainframes can do this. I.e. count how many cycles a process have taken, how much ram was used and all sorts of things that can be used to write a bill to the person that have ordered the process to run.

      Perhaps it is an IRIX feature? I don't know.

      Comment


      • #4
        Originally posted by Louise View Post
        I have been told that IBM mainframes can do this. I.e. count how many cycles a process have taken, how much ram was used and all sorts of things that can be used to write a bill to the person that have ordered the process to run.

        Perhaps it is an IRIX feature? I don't know.
        Do you mean AIX? IRIX is an SGI operating system (though probably just as concerned with measuring performance, for completely different reasons).

        Comment


        • #5
          Originally posted by Ex-Cyber View Post
          Do you mean AIX?
          Sorry, yes it was AIX I tought of

          Originally posted by Ex-Cyber View Post
          IRIX is an SGI operating system (though probably just as concerned with measuring performance, for completely different reasons).
          Why is that???

          Comment


          • #6
            For a while, SGI was the leader in real-time CGI (e.g. OpenGL has its roots in SGI's proprietary 3D API).

            Comment


            • #7
              Originally posted by Ex-Cyber View Post
              For a while, SGI was the leader in real-time CGI (e.g. OpenGL has its roots in SGI's proprietary 3D API).
              I thought OpenGL was actually their proprietary 3D Graphics API, which then they released as a royalty free open standard. I don't quite remember what name did it have before becoming OpenGL, IRIS GL was the name... For more info see this and this

              Comment


              • #8
                The Core 2 performance counters are the same ones oprofile uses, right? So this would be a new infrastructure for collecting the same data you could get by leaving oprofile running long-term?

                oprofile can use Core 2's two performance counters to count cache misses, pipeline stalls, uops dispatched or retired, clock cycles taken, and various other events. So yeah, perf counters are really handy. This easy-to-use interface to them might make it easier to profile some things... Esp. if it can be done without root. That would be a huge advantage, because it's easy to lock up a machine with oprofile (set a counter to trigger too often and the machine is stuck in an interrupt loop), so I wouldn't give users of a cluster the ability to run oprofile. If this is a safe way to let users use perf counters, it would be great for people optimizing code on machines they have access to but aren't root on.

                Comment


                • #9
                  Originally posted by Louise View Post
                  Sorry, yes it was AIX I tought of
                  To answer your original question: yes, AIX has advanced accounting, which is based on the accounting technology features in IBM's mainframes.

                  Comment

                  Working...
                  X