)]}'
{
  "log": [
    {
      "commit": "79695e1bb65ba0e21488c360a1bed6e358354aaa",
      "tree": "8b0c8c834342863b95db6a9429871506fe4b893e",
      "parents": [
        "107baecaca0b2843f1a0464701b253e51ef6f0e2"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 30 13:53:54 2012 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 30 14:02:38 2012 -0300"
      },
      "message": "perf stat: Initialize default events wrt exclude_{guest,host}\n\nWhen no event is specified the tools use perf_evlist__add_default(), that will\ncall event_attr_init to initialize the KVM exclusion bits.\n\nWhen the change was made to the tools so that by default guest samples would be\nexcluded, the changes were made just to the parsing routines and to\nperf_evlist__add_default(), not to perf_evlist__add_attrs, that is used so far\njust by perf stat to add multiple events, according to the level of detail\nspecified.\n\nRecently the tools were changed to reconstruct the event name from all the\ndetails in perf_event_attr, not just from .type and .config, but taking into\naccount all the feature bits (.exclude_{guest,host,user,kernel,etc},\n.precise_ip, etc).\n\nThat is when we noticed that the default for perf stat wasn\u0027t the one for the\nrest of the tools, i.e. the .exclude_guest bit wasn\u0027t being set.\n\nI.e. the default, that doesn\u0027t call event_attr_init was showing the :HG\nmodifier:\n\n  $ perf stat usleep 1\n\n   Performance counter stats for \u0027usleep 1\u0027:\n\n            0.942119 task-clock                #    0.454 CPUs utilized\n                   1 context-switches          #    0.001 M/sec\n                   0 CPU-migrations            #    0.000 K/sec\n                 126 page-faults               #    0.134 M/sec\n             693,193 cycles:HG                 #    0.736 GHz                     [40.11%]\n             407,461 stalled-cycles-frontend:HG #   58.78% frontend cycles idle    [72.29%]\n             365,403 stalled-cycles-backend:HG #   52.71% backend  cycles idle\n             465,982 instructions:HG           #    0.67  insns per cycle\n                                               #    0.87  stalled cycles per insn\n              89,760 branches:HG               #   95.275 M/sec\n               6,178 branch-misses:HG          #    6.88% of all branches\n\n         0.002077228 seconds time elapsed\n\nWhile if one explicitely specifies the same events, which will make the parsing code\nto be called and thus event_attr_init is called:\n\n  $ perf stat -e task-clock,context-switches,migrations,page-faults,cycles,stalled-cycles-frontend,stalled-cycles-backend,instructions,branches,branch-misses usleep 1\n\n   Performance counter stats for \u0027usleep 1\u0027:\n\n            1.040349 task-clock                #    0.500 CPUs utilized\n                   2 context-switches          #    0.002 M/sec\n                   0 CPU-migrations            #    0.000 K/sec\n                 127 page-faults               #    0.122 M/sec\n             587,966 cycles                    #    0.565 GHz                     [13.18%]\n             459,167 stalled-cycles-frontend   #   78.09% frontend cycles idle\n             390,249 stalled-cycles-backend    #   66.37% backend  cycles idle\n             504,006 instructions              #    0.86  insns per cycle\n                                               #    0.91  stalled cycles per insn\n              96,455 branches                  #   92.714 M/sec\n               6,522 branch-misses             #    6.76% of all branches         [96.12%]\n\n         0.002078681 seconds time elapsed\n\nFix it by introducing a perf_evlist__add_default_attrs method that will call\nevlist_attr_init in all the perf_event_attr entries before adding the events.\n\nReported-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-4eysr236r0pgiyum9epwxw7s@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "16ee6576e25b83806d26eb771138249fcfb5eddc",
      "tree": "7c717b80f28b5c59ba673dc00f2ca9bd0fc068d4",
      "parents": [
        "16fa7e8200fb9066b77a3f27cbed8e4a9fc71998",
        "9b63776fa3ca96c4ecda76f6fa947b7b0add66ac"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri May 18 13:13:33 2012 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri May 18 13:13:33 2012 -0300"
      },
      "message": "Merge remote-tracking branch \u0027tip/perf/urgent\u0027 into perf/core\n\nMerge reason: We are going to queue up a dependent patch:\n\n\"perf tools: Move parse event automated tests to separated object\"\n\nThat depends on:\n\ncommit e7c72d8\nperf tools: Add \u0027G\u0027 and \u0027H\u0027 modifiers to event parsing\n\nConflicts:\n\ttools/perf/builtin-stat.c\n\nConflicted with the recent \u0027perf_target\u0027 patches when checking the\nresult of perf_evsel open routines to see if a retry is needed to cope\nwith older kernels where the exclude guest/host perf_event_attr bits\nwere not used.\n\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "aa22dd4990e38700b1855555aa0def5215859abb",
      "tree": "b49e4b99db265a0dc7bd38d5605396889985e395",
      "parents": [
        "978da300c7a65494692b329a6a4cbf364afc37c5"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Wed May 16 18:45:47 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 16 12:09:34 2012 -0300"
      },
      "message": "perf target: Rename functions to avoid double negation\n\nRename perf_target__no_{cpu,task} to perf_target__has_{cpu,task} because\nit\u0027s more intuitive and easy to parse (for human beings) when used with\nnegation.\n\nThe names are came out from David Ahern.  It is intended to be a\nmechanical substitution without any functional change.\n\nThe perf_target__none remains unchanged since I couldn\u0027t find a right\nname and it is hardly used with negation.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nSuggested-by: David Ahern \u003cdsahern@gmail.com\u003e\nSuggested-by: Ingo Molnar \u003cmingo@kernel.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1337161549-9870-1-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "20d23aaa31da295378abff4272716e3dfc72baf0",
      "tree": "e7d5a8be4425eb97ac1a396c7b0f08079259d861",
      "parents": [
        "09c0211c0bb0e40231e6ee9a35041d467ed72f16"
      ],
      "author": {
        "name": "David Ahern",
        "email": "dsahern@gmail.com",
        "time": "Tue May 08 09:29:16 2012 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 09 14:14:41 2012 -0300"
      },
      "message": "perf stat: handle ENXIO error for perf_event_open\n\nperf stat on PPC currently fails to run:\n\n$ perf stat -- sleep 1\n  Error: open_counter returned with 6 (No such device or address). /bin/dmesg may provide additional information.\n\n  Fatal: Not all events could be opened.\n\nThe problem is that until 2.6.37 (behavior changed with commit b0a873e)\nperf on PPC returns ENXIO when hw_perf_event_init() fails. With this\npatch we get the expected behavior:\n\n$ perf stat -v -- sleep 1\ncycles event is not supported by the kernel.\nstalled-cycles-frontend event is not supported by the kernel.\nstalled-cycles-backend event is not supported by the kernel.\ninstructions event is not supported by the kernel.\nbranches event is not supported by the kernel.\nbranch-misses event is not supported by the kernel.\n\n...\n\nSigned-off-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1336490956-57145-1-git-send-email-dsahern@gmail.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "979987a567d9e666fe719f337409b2fbb6418f5f",
      "tree": "d8509a657aed3011c8f5f27d4b70f1ed63420b43",
      "parents": [
        "028d455b12719a48b1c4b51ce07a074135726f8f"
      ],
      "author": {
        "name": "David Ahern",
        "email": "dsahern@gmail.com",
        "time": "Tue May 08 09:29:16 2012 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 09 11:58:48 2012 -0300"
      },
      "message": "perf stat: handle ENXIO error for perf_event_open\n\nperf stat on PPC currently fails to run:\n\n$ perf stat -- sleep 1\n  Error: open_counter returned with 6 (No such device or address). /bin/dmesg may provide additional information.\n\n  Fatal: Not all events could be opened.\n\nThe problem is that until 2.6.37 (behavior changed with commit b0a873e)\nperf on PPC returns ENXIO when hw_perf_event_init() fails. With this\npatch we get the expected behavior:\n\n$ perf stat -v -- sleep 1\ncycles event is not supported by the kernel.\nstalled-cycles-frontend event is not supported by the kernel.\nstalled-cycles-backend event is not supported by the kernel.\ninstructions event is not supported by the kernel.\nbranches event is not supported by the kernel.\nbranch-misses event is not supported by the kernel.\n\n...\n\nSigned-off-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1336490956-57145-1-git-send-email-dsahern@gmail.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "77a6f014e9ae330c747c66bebfddf29abf9b89e9",
      "tree": "0d066e78eb3386ea36eaf1d927e680d3958e680f",
      "parents": [
        "d67356e7f80f5c2ef487bedc11a91d5fe18c5a15"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Mon May 07 14:09:04 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 07 17:52:22 2012 -0300"
      },
      "message": "perf stat: Use perf_evlist__create_maps\n\nUse same function with perf record and top to share the code checks\ncombinations of different switches.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nReviewed-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1336367344-28071-8-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "d67356e7f80f5c2ef487bedc11a91d5fe18c5a15",
      "tree": "4aa72408deba73d07cc8232ecb43a3782acb2ab7",
      "parents": [
        "16ad2ffb822cd28e2330284a60fdfec8bb90bbb0"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Mon May 07 14:09:03 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon May 07 17:52:05 2012 -0300"
      },
      "message": "perf target: Consolidate target task/cpu checking\n\nThere are places that check whether target task/cpu is given or not and\nsome of them didn\u0027t check newly introduced uid or cpu list. Add and use\nthree of helper functions to treat them properly.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nReviewed-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1336367344-28071-7-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "4bd0f2d2c0cf14de9c84c2fe689120c6b0f667c8",
      "tree": "d663fdacac1c3d0dd2c75f939fddbe63d2aa86ba",
      "parents": [
        "fe9d18a71d2018f8021fd2bd2aaf5137954ef839"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Thu Apr 26 14:15:18 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 02 15:22:08 2012 -0300"
      },
      "message": "perf tools: Introduce perf_target__validate() helper\n\nThe perf_target__validate function is used to check given PID/TID/UID/CPU\ntarget options and warn if some combination is impossible. Also this can\nmake some arguments of parse_target_uid() function useless as it is checked\nbefore the call via our new helper.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nReviewed-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1335417327-11796-5-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "20f946b4a49dfd89c1c4ddeb55c0632893332674",
      "tree": "a5941f3af63cf52f35f503616bf4cd329e2ee1b6",
      "parents": [
        "bea0340582dc47b447a014f5bf9f460925afdaf4"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Thu Apr 26 14:15:16 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed May 02 15:19:17 2012 -0300"
      },
      "message": "perf stat: Convert to struct perf_target\n\nUse struct perf_target as it is introduced by previous patch.\n\nThis is a preparation of further changes.\n\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nReviewed-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1335417327-11796-3-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "5622c07b4741e0afd7607bce6e850b76eeb23210",
      "tree": "bbd2aa4459baf10ef88aef17fc5b55abaf451ce0",
      "parents": [
        "afda0f94483f46a4caddb529b8f95e0aaf015de6"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Fri Apr 27 14:45:38 2012 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue May 01 14:20:00 2012 -0300"
      },
      "message": "perf stat: Fix case where guest/host monitoring is not supported by kernel\n\nBy default, perf stat sets exclude_guest \u003d 1. But when you run perf on a\nkernel which does not support  host/guest filtering, then you get an\nerror saying the event in unsupported. This comes from the fact that\nwhen the perf_event_attr struct passed by the user is larger than the\none known to the kernel there is safety check which ensures that all\nunknown bits are zero. But here, exclude_guest is 1 (part of the unknown\nbits) and thus the perf_event_open() syscall return EINVAL.\n\nTo my surprise, running perf record on the same kernel did not exhibit\nthe problem. The reason is that perf record handles the problem by\ncatching the error and retrying with guest/host excludes set to zero.\nFor some reason, this was not done with perf stat. This patch fixes this\nproblem.\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Gleb Natapov \u003cgleb@redhat.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Joerg Roedel \u003cjoro@8bytes.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nLink: http://lkml.kernel.org/r/20120427124538.GA7230@quad\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "666e6d48c57921874008d97aac13f6ee3e24fd55",
      "tree": "89cd04825d9d30d2d36cb1d219cb64267293160c",
      "parents": [
        "e7b3ba6d8b29904c336e3e6a018bb80d1f63b1f4"
      ],
      "author": {
        "name": "Robert Richter",
        "email": "robert.richter@amd.com",
        "time": "Thu Apr 05 18:26:27 2012 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Apr 11 17:37:16 2012 -0300"
      },
      "message": "perf stat: Declare some references static\n\nThis references are not exported, use static declaration.\n\nSigned-off-by: Robert Richter \u003crobert.richter@amd.com\u003e\nCc: Ingo Molnar \u003cmingo@kernel.org\u003e\nLink: http://lkml.kernel.org/r/1333643188-26895-4-git-send-email-robert.richter@amd.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "4c19ea453d81cf8bd9bd446e6b129998f79997e7",
      "tree": "92b2bb388bc799beca967c150c9f838a8eab9522",
      "parents": [
        "5f537a26590e696466aae7f41e6b77e92c8486d1"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Fri Mar 16 17:42:19 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Mar 16 16:13:45 2012 -0300"
      },
      "message": "perf stat: Fix event grouping on forked task\n\nWhen event group is enabled for forked task (i.e. no target task was\nspecified) all events were disabled and marked -\u003eenable_on_exec.\nHowever they are not counted at all since only group leader will be\nenabled on exec actually. So the result looked like below:\n\n $ ./perf stat --group -- sleep 1\n\n Performance counter stats for \u0027sleep 1\u0027:\n\n          0.554926 task-clock                #    0.001 CPUs utilized\n     \u003cnot counted\u003e context-switches\n     \u003cnot counted\u003e CPU-migrations\n     \u003cnot counted\u003e page-faults\n     \u003cnot counted\u003e cycles\n   \u003cnot supported\u003e stalled-cycles-frontend\n   \u003cnot supported\u003e stalled-cycles-backend\n     \u003cnot counted\u003e instructions\n     \u003cnot counted\u003e branches\n     \u003cnot counted\u003e branch-misses\n\n       1.001228093 seconds time elapsed\n\nFix it by disabling group leader only.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1331887340-32448-1-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "b52956c961be3a04182ae7b776623531601e0fb7",
      "tree": "2f7ebf4a910dc8cd9014ac9df59f7e2441a5b034",
      "parents": [
        "eca1c3e3f937307331fd1fd5ee5205e57f2131ca"
      ],
      "author": {
        "name": "David Ahern",
        "email": "dsahern@gmail.com",
        "time": "Wed Feb 08 09:32:52 2012 -0700"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 13 22:54:11 2012 -0200"
      },
      "message": "perf tools: Allow multiple threads or processes in record, stat, top\n\nAllow a user to collect events for multiple threads or processes\nusing a comma separated list.\n\ne.g., collect data on a VM and its vhost thread:\n  perf top -p 21483,21485\n  perf stat -p 21483,21485 -ddd\n  perf record -p 21483,21485\n\nor monitoring vcpu threads\n  perf top -t 21488,21489\n  perf stat -t 21488,21489 -ddd\n  perf record -t 21488,21489\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/1328718772-16688-1-git-send-email-dsahern@gmail.com\nSigned-off-by: David Ahern \u003cdsahern@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "9dac6a29e0ce0cd9dec497baa123e216b00b525d",
      "tree": "5f9ed93cbdfa8f8356fc0daea8fa2da07eeae7bd",
      "parents": [
        "5fde2523bddb71d96f12b6ee8d2a9a43cb99da96"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Mon Feb 06 16:44:45 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 06 19:17:39 2012 -0200"
      },
      "message": "perf stat: Align scaled output of cpu-clock\n\nThe output of cpu-clock event is controlled in nsec_printout(),\nbut its alignment was broken:\n\n Performance counter stats for \u0027sleep 1\u0027:\n\n         6,038,774 instructions              #    0.00  insns per cycle\n               180 faults                    #    0.007 K/sec                   [99.95%]\n         1,282,201 branches                  #    0.053 M/sec                   [99.84%]\n      24126.221811 cpu-clock                 [99.62%]\n      24121.689540 task-clock                #   24.098 CPUs utilized           [99.52%]\n\n       1.001001017 seconds time elapsed\n\nThis patch fixes this:\n\n Performance counter stats for \u0027sleep 1\u0027:\n\n        13,540,843 instructions              #    0.00  insns per cycle\n               180 faults                    #    0.007 K/sec                   [99.94%]\n         2,875,386 branches                  #    0.119 M/sec                   [99.82%]\n      24144.221137 cpu-clock                                                    [99.61%]\n      24133.515366 task-clock                #   24.109 CPUs utilized           [99.52%]\n\n       1.001020946 seconds time elapsed\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1328514285-26232-2-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "5fde2523bddb71d96f12b6ee8d2a9a43cb99da96",
      "tree": "2833458233e01dc78a900b444a03f6ee58dc834c",
      "parents": [
        "762b2935fc0ea2eab3a0edc8333fedb95266c7a9"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung.kim@lge.com",
        "time": "Mon Feb 06 16:44:44 2012 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Feb 06 19:17:11 2012 -0200"
      },
      "message": "perf stat: Adjust print unit\n\nThe default \u0027M/sec\u0027 unit is not useful if the result is small enough.\n\nAdjust it dynamically according to the value.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1328514285-26232-1-git-send-email-namhyung.kim@lge.com\nSigned-off-by: Namhyung Kim \u003cnamhyung.kim@lge.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "0d37aa34f8806bb443dd3c8621fd9bdbb50c58bb",
      "tree": "3e245385cdb75fec299f5e145243f062b70fd652",
      "parents": [
        "9ae7d3351aac238eef9646479693105688fd9cc9"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Jan 19 14:08:15 2012 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 24 19:47:37 2012 -0200"
      },
      "message": "perf tools: Introduce per user view\n\nThe new --uid command line option will show only the tasks for a given\nuser, using the proc interface to figure out the existing tasks.\n\nKernel work is needed to close races at startup, but this should already\nbe useful in many use cases.\n\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-bdnspm000gw2l984a2t53o8z@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "15e6392feec311f1e409d77e1ccfe51c1d940365",
      "tree": "f05f7251d39ae656c3157ac97716033c369e247a",
      "parents": [
        "29c9862f1b818bf4caa4c48a30dbe5f25c84ee08"
      ],
      "author": {
        "name": "Namhyung Kim",
        "email": "namhyung@gmail.com",
        "time": "Wed Dec 28 00:35:49 2011 +0900"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 03 14:36:32 2012 -0200"
      },
      "message": "perf stat: Introduce get_ratio_color() helper\n\nThe get_ratio_color() returns appropriate color string based on @ratio.\nIt helps reducing code duplication.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/1325000151-4463-2-git-send-email-namhyung@gmail.com\nSigned-off-by: Namhyung Kim \u003cnamhyung@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "d87f69a16eb2cb96459117b06949a560679002e4",
      "tree": "bbb55b2bd2b6c9e8bd4067aa3279783cb6bd9028",
      "parents": [
        "124ba9403318d834ef21bcd899c22c870708d2c4",
        "384703b8e6cd4c8ef08512e596024e028c91c339"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 20 20:32:03 2011 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Dec 20 20:32:11 2011 +0100"
      },
      "message": "Merge commit \u0027v3.2-rc6\u0027 into perf/core\n\nMerge reason: Update with the latest fixes.\n\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "38f6ae1e1b0d5e8b0a95f88c1eee2c5e8b001631",
      "tree": "1a58d85b805768c0d5ab517770aa09990266379e",
      "parents": [
        "dc440d10e1668b15fe704a23adb9b53fbbb24a44"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Fri Dec 02 09:38:33 2011 +1100"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Dec 05 14:32:40 2011 -0200"
      },
      "message": "perf stat: Failure with \"Operation not supported\"\n\nperf stat is failing on PowerPC:\n\n  Error: open_counter returned with 95 (Operation not supported). /bin/dmesg may provide additional information.\n\n  Fatal: Not all events could be opened.\n\ncommit 370faf1dd046 (perf stat: Fail softly on unsupported events)\nadded a check for failure returning ENOENT, but the POWER backend\nreturns EOPNOTSUPP. It looks like alpha, blackfin and mips do the\nsame.\n\nWith the patch applied, things work as expected:\n\n Performance counter stats for \u0027/bin/true\u0027:\n\n          0.362176 task-clock                #    0.623 CPUs utilized\n                 0 context-switches          #    0.000 M/sec\n                 0 CPU-migrations            #    0.000 M/sec\n                28 page-faults               #    0.077 M/sec\n         1,677,020 cycles                    #    4.630 GHz\n   \u003cnot supported\u003e stalled-cycles-frontend\n   \u003cnot supported\u003e stalled-cycles-backend\n           431,220 instructions              #    0.26  insns per cycle\n           101,889 branches                  #  281.325 M/sec\n             4,145 branch-misses             #    4.07% of all branches\n\n       0.000581361 seconds time elapsed\n\nCc: \u003cstable@kernel.org\u003e # 3.0+\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLink: http://lkml.kernel.org/r/20111202093833.5fef7226@kryten\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "806fb63007447622dd61d9767b4403919737e120",
      "tree": "aa24bf21469afe000a95a4c5a6f810151166be9f",
      "parents": [
        "ee29be625bd7b115d45eba4b0526ff3e24bf3ca0"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 29 08:05:52 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Nov 29 08:05:52 2011 -0200"
      },
      "message": "perf evlist: Always do automatic allocation of pollfd and mmap structures\n\nAt first tools were required to do that, but while writing the python\nbindings to simplify the API I made them auto-allocate when needed.\n\nThis just makes record, stat and top use that auto allocation,\nsimplifying them a bit.\n\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-iokhcvkzzijr3keioubx8hlq@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "50d08e47bc04eb05502f5c86b70bbd19ef1c2778",
      "tree": "655bddc48548db3d878ab416fddc13b3e6d34a6c",
      "parents": [
        "ebf294bf4f147aff29df5a16bfb0f8ebca15feaa"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 04 09:10:59 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Nov 28 10:24:43 2011 -0200"
      },
      "message": "perf evlist: Introduce perf_evlist__add_attrs\n\nReplacing the open coded equivalents in \u0027perf stat\u0027.\n\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-1btwadnf2tds2g07hsccsdse@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "727ab04edbc4767711a7aeff5e00249b267ed4c1",
      "tree": "9cebc2c392b9b3bcaf68f0a50144273ef52a04f1",
      "parents": [
        "c752d04066a36ae30b29795f3fa3f536292c1f8c"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Oct 25 10:42:19 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Oct 26 10:25:02 2011 -0200"
      },
      "message": "perf evlist: Fix grouping of multiple events\n\nThe __perf_evsel__open routing was grouping just the threads for that\nspecific events per cpu when we want to group all threads in all events\nto the first fd opened on that cpu.\n\nSo pass the xyarray with the first event, where the other events will be\nable to get that first per cpu fd.\n\nAt some point top and record will switch to using perf_evlist__open that\ntakes care of this detail and probably will also handle the fallback\nfrom hw to soft counters, etc.\n\nReported-by: Deng-Cheng Zhu \u003cdczhu@mips.com\u003e\nTested-by: Deng-Cheng Zhu \u003cdczhu@mips.com\u003e\nCc: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLink: http://lkml.kernel.org/n/tip-ebm34rh098i9y9v4cytfdp0x@git.kernel.org\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "33e49ea70df066651a17061c62118fc3f075d21f",
      "tree": "8eaa17e37ceb8398859e944385cac328ffcaa1c7",
      "parents": [
        "61a9f324292e6dd4f4b99f5366454788104a0bd9"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@linux.intel.com",
        "time": "Thu Sep 15 14:31:40 2011 -0700"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Sep 29 17:09:46 2011 -0300"
      },
      "message": "perf tools: Make stat/record print fatal signals of the target program\n\nWhen a program crashes under perf there is no message about it, unlike\nwhen running it from bash. This can be confusing and lead to wrong\nactions during debugging.\n\nPrint fatal signals in perf stat/record.\n\nThanks to Furat Afram for finding the problem originally\n\nLink: http://lkml.kernel.org/r/1316122302-24306-1-git-send-email-andi@firstfloor.org\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Andi Kleen \u003cak@linux.intel.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "61a9f324292e6dd4f4b99f5366454788104a0bd9",
      "tree": "261841a30be84174142befc22fce268cdeb423bd",
      "parents": [
        "d4ffd04df175f8cab711d7857173285d971a406a"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Sep 07 17:14:04 2011 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Sep 29 17:09:36 2011 -0300"
      },
      "message": "perf stat: Fix spelling in comment\n\nLink: http://lkml.kernel.org/r/1315437244-3788-6-git-send-email-jim.cromie@gmail.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "d4ffd04df175f8cab711d7857173285d971a406a",
      "tree": "b600b0d2c4706d8fdc2a32aca5d9abc7791c4028",
      "parents": [
        "a1bca6cc87fee26f3d9120b3f3418b7edfc91ec2"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Sep 07 17:14:03 2011 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Sep 29 17:04:30 2011 -0300"
      },
      "message": "perf stat: Allow tab as cvs delimiter\n\nIf option -x \u0027\\t\u0027 is given, convert \u0027\\t\u0027 to \"\\t\".  This makes cvs\nprinting more flexible.\n\nLink: http://lkml.kernel.org/r/1315437244-3788-5-git-send-email-jim.cromie@gmail.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "a1bca6cc87fee26f3d9120b3f3418b7edfc91ec2",
      "tree": "db56295dc56de5d37cc91bb24f04e3e5ac88accc",
      "parents": [
        "19f4740255668ca297dcf9f02d80eb9bc87a1d66"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Sep 07 17:14:02 2011 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Sep 29 17:04:00 2011 -0300"
      },
      "message": "perf stat: Suppress printing std-dev when its 0\n\nFor pretty output only (preserve column for cvs output), dont print\nstd-deviation when its 0.00.  Do this based upon value, instead of\nchecking for --no-aggr, since the stats could conceivably be computed\nover the runs on each CPU, and theres no reason to preclude that.\n\nLink: http://lkml.kernel.org/r/1315437244-3788-4-git-send-email-jim.cromie@gmail.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "19f4740255668ca297dcf9f02d80eb9bc87a1d66",
      "tree": "be6310424c3f7b0abc2f0e353a9304f5e6453878",
      "parents": [
        "56f3bae70638b33477a6015fd362ccfe354fd3ee"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Sep 07 17:14:01 2011 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Sep 29 17:03:46 2011 -0300"
      },
      "message": "perf stat: Fix +- nan% in --no-aggr runs\n\nWithout this patch, running:\n\n$ sudo ./perf stat -r20 --no-aggr -a perl -e \u0027$i++ for 1..100000\u0027\n\nI get computations like this:\n\nCPU0             12.488247 task-clock                #    1.224 CPUs utilized            ( +-  -nan% )\nCPU1             12.488909 task-clock                #    1.225 CPUs utilized            ( +-  -nan% )\nCPU2             12.500221 task-clock                #    1.226 CPUs utilized            ( +-  -nan% )\nCPU3             12.481713 task-clock                #    1.224 CPUs utilized            ( +-  -nan% )\n\nbut with patch, I get:\n\nCPU0              8.233682 task-clock                #    0.754 CPUs utilized            ( +-  0.00% )\nCPU1              8.226318 task-clock                #    0.754 CPUs utilized            ( +-  0.00% )\nCPU2              8.210737 task-clock                #    0.752 CPUs utilized            ( +-  0.00% )\nCPU3              8.201691 task-clock                #    0.751 CPUs utilized            ( +-  0.00% )\n\nNote that without --no-aggr, I get non-0 statistics both before and after patch:\n\n        231.986022 task-clock                #    4.030 CPUs utilized            ( +-  0.97% )\n               212 context-switches          #    0.001 M/sec                    ( +- 12.07% )\n                 9 CPU-migrations            #    0.000 M/sec                    ( +- 25.80% )\n               466 page-faults               #    0.002 M/sec                    ( +-  3.23% )\n       174,318,593 cycles                    #    0.751 GHz                      ( +-  1.06% )\n\nI couldnt see anything wrong in the caller, so fixed it in\nstddev_stats().  ISTM that 0.00 is better than nan, since perf stat was\npassed -A (--no-aggr) so no standard deviation should be expected, and\nnan is suggestive of a deeper error.\n\nWhen running with --no-aggr, perhaps we should suppress the statistics\nprinting entirely, or do so when they are 0.00.\n\nLink: http://lkml.kernel.org/r/1315437244-3788-3-git-send-email-jim.cromie@gmail.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "56f3bae70638b33477a6015fd362ccfe354fd3ee",
      "tree": "27f0a07cf5662f742e07f001c66ae9cf8f59d209",
      "parents": [
        "dcc101d1d02eb80ab0349c5410f8728412c35636"
      ],
      "author": {
        "name": "Jim Cromie",
        "email": "jim.cromie@gmail.com",
        "time": "Wed Sep 07 17:14:00 2011 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Sep 29 17:03:23 2011 -0300"
      },
      "message": "perf stat: Add --log-fd \u003cN\u003e option to redirect stderr elsewhere\n\nThis perf stat option emulates valgrind\u0027s --log-fd option, allowing the\nuser to send perf results elsewhere, and leaving stderr for use by the\nprogram under test.  This complements --output file option, and is\nmutually exclusive with it.\n\n   3\u003eresults  perf stat --log-fd 3          -- $cmd\n   3\u003e\u003eresults perf stat --log-fd 3 --append -- $cmd\n\nThe perl distro\u0027s make test.valgrind target uses valgrind\u0027s --log-fd\noption, I\u0027ve adapted it to invoke perf also, and tested this patch\nthere.\n\nLink: http://lkml.kernel.org/r/1315437244-3788-2-git-send-email-jim.cromie@gmail.com\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nSigned-off-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "51887c8230d57c4d9cc68e3784c52c8f0a708655",
      "tree": "70509225468cddacb24eccdc78c7d8fc9e0197c5",
      "parents": [
        "8bc84f87315e8bdbe242ba788fdc6a74d653b177",
        "4aa9015f8bfd2c8d7cc33a360275b71a9d708b37"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 18 21:58:46 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Aug 18 21:58:46 2011 +0200"
      },
      "message": "Merge branch \u0027perf/core\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core\n\nConflicts:\n\ttools/perf/builtin-stat.c\n"
    },
    {
      "commit": "4aa9015f8bfd2c8d7cc33a360275b71a9d708b37",
      "tree": "868d22562ba20ed87698e69cf33d29cce19764fb",
      "parents": [
        "e71a059832753a8834a5a5080366879954ccdc4d"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Mon Aug 15 22:22:33 2011 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Aug 18 07:46:13 2011 -0300"
      },
      "message": "perf stat: Add -o and --append options\n\nThis patch adds an option (-o) to save the output of perf stat into a\nfile. You could do this with perf record but not with perf stat.\nInstead, you had to fiddle with stderr to save the counts into a\nseparate file.\n\nThe patch also adds the --append option so that results can be\nconcatenated into a single file across runs. Each run of the tool is\nclearly separated by a comment line starting with a hash mark. The -A\noption of perf record is already used by perf stat, so we only add a\nlong option.\n\n$ perf stat -o res.txt date\n$ cat res.txt\n\n Performance counter stats for \u0027date\u0027:\n\n          0.791306 task-clock                #    0.668 CPUs utilized\n                 2 context-switches          #    0.003 M/sec\n                 0 CPU-migrations            #    0.000 M/sec\n               197 page-faults               #    0.249 M/sec\n           1878143 cycles                    #    2.373 GHz\n   \u003cnot supported\u003e stalled-cycles-frontend\n   \u003cnot supported\u003e stalled-cycles-backend\n           1083367 instructions              #    0.58  insns per cycle\n            193027 branches                  #  243.935 M/sec\n              9014 branch-misses             #    4.67% of all branches\n\n       0.001184746 seconds time elapsed\n\nThe option can be combined with -x to make the output file much easier\nto parse.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/20110815202233.GA18535@quad\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "43bece79796c2a39ec98998fd3f1071f04f3d8c3",
      "tree": "14aa396f084d9229fa1a164826115f3f0bd63a58",
      "parents": [
        "d53e8365eaacfdb29253b39d186109f5b4fcc08d"
      ],
      "author": {
        "name": "Lin Ming",
        "email": "ming.m.lin@intel.com",
        "time": "Wed Aug 17 18:42:07 2011 +0800"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Aug 18 07:35:46 2011 -0300"
      },
      "message": "perf tools: Add group event scheduling option to perf record/stat\n\nGroup event scheduling command line option is missing in perf\nrecord/stat.\n\nAdd it to perf record/stat, which is same as in perf top.\n\nReported-by: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Andi Kleen \u003candi@firstfloor.org\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLink: http://lkml.kernel.org/r/1313577727.2754.5.camel@hp6530s\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "f120f9d51be3a7db8991e7b78dc08bab5f8ab8f3",
      "tree": "237926a6231f4009015b8ce4119935a455069395",
      "parents": [
        "adc4bf9955856f8aa081ba613dbf56ffd664f0b7"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "jolsa@redhat.com",
        "time": "Thu Jul 14 11:25:32 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Jul 21 10:41:11 2011 +0200"
      },
      "message": "perf tools: De-opt the parse_events function\n\nMoving out the option parameter from parse_events function,\nand adding new parse_events_option function instead.\n\nThe option parameter is used only to carry \"struct perf_evlist\"\npointer for chaining new events. Putting it away, enable us\nto call parse_events from other places without using the\noption parameter.\n\nSigned-off-by: Jiri Olsa \u003cjolsa@redhat.com\u003e\nCc: acme@redhat.com\nCc: a.p.zijlstra@chello.nl\nCc: paulus@samba.org\nLink: http://lkml.kernel.org/r/1310635534-4013-2-git-send-email-jolsa@redhat.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "3ae9a34d747f9abf2bcc85dc0e77b951513ccdf2",
      "tree": "592baba4f60e156f9b0d596ade75e282ea21f1ab",
      "parents": [
        "343a031f3c4a7a663192cf56368bb5a6c56870c0"
      ],
      "author": {
        "name": "Zhengyu He",
        "email": "zhengyuh@google.com",
        "time": "Thu Jun 23 13:45:42 2011 -0700"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Jul 01 12:52:40 2011 +0200"
      },
      "message": "perf stat: Add noise output for csv mode\n\nPreviously, when you want perf-stat to output the statistics in\ncsv mode, no information of the noise will be printed out.\n\nFor example right now we output this --repeat information:\n\n ./perf stat -r3 -x, sleep 1\n 1.164789,task-clock\n 8,context-switches\n 0,CPU-migrations\n 219,page-faults\n 3337800,cycles\n\nWith this patch, the output will be appended with an additional\nentry for the noise value:\n\n ./perf stat -r3 -x, sleep 1\n 1.164789,task-clock,3.75%\n 8,context-switches,75.00%\n 0,CPU-migrations,100.00%\n 219,page-faults,0.00%\n 3337800,cycles,3.36%\n\nSigned-off-by: Zhengyu He \u003czhengyuh@google.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@ghostprotocols.net\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Venkatesh Pallipadi \u003cvenki@google.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1308861942-4945-1-git-send-email-zhengyuh@google.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2cee77c4505fc581f41b44e18ffc0953b67a414c",
      "tree": "12777ada659829082c27a1da31a295387355fd4b",
      "parents": [
        "64348153c63b8c1f99f19f14a9c3cbd5df70c9d3"
      ],
      "author": {
        "name": "David Ahern",
        "email": "dsahern@gmail.com",
        "time": "Mon May 30 08:55:59 2011 -0600"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Jun 02 13:26:15 2011 -0300"
      },
      "message": "perf stat: clarify unsupported events from uncounted events\n\nperf stat continues running even if the event list contains counters\nthat are not supported. The resulting output then contains \u003cnot counted\u003e\nfor those events which gets confusing as to which events are supported,\nbut not counted and which are not supported.\n\nBefore:\n\nperf stat -ddd -- sleep 1\n\n      Performance counter stats for \u0027sleep 1\u0027:\n\n          0.571283 task-clock                #    0.001 CPUs utilized\n                 1 context-switches          #    0.002 M/sec\n                 0 CPU-migrations            #    0.000 M/sec\n               157 page-faults               #    0.275 M/sec\n         1,037,707 cycles                    #    1.816 GHz\n     \u003cnot counted\u003e stalled-cycles-frontend\n     \u003cnot counted\u003e stalled-cycles-backend\n           654,499 instructions              #    0.63  insns per cycle\n           136,129 branches                  #  238.286 M/sec\n     \u003cnot counted\u003e branch-misses\n     \u003cnot counted\u003e L1-dcache-loads\n     \u003cnot counted\u003e L1-dcache-load-misses\n     \u003cnot counted\u003e LLC-loads\n     \u003cnot counted\u003e LLC-load-misses\n     \u003cnot counted\u003e L1-icache-loads\n     \u003cnot counted\u003e L1-icache-load-misses\n     \u003cnot counted\u003e dTLB-loads\n     \u003cnot counted\u003e dTLB-load-misses\n     \u003cnot counted\u003e iTLB-loads\n     \u003cnot counted\u003e iTLB-load-misses\n     \u003cnot counted\u003e L1-dcache-prefetches\n     \u003cnot counted\u003e L1-dcache-prefetch-misses\n\n       1.001004836 seconds time elapsed\n\nAfter:\n\nperf stat -ddd -- sleep 1\n\n Performance counter stats for \u0027sleep 1\u0027:\n\n          1.350326 task-clock                #    0.001 CPUs utilized\n                 2 context-switches          #    0.001 M/sec\n                 0 CPU-migrations            #    0.000 M/sec\n               157 page-faults               #    0.116 M/sec\n            11,986 cycles                    #    0.009 GHz\n   \u003cnot supported\u003e stalled-cycles-frontend\n   \u003cnot supported\u003e stalled-cycles-backend\n           496,986 instructions              #   41.46  insns per cycle\n           138,065 branches                  #  102.246 M/sec\n             7,245 branch-misses             #    5.25% of all branches\n     \u003cnot counted\u003e L1-dcache-loads\n     \u003cnot counted\u003e L1-dcache-load-misses\n     \u003cnot counted\u003e LLC-loads\n     \u003cnot counted\u003e LLC-load-misses\n     \u003cnot counted\u003e L1-icache-loads\n     \u003cnot counted\u003e L1-icache-load-misses\n     \u003cnot counted\u003e dTLB-loads\n     \u003cnot counted\u003e dTLB-load-misses\n     \u003cnot counted\u003e iTLB-loads\n     \u003cnot counted\u003e iTLB-load-misses\n     \u003cnot counted\u003e L1-dcache-prefetches\n   \u003cnot supported\u003e L1-dcache-prefetch-misses\n\n       1.002397333 seconds time elapsed\n\nv1-\u003ev2:\nchanged supported type from int to bool\n\nv2-\u003ev3\nfixed vertical alignment of new struct element\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nLink: http://lkml.kernel.org/r/1306767359-13221-1-git-send-email-dsahern@gmail.com\nSigned-off-by: David Ahern \u003cdsahern@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c3305257cd4df63e03e21e331a0140ae9c0faccc",
      "tree": "d5b9609bf96f004a9efe0aca326983489718751e",
      "parents": [
        "2cba3ffb9a9db3874304a1739002d053d53c738b"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 19 14:01:42 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 19 14:30:50 2011 +0200"
      },
      "message": "perf stat: Add more cache-miss percentage printouts\n\nPrint out the cache-miss percentage as well if the cache refs were\ncollected, for all the generic cache event types.\n\nBefore:\n\n   11,103,723,230 dTLB-loads                #  622.471 M/sec                    ( +-  0.30% )\n       87,065,337 dTLB-load-misses          #    4.881 M/sec                    ( +-  0.90% )\n\nAfter:\n\n   11,353,713,242 dTLB-loads                #  626.020 M/sec                    ( +-  0.35% )\n      113,393,472 dTLB-load-misses          #    1.00% of all dTLB cache hits   ( +-  0.49% )\n\nAlso ASCII color highlight too high percentages, them when it\u0027s executed on the console.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/n/tip-lkhwxsevdbd9a8nymx0vxc3y@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2cba3ffb9a9db3874304a1739002d053d53c738b",
      "tree": "a81c614ea1be6db95c2d0d1a1e57287a631e9c6b",
      "parents": [
        "b313207286a78abac19f1dd2721292eae598b0f5"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 19 13:30:56 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu May 19 14:29:51 2011 +0200"
      },
      "message": "perf stat: Add -d -d and -d -d -d options to show more CPU events\n\nPrint even more detailed statistics if requested via perf stat -d:\n\n       -d:          detailed events, L1 and LLC data cache\n    -d -d:     more detailed events, dTLB and iTLB events\n -d -d -d:     very detailed events, adding prefetch events\n\nFull output looks like this now:\n\n Performance counter stats for \u0027/home/mingo/hackbench 10\u0027 (5 runs):\n\n       1703.674707 task-clock                #    8.709 CPUs utilized            ( +-  4.19% )\n            49,068 context-switches          #    0.029 M/sec                    ( +- 16.66% )\n             8,303 CPU-migrations            #    0.005 M/sec                    ( +- 24.90% )\n            17,397 page-faults               #    0.010 M/sec                    ( +-  0.46% )\n     2,345,389,239 cycles                    #    1.377 GHz                      ( +-  4.61% ) [55.90%]\n     1,884,503,527 stalled-cycles-frontend   #   80.35% frontend cycles idle     ( +-  5.67% ) [50.39%]\n       743,919,737 stalled-cycles-backend    #   31.72% backend  cycles idle     ( +-  8.75% ) [49.91%]\n     1,314,416,379 instructions              #    0.56  insns per cycle\n                                             #    1.43  stalled cycles per insn  ( +-  2.53% ) [60.87%]\n       272,592,567 branches                  #  160.003 M/sec                    ( +-  1.74% ) [56.56%]\n         3,794,846 branch-misses             #    1.39% of all branches          ( +-  6.59% ) [58.50%]\n       449,982,778 L1-dcache-loads           #  264.125 M/sec                    ( +-  2.47% ) [49.88%]\n        22,404,961 L1-dcache-load-misses     #    4.98% of all L1-dcache hits    ( +-  6.08% ) [55.05%]\n         6,204,750 LLC-loads                 #    3.642 M/sec                    ( +-  8.91% ) [43.75%]\n         1,837,411 LLC-load-misses           #    1.078 M/sec                    ( +-  7.27% ) [12.07%]\n       411,440,421 L1-icache-loads           #  241.502 M/sec                    ( +-  5.60% ) [36.52%]\n        27,556,832 L1-icache-load-misses     #   16.175 M/sec                    ( +-  7.46% ) [46.72%]\n       464,067,627 dTLB-loads                #  272.392 M/sec                    ( +-  4.46% ) [54.17%]\n        10,765,648 dTLB-load-misses          #    6.319 M/sec                    ( +-  3.18% ) [48.68%]\n     1,273,080,386 iTLB-loads                #  747.256 M/sec                    ( +-  3.38% ) [47.53%]\n           117,481 iTLB-load-misses          #    0.069 M/sec                    ( +- 14.99% ) [47.01%]\n         4,590,653 L1-dcache-prefetches      #    2.695 M/sec                    ( +-  4.49% ) [46.19%]\n         1,712,660 L1-dcache-prefetch-misses #    1.005 M/sec                    ( +-  3.75% ) [44.82%]\n\n        0.195622057  seconds time elapsed  ( +-  6.84% )\n\nAlso clean up the attribute construction code to be appending, and factor\nit out into add_default_attributes().\n\nTweak the coverage percentage printout a bit, so that it\u0027s easier to view it\nalongside the +- sttddev colum.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLink: http://lkml.kernel.org/n/tip-to3kgu04449s64062val8b62@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c63ca0c01d73563d4e2ab174bb3dd1e5efb907e6",
      "tree": "c00105af90d900c5eacacb43bbb499229043d0f9",
      "parents": [
        "947b4ad1d198b7303ecc961f4939a331be0c48f0"
      ],
      "author": {
        "name": "David Ahern",
        "email": "dsahern@gmail.com",
        "time": "Fri Apr 29 16:04:15 2011 -0600"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 30 00:18:14 2011 +0200"
      },
      "message": "perf stat: Tell user about unsupported events in the list\n\nSimilar to perf-record, tell user about unsupported events\nthat will not be counted if invoked in verbose mode.\n\ne.g.,\n\n $ perf stat -e dTLB-prefetch-misses -v -- sleep 1\n dTLB-prefetch-misses event is not supported by the kernel.\n dTLB-prefetch-misses: 0 0 0\n\n Performance counter stats for \u0027sleep 1\u0027:\n\n     \u003cnot counted\u003e dTLB-prefetch-misses\n\n        1.001884783  seconds time elapsed\n\nSigned-off-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/r/1304114655-10600-1-git-send-email-dsahern@gmail.com\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "370faf1dd0461ad811852c8abbbcd3d73b1e4fc4",
      "tree": "6933cc889ea07a0dc0841d9af90304a39cf09ec0",
      "parents": [
        "fce3c786d3a49eff397583b4b62fa38df90db937"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 16:11:03 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 16:22:33 2011 +0200"
      },
      "message": "perf stat: Fail softly on unsupported events\n\nDavid Ahern reported this perf stat failure:\n\n\u003e # /tmp/build-perf/perf stat -- sleep 1\n\u003e   Error: stalled-cycles-frontend event is not supported.\n\u003e   Fatal: Not all events could be opened.\n\u003e\n\u003e This is a Dell R410 with an E5620 processor.\n\nFail in a softer fashion on unknown/unsupported events.\n\nReported-by: David Ahern \u003cdsahern@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n006io7hjpn1dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "fce3c786d3a49eff397583b4b62fa38df90db937",
      "tree": "ed452f0040d4b69cbb83a0c4fb80c83cc44d1ae6",
      "parents": [
        "2b427e14b77dbf3e05f1bd0785f1d07ea5fe924e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sat Apr 30 09:03:15 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 16:06:09 2011 +0200"
      },
      "message": "perf stat: Leave more room for percentages\n\nTriple digit percentages do not fit otherwise.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n005io7hjpn1dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "2b427e14b77dbf3e05f1bd0785f1d07ea5fe924e",
      "tree": "207749426e797f00553e15c339965c45398d61e0",
      "parents": [
        "d3d1e86da07b4565815e3dbcd082f53017d215f8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 14:16:18 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 14:35:57 2011 +0200"
      },
      "message": "perf stat: Adjust stall cycles warning percentages\n\nAdjust to color thresholds to better match the percentages seen in\nreal workloads. Both are now a bit more sensitive.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n004io7hjpn1dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d3d1e86da07b4565815e3dbcd082f53017d215f8",
      "tree": "c2fad06e57607b32d943d6b590325ae5d8ef3d01",
      "parents": [
        "129c04cb8ce2e4bf3f17223f58ef16aa8a2cb3b8"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 13:49:08 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 14:35:55 2011 +0200"
      },
      "message": "perf stat: Analyze front-end and back-end stall counts\n\nSample output:\n\n Performance counter stats for \u0027./loop_1b\u0027:\n\n        873.691065 task-clock               #    1.000 CPUs utilized\n                 1 context-switches         #    0.000 M/sec\n                 1 CPU-migrations           #    0.000 M/sec\n                96 page-faults              #    0.000 M/sec\n     2,012,637,222 cycles                   #    2.304 GHz                      (66.58%)\n     1,001,397,911 stalled-cycles-frontend  #   49.76% frontend cycles idle     (66.58%)\n         7,523,398 stalled-cycles-backend   #    0.37%  backend cycles idle     (66.76%)\n     2,004,551,046 instructions             #    1.00  insns per cycle\n                                            #    0.50  stalled cycles per insn  (66.80%)\n     1,001,304,992 branches                 # 1146.063 M/sec                    (66.76%)\n            39,453 branch-misses            #    0.00% of all branches          (66.64%)\n\n        0.874046121  seconds time elapsed\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n003io7hjpn1dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "129c04cb8ce2e4bf3f17223f58ef16aa8a2cb3b8",
      "tree": "dd6bacbcefee60d18e0f962df5650d2b48febcf8",
      "parents": [
        "91fc4cc00099986bc1ba50e1f421c3548cffae42"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 14:41:28 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Apr 29 14:35:49 2011 +0200"
      },
      "message": "perf tools: Add front-end and back-end stalled cycles support\n\nUpdate perf tooling to deal with front-end and back-end stalled cycles events.\n\nAdd both the default \u0027perf stat\u0027 output.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n002io7hjpn1dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "ede70290046043b2638204cab55e26ea1d0c6cd9",
      "tree": "b5de51125db7477b18776614923edea00a20fc31",
      "parents": [
        "f9cef0a90c4e7637f1ec98474a1a099aec45eb65"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 28 08:48:42 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 28 08:48:42 2011 +0200"
      },
      "message": "perf stat: Fix compatibility behavior\n\nInstead of failing on an unknown event, when new perf stat is run on\nolder kernels:\n\n  $ ./perf stat true\n  Error: open_counter returned with 22 (Invalid argument). /bin/dmesg\n  may provide additional information.\n\n  Fatal: Not all events could be opened.\n\nJust ignore EINVAL and ENOSYS, we\u0027ll print the results as not counted:\n\n Performance counter stats for \u0027true\u0027:\n\n          0.239483 task-clock               #    0.493 CPUs utilized\n                 0 context-switches         #    0.000 M/sec\n                 0 CPU-migrations           #    0.000 M/sec\n                86 page-faults              #    0.359 M/sec\n           704,766 cycles                   #    2.943 GHz\n     \u003cnot counted\u003e stalled-cycles\n           381,961 instructions             #    0.54  insns per cycle\n            69,626 branches                 #  290.735 M/sec\n             4,594 branch-misses            #    6.60% of all branches\n\n        0.000485883  seconds time elapsed\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n1eqio5hjpn3dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f9cef0a90c4e7637f1ec98474a1a099aec45eb65",
      "tree": "6a7b6bd456a274070f83d75fa1e7f97d90f32e8e",
      "parents": [
        "8a850cadca0e387c87a0911a61e99fd66aeb57ec"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 28 18:17:11 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 28 08:39:39 2011 +0200"
      },
      "message": "perf stat: Add --sync/-S option\n\n--sync will tell perf stat to run sync() before starting a command.\n\nThis allows IO-heavy tests to be used with --repeat, without one\niteration impacting the other.\n\nElapsed time will stabilize for example:\n\n  before:        3.971525714  seconds time elapsed  ( +-  8.56% )\n  after:         3.211098537  seconds time elapsed  ( +-  1.52% )\n\nSo measurements will be more accurate.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n1eqio7hjpn1dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "9ceb1c3d1fe15c2f9b55eaa8978019ef0e0a06ac",
      "tree": "89c24419ef9a18d7b523bbdc6c7f9dd57c3e221f",
      "parents": [
        "c6264deff7ea6125492b442edad885e5429679af"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Apr 28 02:57:53 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 17:48:55 2011 +0200"
      },
      "message": "perf stat: Fix printout vertical alignment\n\nBefore:\n\n |\n | Performance counter stats for \u0027/home/mingo/hackbench 20\u0027 (5 runs):\n |\n |        71,321,607 instructions:u           #    0.42  insns per cycle  ( +-  0.00% )\n |       168,040,009 cycles:u                 #    0.000 GHz                      ( +-  0.81% )\n |\n |        1.468002368  seconds time elapsed  ( +-  1.33% )\n |\n\nAfter:\n\n |\n | Performance counter stats for \u0027/home/mingo/hackbench 20\u0027 (5 runs):\n |\n |        71,321,607 instructions:u           #    0.42  insns per cycle          ( +-  0.00% )\n |       168,040,009 cycles:u                 #    0.000 GHz                      ( +-  0.81% )\n |\n |        1.468002368  seconds time elapsed  ( +-  1.33% )\n |\n\nThe last column (stddev noise) is properly aligned, vertically.\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-7y40wib8n1eqio7hjpn0dsrm@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c6264deff7ea6125492b442edad885e5429679af",
      "tree": "8533d8e10cadd0eb31518a514486c561f004115b",
      "parents": [
        "8bb6c79f24e66538f606076915e918242c02ec7c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 13:50:47 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 21:03:16 2011 +0200"
      },
      "message": "perf stat: Add -d/--detailed flag to run with a lot of events\n\nAdd the new -d/--detailed flag, which generates a pretty detailed event list:\n\n Performance counter stats for \u0027./hackbench 10\u0027 (10 runs):\n\n       1514.287888 task-clock               #   10.897 CPUs utilized            ( +-  3.05% )\n            39,698 context-switches         #    0.026 M/sec                    ( +- 12.19% )\n             8,147 CPU-migrations           #    0.005 M/sec                    ( +- 16.55% )\n            17,918 page-faults              #    0.012 M/sec                    ( +-  0.37% )\n     2,944,504,050 cycles                   #    1.944 GHz                      ( +-  3.89% )  (32.60%)\n     1,043,971,283 stalled-cycles           #   35.45% of all cycles are idle   ( +-  5.22% )  (44.48%)\n     1,655,906,768 instructions             #    0.56  insns per cycle\n                                            #    0.63  stalled cycles per insn  ( +-  1.95% )  (55.09%)\n       338,832,373 branches                 #  223.757 M/sec                    ( +-  1.96% )  (64.47%)\n         3,892,416 branch-misses            #    1.15% of all branches          ( +-  5.49% )  (73.12%)\n       606,410,482 L1-dcache-loads          #  400.459 M/sec                    ( +-  1.29% )  (71.21%)\n        31,204,395 L1-dcache-load-misses    #    5.15% of all L1-dcache hits    ( +-  3.04% )  (60.43%)\n         3,922,751 LLC-loads                #    2.590 M/sec                    ( +-  6.80% )  (46.87%)\n         5,037,288 LLC-load-misses          #    3.327 M/sec                    ( +-  3.56% )  (13.00%)\n\n        0.138966828  seconds time elapsed  ( +-  4.11% )\n\nThis can be used \"at a glance\" for narrower analysis.\n\n-d can also be used in addition to other -e events, to further expand an event list.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-cxs98quixs3qyvdqx3goojc4@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8bb6c79f24e66538f606076915e918242c02ec7c",
      "tree": "44196658307709aabd70ee2ab7ee6187e3f5b190",
      "parents": [
        "c78df6c1d49b5d798f1579141e3a12be7c325d1e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 13:25:24 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:32:24 2011 +0200"
      },
      "message": "perf stat: Print out miss/hit ratio for L1 data-cache events\n\nPrint out this kind of l1-dcache-misses percentage:\n\n Performance counter stats for \u0027./bw_tcp localhost\u0027:\n\n    29,956,262,201 cycles                   #    3.002 GHz                      (scaled from 85.14%)\n     8,255,209,558 stalled-cycles           #   27.56% of all cycles are idle   (scaled from 86.56%)\n     1,206,130,308 l1-dcache-misses         #   40.49% of all L1-dcache hits    (scaled from 86.30%)\n     2,978,756,779 l1-dcache-refs           #  298.512 M/sec                    (scaled from 70.02%)\n     8,861,956,159 instructions             #    0.30  insns per cycle\n                                            #    0.93  stalled cycles per insn  (scaled from 84.27%)\n     1,644,306,068 branches                 #  164.782 M/sec                    (scaled from 86.43%)\n        74,778,443 branch-misses            #    4.55% of all branches          (scaled from 70.69%)\n       9978.695711 task-clock               #    0.693 CPUs utilized\n\n       14.404347983  seconds time elapsed\n\nAnd color the result depending on the severity of cache-trashing.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-54gmz0zymaid84zcs7joq02p@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c78df6c1d49b5d798f1579141e3a12be7c325d1e",
      "tree": "355d14ae8b178d93a95012c13a930ea41384dd1d",
      "parents": [
        "a5d243d04a150acbfa79d641154f49e5d920f64f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 12:16:10 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:58 2011 +0200"
      },
      "message": "perf stat: Print branch misses warning colors\n\nPrint the missed-branches percentage with different warning level ASCII colors,\nas the percentage passes the 5%/10%/20% thresholds.\n\nThese thresholds are set to relatively low levels, because on most CPUs even a\nmoderate percentage of branch-misses already shows up as a slowdown.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-ybqukg7p86leiup7gl03ecgk@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a5d243d04a150acbfa79d641154f49e5d920f64f",
      "tree": "af1dc9b3a6b59c8aa5fd383f9bd2663e20975bb6",
      "parents": [
        "f99844cb76b7d347711c22cdcb94266b7214141f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 05:39:24 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:58 2011 +0200"
      },
      "message": "perf stat: Print stalled cycles warning colors\n\nPrint the stalled-cycles percentage with different warning level ASCII colors,\nas the percentage passes the 25%/50%/75% thresholds.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-e25zz44rcms7mu9az4fu5zp0@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "f99844cb76b7d347711c22cdcb94266b7214141f",
      "tree": "37d8147d32f9e76269952f142180566e937c4d71",
      "parents": [
        "1fc570ad89e55dc32dfa4dda1311948b38f26524"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 05:35:39 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:57 2011 +0200"
      },
      "message": "perf stat: Fix -nan% output in perf stat noise printouts\n\nBefore:\n\n                 0 CPU-migrations           #    0.000 M/sec                    ( +-  -nan% )\n\nAfter:\n\n                 0 CPU-migrations           #    0.000 M/sec                    ( +-  0.00% )\n\nAlso factor out the noise printing function.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-z89h2v1bk1mikcbsf7e6v34q@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "1fc570ad89e55dc32dfa4dda1311948b38f26524",
      "tree": "5e775a1f2627301110bd11246dd68cf727961c94",
      "parents": [
        "481f988a016f7a0327a5537bde4794349fc4625c"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 05:20:22 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:57 2011 +0200"
      },
      "message": "perf stat: Add stalled cycles to the default output\n\nThe new default output looks like this:\n\n Performance counter stats for \u0027./loop_1b_instructions\u0027:\n\n        236.010686 task-clock               #    0.996 CPUs utilized\n                 0 context-switches         #    0.000 M/sec\n                 0 CPU-migrations           #    0.000 M/sec\n                99 page-faults              #    0.000 M/sec\n       756,487,646 cycles                   #    3.205 GHz\n       354,938,996 stalled-cycles           #   46.92% of all cycles are idle\n     1,001,403,797 instructions             #    1.32  insns per cycle\n                                            #    0.35  stalled cycles per insn\n       100,279,773 branches                 #  424.895 M/sec\n            12,646 branch-misses            #    0.013 % of all branches\n\n        0.236902540  seconds time elapsed\n\nWe dropped cache-refs and cache-misses and added stalled-cycles - this is a\nmore generic \"how well utilized is the CPU\" metric.\n\nIf the stalled-cycles ratio is too high then more specific measurements can be\ntaken to figure out the source of the inefficiency.\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-pbpl2l4mn797s69bclfpwkwn@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "481f988a016f7a0327a5537bde4794349fc4625c",
      "tree": "c7375e288e3f565c9ef178fe27c98d3f63cc13c7",
      "parents": [
        "dcd9936a5a6d89512b5323c1145647f2dbe0236f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 04:34:16 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:56 2011 +0200"
      },
      "message": "perf stat: Add stalled cycles accounting, prettify the resulting output\n\nAdd stalled cycles accounting and use it to print the \"cycles stalled per\ninstruction\" value.\n\nAlso change the unit of the cycles output from M/sec to GHz - this is more\nintuitive.\n\nPrettify the output to:\n\n Performance counter stats for \u0027./loop_1b_instructions\u0027:\n\n        239.775036 task-clock               #    0.997 CPUs utilized\n       761,903,912 cycles                   #    3.178 GHz\n       356,620,620 stalled-cycles           #   46.81% of all cycles are idle\n     1,001,578,351 instructions             #    1.31  insns per cycle\n                                            #    0.36  stalled cycles per insn\n            14,782 cache-references         #    0.062 M/sec\n             5,694 cache-misses             #   38.520 % of all cache refs\n\n        0.240493656  seconds time elapsed\n\nAlso adjust the --repeat output to make the percentages align vertically:\n\n Performance counter stats for \u0027./loop_1b_instructions\u0027 (10 runs):\n\n        236.096793 task-clock               #    0.997 CPUs utilized             ( +-   0.011% )\n       756,553,086 cycles                   #    3.204 GHz                       ( +-   0.002% )\n       354,942,692 stalled-cycles           #   46.92% of all cycles are idle    ( +-   0.008% )\n     1,001,389,700 instructions             #    1.32  insns per cycle\n                                            #    0.35  stalled cycles per insn   ( +-   0.000% )\n            10,166 cache-references         #    0.043 M/sec                     ( +-   0.742% )\n               468 cache-misses             #    4.608 % of all cache refs       ( +-  13.385% )\n\n        0.236874136  seconds time elapsed   ( +- 0.01% )\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-uapziqny39601apdmmhoz7hk@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dcd9936a5a6d89512b5323c1145647f2dbe0236f",
      "tree": "5ad83bc4f2a61e5ff65d4d0950cee6a36b65696d",
      "parents": [
        "749141d926faf23ef811686a8050e7cf13dc223f"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 04:36:37 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:56 2011 +0200"
      },
      "message": "perf stat: Factor our shadow stats\n\nCreate update_shadow_stats() which is then used in both read_counter_aggr()\nand read_counter().\n\nThis not only simplifies the code but also fixes a bug: HW_CACHE_REFERENCES\nwas not updated in read_counter().\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-9uc55z3g88r47exde7zxjm6p@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d58f4c82fed69fdd4a79fa54fe17fd14d98c27aa",
      "tree": "e28ff3e43cb1894826188868f46e69bb427c060d",
      "parents": [
        "11ba2b85f506306c8dfc9fe144aa4ddc43242855"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 27 03:42:18 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:54 2011 +0200"
      },
      "message": "perf stat: Print cache misses as percentage\n\nBefore:\n\n       113,393,041 cache-references         #     83.636 M/sec\n         7,052,454 cache-misses             #      5.202 M/sec\n\nAfter:\n\n       112,589,441 cache-references         #     87.925 M/sec\n         6,556,354 cache-misses             #      5.823 %\n\nmisses/hits percentages are more expressive than absolute numbers\nor rates.\n\n(Also prettify the CPUs printout line to not have a trailing whitespace.)\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLink: http://lkml.kernel.org/n/tip-axm28f43x439bl41zkvfzd63@git.kernel.org\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "11ba2b85f506306c8dfc9fe144aa4ddc43242855",
      "tree": "1fb26d4345b53300b29bb7044c165dd1a8230c73",
      "parents": [
        "5c543e3c442d6382db127152c7096ca6a55283de"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Apr 24 15:05:10 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Apr 26 20:04:54 2011 +0200"
      },
      "message": "perf stat: Print stalled cycles percentage\n\nPrint:\n\n           611,527 cycles\n           400,553 instructions             # (  0.71 instructions per cycle )\n            77,809 stalled-cycles           # ( 12.71% of all cycles )\n\n        0.000610987  seconds time elapsed\n\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nLink: http://lkml.kernel.org/n/tip-fd6x8r1cpyb6zhlrc4ix8m45@git.kernel.org\n"
    },
    {
      "commit": "5d2cd90922c778908bd0cd669e572a5b5eafd737",
      "tree": "0467726f17165b6e2461521e9cca4f54c959d6d6",
      "parents": [
        "db9a9cbc8142eed008e242e389938689c6feb1ba"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu Apr 14 11:20:14 2011 -0300"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Apr 15 12:52:28 2011 -0300"
      },
      "message": "perf evsel: Fix use of inherit\n\nperf stat doesn\u0027t mmap and its perfectly fine for it to use task-bound\ncounters with inheritance.\n\nSo set the attr.inherit on the caller and leave the syscall itself to\nvalidate it.\n\nWhen the mmap fails perf_evlist__mmap will just emit a warning if this\nis the failure reason.\n\nReported-by: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLink: http://lkml.kernel.org/r/20110414170121.GC3229@ghostprotocols.net\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "cfd748ae066e776d45bdce550b47cd00c67d55de",
      "tree": "f19fd744f82bb6ca29005bf63bd0681bd389653d",
      "parents": [
        "171b3be9c42e97cd4530706654242f6a3efb6ac3"
      ],
      "author": {
        "name": "Frederic Weisbecker",
        "email": "fweisbec@gmail.com",
        "time": "Mon Mar 14 16:40:30 2011 +0100"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Mar 14 13:37:52 2011 -0300"
      },
      "message": "perf stat: Provide support for filters\n\nNow the --filter option is usable with perf stat too.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003c1300117230-8404-1-git-send-email-fweisbec@gmail.com\u003e\nSigned-off-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "023695d96ee06f36cf5014e286edcd623e9fb847",
      "tree": "ff7483b7a1aa0cfd5de95475ed059822d2a35499",
      "parents": [
        "e5d1367f17ba6a6fed5fd8b74e4d5720923e0c25"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Mon Feb 14 11:20:01 2011 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Feb 16 13:30:48 2011 +0100"
      },
      "message": "perf tool: Add cgroup support\n\nThis patch adds the ability to filter monitoring based on container groups\n(cgroups) for both perf stat and perf record. It is possible to monitor\nmultiple cgroup in parallel. There is one cgroup per event. The cgroups to\nmonitor are passed via a new -G option followed by a comma separated list of\ncgroup names.\n\nThe cgroup filesystem has to be mounted. Given a cgroup name, the perf tool\nfinds the corresponding directory in the cgroup filesystem and opens it. It\nthen passes that file descriptor to the kernel.\n\nExample:\n\n$ perf stat -B -a -e cycles:u,cycles:u,cycles:u -G test1,,test2 -- sleep 1\n Performance counter stats for \u0027sleep 1\u0027:\n\n      2,368,667,414  cycles                   test1\n      2,369,661,459  cycles\n      \u003cnot counted\u003e  cycles                   test2\n\n        1.001856890  seconds time elapsed\n\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4d590290.825bdf0a.7d0a.4890@mx.google.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "0015e2e101f5fd3256ab8b5a374c0e8806098871",
      "tree": "3c889612ca4ede04a5b13d1cc3499479b60c66a3",
      "parents": [
        "568bb7b8e856b9efb98a3f63259c717adc1b96b8"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Feb 01 16:18:10 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Feb 01 16:18:10 2011 -0200"
      },
      "message": "perf stat: Fix up resource release order\n\nThat was causing a SEGV on selected old distros.\n\nProblem introduced in 7e2ed09.\n\nReported-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "7e2ed097538c57ff5268e9a6bced7c0b885809c8",
      "tree": "44f9998cc6054d5bef07d6c2979afb0e81ddf13c",
      "parents": [
        "f8a9530939ed87b9a1b1a038b90e355098b679a2"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sun Jan 30 11:59:43 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 31 12:40:52 2011 -0200"
      },
      "message": "perf evlist: Store pointer to the cpu and thread maps\n\nSo that we don\u0027t have to pass it around to the several methods that\nneeds it, simplifying usage.\n\nThere is one case where we don\u0027t have the thread/cpu map in advance,\nwhich is in the parsing routines used by top, stat, record, that we have\nto wait till all options are parsed to know if a cpu or thread list was\npassed to then create those maps.\n\nFor that case consolidate the cpu and thread map creation via\nperf_evlist__create_maps() out of the code in top and record, while also\nproviding a perf_evlist__set_maps() for cases where multiple evlists\nshare maps or for when maps that represent CPU sockets, for instance,\nget crafted out of topology information or subsets of threads in a\nparticular application are to be monitored, providing more granularity\nin specifying which cpus and threads to monitor.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "fd78260b5376173faeb17127bd63b3c99a8e8bfb",
      "tree": "7d3afaca981fee68929c365b39dd302f803e3bda",
      "parents": [
        "17ea1b70a87e28457821318341bead2b45563092"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 18 15:15:24 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 24 10:59:00 2011 -0200"
      },
      "message": "perf threads: Move thread_map to separate file\n\nTo untangle it from struct thread handling, that is tied to symbols, etc.\n\nRight now in the python bindings I\u0027m working on I need just a subset of\nthe util/ files, untangling it allows me to do that.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "9d04f1781772e11bd58806391555fc23ebb54377",
      "tree": "9b91c767bed360fcfd2ab6b90794cca784db279f",
      "parents": [
        "f08199d314458610d4ca52f8e86e0a4ec7a7bc54"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Jan 12 00:08:18 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 22 19:56:29 2011 -0200"
      },
      "message": "perf evsel: Allow specifying if the inherit bit should be set\n\nAs this is a per-cpu attribute, we can\u0027t set it up in advance and use it\nfor all the calls.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "f08199d314458610d4ca52f8e86e0a4ec7a7bc54",
      "tree": "80078cf09949aab97d9470f8126dc2b0ecc9656c",
      "parents": [
        "5c581041cf97aa7980b442de81ddea8273d6dcde"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 11 23:42:19 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 22 19:56:28 2011 -0200"
      },
      "message": "perf evsel: Support event groups\n\nThe perf_evsel__open now have an extra boolean argument specifying if\nevent grouping is desired.\n\nThe first file descriptor created on a CPU becomes the group leader.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "361c99a661a78ed22264649440e87fe4fe8da1f2",
      "tree": "a60bc86f132608f2d41c800760b41f6f54f8e7af",
      "parents": [
        "00e99a49f6f3a6b5a84ba8bf8f632c9b974bea7a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 11 20:56:53 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 22 19:56:28 2011 -0200"
      },
      "message": "perf evsel: Introduce perf_evlist\n\nKilling two more perf wide global variables: nr_counters and evsel_list\nas a list_head.\n\nThere are more operations that will need more fields in perf_evlist,\nlike the pollfd for polling all the fds in a list of evsel instances.\n\nUse option-\u003evalue to pass the evsel_list to parse_{events,filters}.\n\nLKML-Reference: \u003cnew-submission\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "9486aa38771661e96fbb51c549b9901b5df609d8",
      "tree": "72cecbff0cb5124c960feeec3a6ac1fff75c649a",
      "parents": [
        "57b84e53171ce672683faf1cab2e660965a6bdaf"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 22 20:37:02 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jan 22 23:41:57 2011 -0200"
      },
      "message": "perf tools: Fix 64 bit integer format strings\n\nUsing %L[uxd] has issues in some architectures, like on ppc64.  Fix it\nby making our 64 bit integers typedefs of stdint.h types and using\nPRI[ux]64 like, for instance, git does.\n\nReported by Denis Kirjanov that provided a patch for one case, I went\nand changed all cases.\n\nReported-by: Denis Kirjanov \u003cdkirjanov@kernel.org\u003e\nTested-by: Denis Kirjanov \u003cdkirjanov@kernel.org\u003e\nLKML-Reference: \u003c20110120093246.GA8031@hera.kernel.org\u003e\nCc: Denis Kirjanov \u003cdkirjanov@kernel.org\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Pingtian Han \u003cphan@redhat.com\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "bd3bfe9eda94d3c050830217c1e1c338808de5b2",
      "tree": "d2be87a7e681192994c2434592dac685f5178cc9",
      "parents": [
        "3d03e2ea74103a50c23d6ab1906cf73399c0dafb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 11 12:42:00 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 11 12:51:03 2011 -0200"
      },
      "message": "perf evsel: Fix order of event list deletion\n\nWe need to defer calling perf_evsel_list__delete() till after atexit\nregistered routines, because we need to traverse the events being\nrecorded at that time at least on \u0027perf record\u0027.\n\nThis fixes the problem reported by Thomas Renninger where cmd_record\ncalled by cmd_timechart would not write the tracing data to the perf.data\nfile header because the evsel_list at atexit (control+C on \u0027perf timechart\nrecord\u0027) time would be empty, being already deleted by run_builtin(),\nand thus \u0027perf timechart\u0027 when trying to process such perf.data file would\ndie with:\n\n\"no trace data in the file\"\n\nProblem introduced in 70d544d.\n\nReported-by: Thomas Renninger \u003ctrenn@suse.de\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Thomas Renninger \u003ctrenn@suse.de\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "5a3446bc648d86a99a895e93d28d7df00bbbfb3c",
      "tree": "bc292838c295c6ce6918e485a0454d9a0f1f51f2",
      "parents": [
        "e462dc553ea5e09d4713e7c35a11ed331dc6f369"
      ],
      "author": {
        "name": "David Ahern",
        "email": "daahern@cisco.com",
        "time": "Sun Jan 09 11:21:12 2011 -0700"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 10 11:34:53 2011 -0200"
      },
      "message": "perf stat: better error message for unsupported events\n\nFor unsupported events (e.g., H/W events when running in a VM)\nperf stat currently fails with the error message:\n\n      Error: open_counter returned with 2 (No such file or directory).\n    /bin/dmesg may provide additional information.\n\n      Fatal: Not all events could be opened.\n\ndmesg is of no help and it is not clear as to why it fails to\nopen the counter. This patch changes the error message to\n\n      Error: cache-misses event is not supported.\n      Fatal: Not all events could be opened.\n\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: a.p.zijlstra@chello.nl\nLPU-Reference: \u003c1294597272-17335-1-git-send-email-daahern@cisco.com\u003e\nSigned-off-by: David Ahern \u003cdaahern@cisco.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "23a2f3ab46596d9fd0b0e592d2101bea90970594",
      "tree": "6b3d9e3755a3e71bb0e6b47e62b269e50b6cf37d",
      "parents": [
        "6b01f2c4f6188da50d8fe094e369a9c0390424ab"
      ],
      "author": {
        "name": "Lin Ming",
        "email": "ming.m.lin@intel.com",
        "time": "Fri Jan 07 11:11:09 2011 +0800"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Jan 07 01:44:36 2011 -0200"
      },
      "message": "perf tools: Pass whole attr to event selectors\n\nSince commit 69aad6f1(perf tools: Introduce event selectors), only\nperf_event_attr::type and ::config are passed to event selector, which\nmakes perf tool not work correctly.\n\nFor example, PEBS does not work because perf_event_attr::precise_ip is\nnot passed to the syscall.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1294369869.20563.19.camel@minggr.sh.intel.com\u003e\nSigned-off-by: Lin Ming \u003cming.m.lin@intel.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "86bd5e8603b00b06189328c6d7034d2dc434d6bb",
      "tree": "7d6c4fa6c55b367d0ab970835fa2fad4634ae8e4",
      "parents": [
        "5c98d466e49267a9221f30958d45cd06f794269a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 23:09:46 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 04 00:24:36 2011 -0200"
      },
      "message": "perf evsel: Use {cpu,thread}_map to shorten list of parameters\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "5c98d466e49267a9221f30958d45cd06f794269a",
      "tree": "0085e9391dc68d00b8260d9d36e8b0d1baf66098",
      "parents": [
        "60d567e2d9187379d642f6aba7c8a52b3fd5d261"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 17:53:33 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 04 00:24:16 2011 -0200"
      },
      "message": "perf tools: Refactor all_tids to hold nr and the map\n\nSo that later, we can pass the thread_map instance instead of\n(thread_num, thread_map) for things like perf_evsel__open and friends,\njust like was done with cpu_map.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "60d567e2d9187379d642f6aba7c8a52b3fd5d261",
      "tree": "7d6bd6f6805ff68f4fab3c0e08b7139cc5206b7d",
      "parents": [
        "48290609c0d265f5dac0fca6fd4e3c5732542f67"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 17:49:48 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 04 00:23:55 2011 -0200"
      },
      "message": "perf tools: Refactor cpumap to hold nr and the map\n\nSo that later, we can pass the cpu_map instance instead of (nr_cpus, cpu_map)\nfor things like perf_evsel__open and friends.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "48290609c0d265f5dac0fca6fd4e3c5732542f67",
      "tree": "7fc8099ae02b78562cca245364cd44197d3ae9a3",
      "parents": [
        "c52b12ed2511e6c031a0295fd903ea72b93701fb"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 17:48:12 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 04 00:23:27 2011 -0200"
      },
      "message": "perf evsel: Introduce per cpu and per thread open helpers\n\nAbstracting away the loops needed to create the various event fd handlers.\n\nThe users have to pass a confiruged perf-\u003eevsel.attr field, which is already\nusable after perf_evsel__new (constructor) time, using defaults.\n\nComes out of the ad-hoc routines in builtin-stat, that now uses it.\n\nFixed a small silly bug where we were die()ing before killing our\nchildren, dysfunctional family this one 8-)\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c52b12ed2511e6c031a0295fd903ea72b93701fb",
      "tree": "770915627e789401b820a104c1ed23a212e7bd50",
      "parents": [
        "70d544d0576775a2b3923a7e68cb49b0313d80c9"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 17:45:52 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue Jan 04 00:22:55 2011 -0200"
      },
      "message": "perf evsel: Steal the counter reading routines from stat\n\nMaking them hopefully generic enough to be used in \u0027perf test\u0027,\nwell see.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "70d544d0576775a2b3923a7e68cb49b0313d80c9",
      "tree": "c848ffcc5b1146fc35d496472349d2e4795b0ff3",
      "parents": [
        "1e7972cc5c16e06f258b0278d8c9adfb5aa75c68"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 16:51:39 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 16:51:39 2011 -0200"
      },
      "message": "perf evsel: Delete the event selectors at exit\n\nFreeing all the possibly allocated resources, reducing complexity\non each tool exit path.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "daec78a09de3df5fbfbbd167da0304d49d7fcfe5",
      "tree": "6ad4b3450f70e6f8bb99f19a9c6342b18661748d",
      "parents": [
        "69aad6f1ee69546dea8535ab8f3da9f445d57328"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 16:49:44 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 16:49:44 2011 -0200"
      },
      "message": "perf evsel: Adopt MATCH_EVENT macro from \u0027stat\u0027\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "69aad6f1ee69546dea8535ab8f3da9f445d57328",
      "tree": "b328ec140a6a90703a049fcc661d623025d7e81f",
      "parents": [
        "56f4c400349157289b474a3fd49ee96acab0a4d7"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 16:39:04 2011 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Jan 03 16:39:04 2011 -0200"
      },
      "message": "perf tools: Introduce event selectors\n\nOut of ad-hoc code and global arrays with hard coded sizes.\n\nThis is the first step on having a library that will be first\nused on regression tests in the \u0027perf test\u0027 tool.\n\n[acme@felicio linux]$ size /tmp/perf.before\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n1273776\t  97384\t5104416\t6475576\t 62cf38\t/tmp/perf.before\n[acme@felicio linux]$ size /tmp/perf.new\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n1275422\t  97416\t1392416\t2765254\t 2a31c6\t/tmp/perf.new\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "d7470b6afca85ed4388fff57fc9d89f5a3be02ff",
      "tree": "f170c6e53e53448649c6658ec0208f051b248a1c",
      "parents": [
        "201e0b06efee80ce090579aa165c65c3d0836d95"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Wed Dec 01 18:49:05 2010 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 01 19:47:41 2010 -0200"
      },
      "message": "perf stat: Add csv-style output\n\nThis patch adds an option (-x/--field-separator) to print counts using a\nCSV-style output. The user can pass a custom separator. This makes it very easy\nto import counts directly into your favorite spreadsheet without having to\nwrite scripts.\n\nExample:\n$ perf stat --field-separator\u003d,  -a -- sleep 1\n4009.961740,task-clock-msecs\n13,context-switches\n2,CPU-migrations\n189,page-faults\n9596385684,cycles\n3493659441,instructions\n872897069,branches\n41562,branch-misses\n22424,cache-references\n1289,cache-misses\n\nWorks also in non-aggregated mode:\n\n$ perf stat -x ,  -a -A -- sleep 1\nCPU0,1002.526168,task-clock-msecs\nCPU1,1002.528365,task-clock-msecs\nCPU2,1002.523360,task-clock-msecs\nCPU3,1002.519878,task-clock-msecs\nCPU0,1,context-switches\nCPU1,5,context-switches\nCPU2,5,context-switches\nCPU3,6,context-switches\nCPU0,0,CPU-migrations\nCPU1,1,CPU-migrations\nCPU2,0,CPU-migrations\nCPU3,1,CPU-migrations\nCPU0,2,page-faults\nCPU1,6,page-faults\nCPU2,9,page-faults\nCPU3,174,page-faults\nCPU0,2399439771,cycles\nCPU1,2380369063,cycles\nCPU2,2399142710,cycles\nCPU3,2373161192,cycles\nCPU0,872900618,instructions\nCPU1,873030960,instructions\nCPU2,872714525,instructions\nCPU3,874460580,instructions\nCPU0,221556839,branches\nCPU1,218134342,branches\nCPU2,218161730,branches\nCPU3,218284093,branches\nCPU0,18556,branch-misses\nCPU1,1449,branch-misses\nCPU2,3447,branch-misses\nCPU3,12714,branch-misses\nCPU0,8330,cache-references\nCPU1,313844,cache-references\nCPU2,47993728,cache-references\nCPU3,826481,cache-references\nCPU0,272,cache-misses\nCPU1,5360,cache-misses\nCPU2,1342193,cache-misses\nCPU3,13992,cache-misses\n\nThis second version adds the ability to name a separator and uses\nfield-separator as the long option to be consistent with perf report.\n\nCommiter note: Since we enabled --big-num by default in 201e0b0 and -x can\u0027t be\nused with it, we need to notice if the user explicitely enabled or disabled -B,\nadd code to disable big_num if the user didn\u0027t explicitely set --big_num when\n-x is used.\n\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Frederik Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: paulus@samba.org\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nLKML-Reference: \u003c4cf68aa7.0fedd80a.5294.1203@mx.google.com\u003e\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "201e0b06efee80ce090579aa165c65c3d0836d95",
      "tree": "0e9d0697167f6ce53ff78bfb8339fd7c4e483e33",
      "parents": [
        "8c207692fc8fa3ea1a5ff97ad698efb09a81975a"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 01 17:53:27 2010 -0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Wed Dec 01 18:22:50 2010 -0200"
      },
      "message": "perf stat: Use --big-num format by default\n\n[acme@mica linux]$ perf stat ls \u003e /dev/null\n\n Performance counter stats for \u0027ls\u0027:\n\n           1.512532  task-clock-msecs         #      0.801 CPUs\n                  2  context-switches         #      0.001 M/sec\n                  0  CPU-migrations           #      0.000 M/sec\n                241  page-faults              #      0.159 M/sec\n          2,973,331  cycles                   #   1965.797 M/sec\n          1,460,802  instructions             #      0.491 IPC\n            314,642  branches                 #    208.023 M/sec\n             18,475  branch-misses            #      5.872 %\n      \u003cnot counted\u003e  cache-references\n      \u003cnot counted\u003e  cache-misses\n\n        0.001887676  seconds time elapsed\n\nTo get the previous behaviour just use --no-big-num:\n\n[acme@mica linux]$ perf stat --no-big-num ls \u003e /dev/null\n\n Performance counter stats for \u0027ls\u0027:\n\n           1.468014  task-clock-msecs         #      0.795 CPUs\n                  1  context-switches         #      0.001 M/sec\n                  0  CPU-migrations           #      0.000 M/sec\n                241  page-faults              #      0.164 M/sec\n            2900254  cycles                   #   1975.631 M/sec\n            1437991  instructions             #      0.496 IPC\n             310905  branches                 #    211.786 M/sec\n              17912  branch-misses            #      5.761 %\n      \u003cnot counted\u003e  cache-references\n      \u003cnot counted\u003e  cache-misses\n\n        0.001845435  seconds time elapsed\n\n[acme@mica linux]$\n\nSuggested-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "d9cf837ef9629ab34167bd6fc0141383ddb8813a",
      "tree": "3da536a15ea586dacb113f50f76e566a96216908",
      "parents": [
        "4aafd3f71a257a3522932944b5204262dfdff147"
      ],
      "author": {
        "name": "Corey Ashford",
        "email": "cjashfor@linux.vnet.ibm.com",
        "time": "Fri Nov 19 17:37:24 2010 -0800"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Nov 20 13:04:15 2010 -0200"
      },
      "message": "perf stat: Change and clean up sys_perf_event_open error handling\n\nThis patch makes several changes to \"perf stat\":\n\n- \"perf stat\" will no longer go ahead and run the application when one or\nmore of the specified events could not be opened.\n- Use error() and die() instead of pr_err() so that the output is more\nconsistent with \"perf top\" and \"perf record\".\n- Handle permission errors in a more robust way, and in a similar way to\n\"perf record\" and \"perf top\".\n\nIn addition, the sys_perf_event_open() error handling of \"perf top\" and \"perf\nrecord\" is made more consistent and adds the following phrase when an event\ndoesn\u0027t open (with something ther than an access or permission error):\n\n\"/bin/dmesg may provide additional information.\"\n\nThis is added because kernel code doesn\u0027t have a good way of expressing\ndetailed errors to user space, so its only avenue is to use printk\u0027s.  However,\nmany users may not think of looking at dmesg to find out why an event is being\nrejected.\n\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Peter Zijlstra \u003cfweisbec@gmail.com\u003e\nCc: Ian Munsie \u003cianmunsi@au1.ibm.com\u003e\nCc: Michael Ellerman \u003cmichaele@au1.ibm.com\u003e\nLKML-Reference: \u003c1290217044-26293-1-git-send-email-cjashfor@linux.vnet.ibm.com\u003e\nSigned-off-by: Corey Ashford \u003ccjashfor@linux.vnet.ibm.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "f5b4a9c3ab53d544a540a6f3a5d17184e374d91a",
      "tree": "26050a7485c92938f3a366857d443cf4779a6a39",
      "parents": [
        "ae51ce9061b1ddc0fde363913c932bee5b9bc5fd"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Tue Nov 16 11:05:01 2010 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Fri Nov 19 16:16:53 2010 -0200"
      },
      "message": "perf stat: Add no-aggregation mode to -a\n\nThis patch adds a new -A option to perf stat. If specified then perf stat does\nnot aggregate counts across all monitored CPUs in system-wide mode, i.e., when\nusing -a. This option is not supported in per-thread mode.\n\nBeing able to get a per-cpu breakdown is useful to detect imbalances between\nCPUs when running a uniform workload than spans all monitored CPUs.\n\nThe second version corrects the missing cpumap[] support, so that it works when\nthe -C option is used.\n\nThe third version fixes a missing cpumap[] in print_counter() and removes a\nstray patch in builtin-trace.c.\n\nExamples on a 4-way system:\n\n# perf stat -a   -e cycles,instructions -- sleep 1\n Performance counter stats for \u0027sleep 1\u0027:\n         9592808135  cycles\n         3490380006  instructions             #      0.364 IPC\n        1.001584632  seconds time elapsed\n\n# perf stat -a -A -e cycles,instructions -- sleep 1\n Performance counter stats for \u0027sleep 1\u0027:\nCPU0            2398163767  cycles\nCPU1            2398180817  cycles\nCPU2            2398217115  cycles\nCPU3            2398247483  cycles\nCPU0             872282046  instructions             #      0.364 IPC\nCPU1             873481776  instructions             #      0.364 IPC\nCPU2             872638127  instructions             #      0.364 IPC\nCPU3             872437789  instructions             #      0.364 IPC\n        1.001556052  seconds time elapsed\n\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Robert Richter \u003crobert.richter@amd.com\u003e\nLKML-Reference: \u003c4ce257b5.1e07e30a.7b6b.3aa9@mx.google.com\u003e\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c45c6ea2e5c57960dc67e00294c2b78e9540c007",
      "tree": "27c56577862cbb95fb8db4b34cfe99878d5dc9a0",
      "parents": [
        "761844b9c68b3c67b085265f92ac0675706cc3b3"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Fri May 28 12:00:01 2010 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Sat Jun 05 09:33:01 2010 -0300"
      },
      "message": "perf tools: Add the ability to specify list of cpus to monitor\n\nThis patch adds a -C option to stat, record, top to designate a list of CPUs to\nmonitor. CPUs can be specified as a comma-separated list or ranges, no space\nallowed.\n\nExamples:\n$ perf record -a -C0-1,4-7 sleep 1\n$ perf top -C0-4\n$ perf stat -a -C1,2,3,4 sleep 1\n\nWith perf record in per-thread mode with inherit mode on, samples are collected\nonly when the thread runs on the designated CPUs.\n\nThe -C option does not turn on system-wide mode automatically.\n\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Stephane Eranian \u003ceranian@google.com\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c4bff9496.d345d80a.41fe.7b00@mx.google.com\u003e\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "5af52b51f76d8f8dce0e5b2a33c20b2231c8046d",
      "tree": "ca343ead7bb18f7ad69da2fb4fd4c5e1dcd5d3b1",
      "parents": [
        "a13c3afd9b62b6dace80654964cc4ca7d2db8092"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Tue May 18 15:00:01 2010 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Tue May 18 23:03:22 2010 -0300"
      },
      "message": "perf stat: add perf stat -B to pretty print large numbers\n\nIt is hard to read very large numbers so provide an option to perf stat\nto separate thousands using a separator. The patch leverages the locale\nsupport of stdio. You need to set your LC_NUMERIC appropriately, for\ninstance LC_NUMERIC\u003den_US.UTF8. You need to pass -B to activate this\nfeature. This way existing scripts parsing the output do not need to be\nchanged. Here is an example.\n\n$ perf stat noploop 2\nnoploop for 2 seconds\n\n Performance counter stats for \u0027noploop 2\u0027:\n\n        1998.347031  task-clock-msecs         #      0.998 CPUs\n                 61  context-switches         #      0.000 M/sec\n                  0  CPU-migrations           #      0.000 M/sec\n                118  page-faults              #      0.000 M/sec\n      4,138,410,900  cycles                   #   2070.917 M/sec  (scaled from 70.01%)\n      2,062,650,268  instructions             #      0.498 IPC    (scaled from 70.01%)\n      2,057,653,466  branches                 #   1029.678 M/sec  (scaled from 70.01%)\n             40,267  branch-misses            #      0.002 %      (scaled from 30.04%)\n      2,055,961,348  cache-references         #   1028.831 M/sec  (scaled from 30.03%)\n             53,725  cache-misses             #      0.027 M/sec  (scaled from 30.02%)\n\n        2.001393933  seconds time elapsed\n\n$ perf stat -B  noploop 2\nnoploop for 2 seconds\n\n Performance counter stats for \u0027noploop 2\u0027:\n\n        1998.297883  task-clock-msecs         #      0.998 CPUs\n                 59  context-switches         #      0.000 M/sec\n                  0  CPU-migrations           #      0.000 M/sec\n                119  page-faults              #      0.000 M/sec\n      4,131,380,160  cycles                   #   2067.450 M/sec  (scaled from 70.01%)\n      2,059,096,507  instructions             #      0.498 IPC    (scaled from 70.01%)\n      2,054,681,303  branches                 #   1028.216 M/sec  (scaled from 70.01%)\n             25,650  branch-misses            #      0.001 %      (scaled from 30.05%)\n      2,056,283,014  cache-references         #   1029.017 M/sec  (scaled from 30.03%)\n             47,097  cache-misses             #      0.024 M/sec  (scaled from 30.02%)\n\n        2.001391016  seconds time elapsed\n\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nLKML-Reference: \u003c4bf28fe8.914ed80a.01ca.fffff5f5@mx.google.com\u003e\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "2e6cdf996ba43ce0b090ffbf754f83e17362cd69",
      "tree": "bb471a4ae13fa3941612c30c75bead7417084667",
      "parents": [
        "8a0ecfb8b47dc765fdf460913231876bbc95385e"
      ],
      "author": {
        "name": "Stephane Eranian",
        "email": "eranian@google.com",
        "time": "Wed May 12 10:40:01 2010 +0200"
      },
      "committer": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Thu May 13 16:39:12 2010 -0300"
      },
      "message": "perf tools: change event inheritance logic in stat and record\n\nBy default, event inheritance across fork and pthread_create was on but the -i\noption of stat and record, which enabled inheritance, led to believe it was off\nby default.\n\nThis patch fixes this logic by inverting the meaning of the -i option.  By\ndefault inheritance is on whether you attach to a process (-p), a thread (-t)\nor start a process. If you pass -i, then you turn off inheritance. Turning off\ninheritance if you don\u0027t need it, helps limit perf resource usage as well.\n\nThe patch also fixes perf stat -t xxxx and perf record -t xxxx which did not\nstart the counters.\n\nAcked-by: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c4bea9d2f.d60ce30a.0b5b.08e1@mx.google.com\u003e\nSigned-off-by: Stephane Eranian \u003ceranian@google.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\n"
    },
    {
      "commit": "c05556421742eb47f80301767653a4bcb19de9de",
      "tree": "1e9c441a457acee41d2585e05692cc90c1d88be2",
      "parents": [
        "53e5b5c215ce8372250e227f2c9acf9892de8434"
      ],
      "author": {
        "name": "Ian Munsie",
        "email": "imunsie@au.ibm.com",
        "time": "Tue Apr 13 18:37:33 2010 +1000"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Apr 14 11:26:44 2010 +0200"
      },
      "message": "perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce OPT_INCR()\n\nParsing an option from the command line with OPT_BOOLEAN on a\nbool data type would not work on a big-endian machine due to the\nmanner in which the boolean was being cast into an int and\nincremented. For example, running \u0027perf probe --list\u0027 on a\nPowerPC machine would fail to properly set the list_events bool\nand would therefore print out the usage information and\nterminate.\n\nThis patch makes OPT_BOOLEAN work as expected with a bool\ndatatype. For cases where the original OPT_BOOLEAN was\nintentionally being used to increment an int each time it was\npassed in on the command line, this patch introduces OPT_INCR\nwith the old behaviour of OPT_BOOLEAN (the verbose variable is\ncurrently the only such example of this).\n\nI have reviewed every use of OPT_BOOLEAN to verify that a true\nC99 bool was passed. Where integers were used, I verified that\nthey were only being used for boolean logic and changed them to\nbools to ensure that they would not be mistakenly used as ints.\nThe major exception was the verbose variable which now uses\nOPT_INCR instead of OPT_BOOLEAN.\n\nSigned-off-by: Ian Munsie \u003cimunsie@au.ibm.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nCc: \u003cstable@kernel.org\u003e # NOTE: wont apply to .3[34].x cleanly, please backport\nCc: Git development list \u003cgit@vger.kernel.org\u003e\nCc: Ian Munsie \u003cimunsie@au1.ibm.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: KOSAKI Motohiro \u003ckosaki.motohiro@jp.fujitsu.com\u003e\nCc: Hitoshi Mitake \u003cmitake@dcl.info.waseda.ac.jp\u003e\nCc: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Eric B Munson \u003cebmunson@us.ibm.com\u003e\nCc: Valdis.Kletnieks@vt.edu\nCc: WANG Cong \u003camwang@redhat.com\u003e\nCc: Thiago Farina \u003ctfransosi@gmail.com\u003e\nCc: Masami Hiramatsu \u003cmhiramat@redhat.com\u003e\nCc: Xiao Guangrong \u003cxiaoguangrong@cn.fujitsu.com\u003e\nCc: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nCc: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: OGAWA Hirofumi \u003chirofumi@mail.parknet.co.jp\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Tom Zanussi \u003ctzanussi@gmail.com\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: John Kacur \u003cjkacur@redhat.com\u003e\nCc: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nLKML-Reference: \u003c1271147857-11604-1-git-send-email-imunsie@au.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "084ab9f862416b2ddb4bb9804884de19bf09774d",
      "tree": "3e6bf779f4e7f75da57a381fab2aa9f60316fb01",
      "parents": [
        "ca721e45b39209415d2288dbac3667b26d9d1def"
      ],
      "author": {
        "name": "Arnaldo Carvalho de Melo",
        "email": "acme@redhat.com",
        "time": "Mon Mar 22 13:10:28 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Mar 22 18:47:35 2010 +0100"
      },
      "message": "perf stat: Better report failure to collect system wide stats\n\nBefore:\n\n[acme@doppio linux-2.6-tip]$ perf stat -a sleep 1s\n\n Performance counter stats for \u0027sleep 1s\u0027:\n\n  \u003cnot counted\u003e  task-clock-msecs\n  \u003cnot counted\u003e  context-switches\n  \u003cnot counted\u003e  CPU-migrations\n  \u003cnot counted\u003e  page-faults\n  \u003cnot counted\u003e  cycles\n  \u003cnot counted\u003e  instructions\n  \u003cnot counted\u003e  branches\n  \u003cnot counted\u003e  branch-misses\n  \u003cnot counted\u003e  cache-references\n  \u003cnot counted\u003e  cache-misses\n\n    1.016998463  seconds time elapsed\n\n[acme@doppio linux-2.6-tip]$\n\nNow:\n\n[acme@doppio linux-2.6-tip]$ perf stat -a sleep 1s\nNo permission to collect system-wide stats.\nConsider tweaking /proc/sys/kernel/perf_event_paranoid.\n[acme@doppio linux-2.6-tip]$\n\nReported-by: Ingo Molnar \u003cmingo@elte.hu\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frédéric Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nLKML-Reference: \u003c1269274229-20442-4-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "d6d901c23a9c4c7361aa901b5b2dda69703dd5e0",
      "tree": "601fc2cafac552c80b8456c8dd4b9964171552db",
      "parents": [
        "46be604b5ba738d53e5f5314813a4e7092864baf"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Thu Mar 18 11:36:05 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 18 16:21:12 2010 +0100"
      },
      "message": "perf events: Change perf parameter --pid to process-wide collection instead of thread-wide\n\nParameter --pid (or -p) of perf currently means a thread-wide\ncollection. For exmaple, if a process whose id is 8888 has 10\nthreads, \u0027perf top -p 8888\u0027 just collects the main thread\nstatistics. That\u0027s misleading. Users are used to attach a whole\nprocess when debugging a process by gdb. To follow normal usage\nstyle, the patch change --pid to process-wide collection and add\n--tid (-t) to mean a thread-wide collection.\n\nUsage example is:\n\n # perf top -p 8888\n # perf record -p 8888 -f sleep 10\n # perf stat -p 8888 -f sleep 10\n\nAbove commands collect the statistics of all threads of process\n8888.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Sheng Yang \u003csheng@linux.intel.com\u003e\nCc: Joerg Roedel \u003cjoro@8bytes.org\u003e\nCc: Jes Sorensen \u003cJes.Sorensen@redhat.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Gleb Natapov \u003cgleb@redhat.com\u003e\nCc: zhiteng.huang@intel.com\nCc: Zachary Amsden \u003czamsden@redhat.com\u003e\nLKML-Reference: \u003c1268922965-14774-3-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "6be2850effd6a8bae11d623c8c52e88d2fbc0e96",
      "tree": "f8a2e34dc16a8e79e87b4c3fbe420c2346343cf1",
      "parents": [
        "d6dc0b4ead6e8720096ecfa3d9e899b47ddbc8ed"
      ],
      "author": {
        "name": "Zhang, Yanmin",
        "email": "yanmin_zhang@linux.intel.com",
        "time": "Thu Mar 18 11:36:03 2010 -0300"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 18 16:21:11 2010 +0100"
      },
      "message": "perf stat: Enable counters when collecting process-wide or system-wide data\n\nCommand \u0027perf stat\u0027 doesn\u0027t enable counters when collecting an\nexisting (by -p) process or system-wide statistics. Fix the\nissue.\n\nChange the condition of fork/exec subcommand. If there is a\nsubcommand parameter, perf always forks/execs it. The usage\nexample is:\n\n # perf stat -a sleep 10\n\nSo this command could collect statistics for 10 seconds\nprecisely. User still could stop it by CTRL+C. Without the new\ncapability, user could only use CTRL+C to stop it without\nprecise time clock.\n\nAnother issue is \u0027perf stat -a\u0027 consumes 100% time of a full\nsingle logical cpu. It has a bad impact on running workload.\n\nFix it by adding a sleep(1) in the while(!done) loop in function\nrun_perf_stat.\n\nSigned-off-by: Zhang Yanmin \u003cyanmin_zhang@linux.intel.com\u003e\nSigned-off-by: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Avi Kivity \u003cavi@redhat.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Sheng Yang \u003csheng@linux.intel.com\u003e\nCc: Marcelo Tosatti \u003cmtosatti@redhat.com\u003e\nCc: Joerg Roedel \u003cjoro@8bytes.org\u003e\nCc: Jes Sorensen \u003cJes.Sorensen@redhat.com\u003e\nCc: Gleb Natapov \u003cgleb@redhat.com\u003e\nCc: Zachary Amsden \u003czamsden@redhat.com\u003e\nCc: \u003czhiteng.huang@intel.com\u003e\nLKML-Reference: \u003c1268922965-14774-1-git-send-email-acme@infradead.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "a12b51c478899fe0b7e874a559b05ba35f1128ee",
      "tree": "25b9911c1932c13fd8b468aa18eb17982ba31b59",
      "parents": [
        "220b140b52ab6cc133f674a7ffec8fa792054f25"
      ],
      "author": {
        "name": "Paul Mackerras",
        "email": "paulus@samba.org",
        "time": "Wed Mar 10 20:36:09 2010 +1100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Thu Mar 11 13:36:53 2010 +0100"
      },
      "message": "perf tools: Fix sparse CPU numbering related bugs\n\nAt present, the perf subcommands that do system-wide monitoring\n(perf stat, perf record and perf top) don\u0027t work properly unless\nthe online cpus are numbered 0, 1, ..., N-1.  These tools ask\nfor the number of online cpus with sysconf(_SC_NPROCESSORS_ONLN)\nand then try to create events for cpus 0, 1, ..., N-1.\n\nThis creates problems for systems where the online cpus are\nnumbered sparsely.  For example, a POWER6 system in\nsingle-threaded mode (i.e. only running 1 hardware thread per\ncore) will have only even-numbered cpus online.\n\nThis fixes the problem by reading the /sys/devices/system/cpu/online\nfile to find out which cpus are online.  The code that does that is in\ntools/perf/util/cpumap.[ch], and consists of a read_cpu_map()\nfunction that sets up a cpumap[] array and returns the number of\nonline cpus.  If /sys/devices/system/cpu/online can\u0027t be read or\ncan\u0027t be parsed successfully, it falls back to using sysconf to\nask how many cpus are online and sets up an identity map in cpumap[].\n\nThe perf record, perf stat and perf top code then calls\nread_cpu_map() in the system-wide monitoring case (instead of\nsysconf) and uses cpumap[] to get the cpu numbers to pass to\nperf_event_open.\n\nSigned-off-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Anton Blanchard \u003canton@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@infradead.org\u003e\nLKML-Reference: \u003c20100310093609.GA3959@brick.ozlabs.ibm.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "60666c630bdb33983a894b050b588b663f38f368",
      "tree": "ec9eef2f18fe94f7ec6d86ad4fcb046081a47283",
      "parents": [
        "0fb8ee48d9dfff6a0913ceb0be2068d8be203763"
      ],
      "author": {
        "name": "Liming Wang",
        "email": "liming.wang@windriver.com",
        "time": "Thu Dec 31 16:05:50 2009 +0800"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Wed Jan 13 10:09:08 2010 +0100"
      },
      "message": "perf tools: Fix --pid option for stat\n\ncurrent pid option doesn\u0027t work for perf stat. Change it to what\nperf record --pid acts as.\n\nSigned-off-by: Liming Wang \u003climing.wang@windriver.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003cpeterz@infradead.org\u003e\nLKML-Reference: \u003c1262246750-2191-1-git-send-email-liming.wang@windriver.com\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "7255fe2a42c612f2b8fe4c347f0a5f0c97d85a46",
      "tree": "188f42ec858fc1caf7a50d8fb92393bd7778d59b",
      "parents": [
        "d2fb8b4151a92223da6a84006f8f248ebeb6677d"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.de.marchi@gmail.com",
        "time": "Sun Nov 15 12:05:08 2009 -0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Nov 15 15:25:50 2009 +0100"
      },
      "message": "perf stat: Do not print ratio when task-clock event is not counted\n\nThe ratio between the number of events and the time elapsed makes\nsense only if task-clock event is counted. Otherwise it will be\nsimply a (confusing)\n\n\t#      0.000 M/sec\n\nThis patch outputs the ratio only if task-clock event is counted.\nSome test examples of before and after:\n\nBefore:\n\n [lucas@skywalker linux.trees.git]$ sudo perf stat -e branch-misses -a -- sleep 1\n\n\t Performance counter stats for \u0027sleep 1\u0027:\n\n\t\t1367818  branch-misses            #      0.000 M/sec\n\n\t    1.001494325  seconds time elapsed\n\nAfter (without task-clock):\n\n [lucas@skywalker perf]$ sudo ./perf stat -e branch-misses -a -- sleep 1\n\n\t Performance counter stats for \u0027sleep 1\u0027:\n\n\t\t1135044  branch-misses\n\n\t    1.001370775  seconds time elapsed\n\nAfter (with task-clock):\n\n [lucas@skywalker perf]$ sudo ./perf stat -e branch-misses -e task-clock -a -- sleep 1\n\n\t Performance counter stats for \u0027sleep 1\u0027:\n\n\t\t1070111  branch-misses            #      0.534 M/sec\n\t    2002.730893  task-clock-msecs         #      1.999 CPUs\n\n\t    1.001640292  seconds time elapsed\n\nSigned-off-by: Lucas De Marchi \u003clucas.de.marchi@gmail.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nLKML-Reference: \u003c20091115140507.GB21561@skywalker.lan\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "dd86e72abdbc4b436471af5a97927c6145f5298c",
      "tree": "dfe47fb4d8644de51a4f227e3c0e06f7f7a35934",
      "parents": [
        "56aab464ff6232bcc2f53b26576983dc83f75db7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 19 13:33:03 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 19 13:36:32 2009 +0200"
      },
      "message": "perf stat: Count branches first\n\nCount branches first, cache-misses second. The reason is that\non x86 branches are not counted by all counters on all CPUs.\n\nBefore:\n\n Performance counter stats for \u0027ls\u0027:\n\n       0.756653  task-clock-msecs         #      0.802 CPUs\n              0  context-switches         #      0.000 M/sec\n              0  CPU-migrations           #      0.000 M/sec\n            250  page-faults              #      0.330 M/sec\n        2375725  cycles                   #   3139.781 M/sec\n        1628129  instructions             #      0.685 IPC\n          19643  cache-references         #     25.960 M/sec\n           4608  cache-misses             #      6.090 M/sec\n         342532  branches                 #    452.694 M/sec\n  \u003cnot counted\u003e  branch-misses\n\n    0.000943356  seconds time elapsed\n\nAfter:\n\n Performance counter stats for \u0027ls\u0027:\n\n       1.056734  task-clock-msecs         #      0.859 CPUs\n              0  context-switches         #      0.000 M/sec\n              0  CPU-migrations           #      0.000 M/sec\n            259  page-faults              #      0.245 M/sec\n        3345932  cycles                   #   3166.295 M/sec\n        3074090  instructions             #      0.919 IPC\n         616928  branches                 #    583.806 M/sec\n          39279  branch-misses            #      6.367 %\n          21312  cache-references         #     20.168 M/sec\n           3661  cache-misses             #      3.464 M/sec\n\n    0.001230551  seconds time elapsed\n\n(also prettify the printout of branch misses, in case it\u0027s\n getting scaled.)\n\nCc: Tim Blechmann \u003ctim@klingt.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4ADC3975.8050109@klingt.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n---\n tools/perf/builtin-stat.c |    2 ++\n 1 files changed, 2 insertions(+), 0 deletions(-)\n\ndiff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c\nindex c373683..95a55ea 100644\n--- a/tools/perf/builtin-stat.c\n+++ b/tools/perf/builtin-stat.c\n@@ -59,6 +59,8 @@ static struct perf_event_attr default_attrs[] \u003d {\n   { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_INSTRUCTIONS\t},\n   { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_REFERENCES},\n   { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_MISSES\t},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_INSTRUCTIONS},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_MISSES\t},\n\n };\n---\n tools/perf/builtin-stat.c |   20 ++++++++++----------\n 1 files changed, 10 insertions(+), 10 deletions(-)\n\ndiff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c\nindex 95a55ea..90e0a26 100644\n--- a/tools/perf/builtin-stat.c\n+++ b/tools/perf/builtin-stat.c\n@@ -50,17 +50,17 @@\n\n static struct perf_event_attr default_attrs[] \u003d {\n\n-  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_TASK_CLOCK\t},\n-  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_CONTEXT_SWITCHES},\n-  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_CPU_MIGRATIONS\t},\n-  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_PAGE_FAULTS\t},\n-\n-  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CPU_CYCLES\t},\n-  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_INSTRUCTIONS\t},\n-  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_REFERENCES},\n-  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_MISSES\t},\n-  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_INSTRUCTIONS},\n-  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_MISSES\t},\n+  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_TASK_CLOCK\t\t},\n+  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_CONTEXT_SWITCHES\t},\n+  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_CPU_MIGRATIONS\t\t},\n+  { .type \u003d PERF_TYPE_SOFTWARE, .config \u003d PERF_COUNT_SW_PAGE_FAULTS\t\t},\n+\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CPU_CYCLES\t\t},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_INSTRUCTIONS\t\t},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_REFERENCES\t},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_MISSES\t\t},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_INSTRUCTIONS\t},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_MISSES\t\t},\n\n };\n"
    },
    {
      "commit": "56aab464ff6232bcc2f53b26576983dc83f75db7",
      "tree": "7688e298d829febb2acf67d872e0f893a3178c51",
      "parents": [
        "12133afffcc7140eea915b1572189a2ea0cf7b0e"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 19 13:27:08 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 19 13:27:08 2009 +0200"
      },
      "message": "perf stat: Re-align the default_attrs[] array\n\nClean up the array definition to be vertically aligned.\n\nNo functional effects.\n\nCc: Tim Blechmann \u003ctim@klingt.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4ADC3975.8050109@klingt.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n---\n tools/perf/builtin-stat.c |    2 ++\n 1 files changed, 2 insertions(+), 0 deletions(-)\n\ndiff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c\nindex c373683..95a55ea 100644\n--- a/tools/perf/builtin-stat.c\n+++ b/tools/perf/builtin-stat.c\n@@ -59,6 +59,8 @@ static struct perf_event_attr default_attrs[] \u003d {\n   { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_INSTRUCTIONS\t},\n   { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_REFERENCES},\n   { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_CACHE_MISSES\t},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_INSTRUCTIONS},\n+  { .type \u003d PERF_TYPE_HARDWARE, .config \u003d PERF_COUNT_HW_BRANCH_MISSES\t},\n\n };\n"
    },
    {
      "commit": "12133afffcc7140eea915b1572189a2ea0cf7b0e",
      "tree": "4662d18705e9c5cb4263bfec86d8ac1ebf01d699",
      "parents": [
        "1abc7f5500fff8422f34826a006648d8741d83d3"
      ],
      "author": {
        "name": "Tim Blechmann",
        "email": "tim@klingt.org",
        "time": "Mon Oct 19 12:03:33 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 19 13:26:42 2009 +0200"
      },
      "message": "perf stat: Add branch performance events to default output\n\nAdds performance event information about branches\nand branch misses to the default output of perf stat.\n\nSigned-off-by: Tim Blechmann \u003ctim@klingt.org\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003c4ADC3975.8050109@klingt.org\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "11018201b831e19304c0d639f105ad6c27e120b1",
      "tree": "531051de316cdf54b8193d11fb843d7432419d2c",
      "parents": [
        "f39cdf25bf77219676ec5360980ac40b1a7e144a"
      ],
      "author": {
        "name": "Anton Blanchard",
        "email": "anton@samba.org",
        "time": "Sun Oct 18 22:29:23 2009 +1100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Oct 19 09:20:21 2009 +0200"
      },
      "message": "perf stat: Add branch performance metric\n\nWhen we count both branches and branch-misses it is useful to\nprint out the percentage of branch-misses:\n\n # perf stat -e branches -e branch-misses /bin/true\n\n Performance counter stats for \u0027/bin/true\u0027:\n\n         401684  branches                 #      0.000 M/sec\n          23301  branch-misses            #      5.801 %\n\nSigned-off-by: Anton Blanchard \u003canton@samba.org\u003e\nCc: paulus@samba.org\nCc: a.p.zijlstra@chello.nl\nLKML-Reference: \u003c20091018112923.GQ4808@kryten\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "933da83aa17939a78d59708321c0b27d0ec8c6ce",
      "tree": "623ef9032ef6321179a389147a3296f064037504",
      "parents": [
        "1ad0560e8cdb6d5b381220dc2da187691b5ce124"
      ],
      "author": {
        "name": "Chris Wilson",
        "email": "chris@chris-wilson.co.uk",
        "time": "Sun Oct 04 01:35:01 2009 +0100"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Sun Oct 04 19:37:39 2009 +0200"
      },
      "message": "perf: Propagate term signal to child\n\nIf we launch the child on behalf of the user, ensure that it dies\nalong with ourselves when we are interrupted.\n\nSigned-off-by: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nCc: Chris Wilson \u003cchris@chris-wilson.co.uk\u003e\nLKML-Reference: \u003c1254616502-4728-1-git-send-email-chris@chris-wilson.co.uk\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "c7f7fea30b7e52c9d4b9cef271110a98d59adcbc",
      "tree": "aa57c1290455298d178ed6880cd8157a3e738abd",
      "parents": [
        "a8f90e906783f1f815120eefe813b23cb396e9bd"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 22 14:53:51 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Tue Sep 22 15:01:47 2009 +0200"
      },
      "message": "perf stat: Fix zero total printouts\n\nBefore:\n\n           0  sched:sched_switch #        nan M/sec\n\nAfter:\n\n           0  sched:sched_switch #      0.000 M/sec\n\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "cdd6c482c9ff9c55475ee7392ec8f672eddb7be6",
      "tree": "81f98a3ab46c589792057fe2392c1e10f8ad7893",
      "parents": [
        "dfc65094d0313cc48969fa60bcf33d693aeb05a7"
      ],
      "author": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 12:02:48 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Mon Sep 21 14:28:04 2009 +0200"
      },
      "message": "perf: Do the big rename: Performance Counters -\u003e Performance Events\n\nBye-bye Performance Counters, welcome Performance Events!\n\nIn the past few months the perfcounters subsystem has grown out its\ninitial role of counting hardware events, and has become (and is\nbecoming) a much broader generic event enumeration, reporting, logging,\nmonitoring, analysis facility.\n\nNaming its core object \u0027perf_counter\u0027 and naming the subsystem\n\u0027perfcounters\u0027 has become more and more of a misnomer. With pending\ncode like hw-breakpoints support the \u0027counter\u0027 name is less and\nless appropriate.\n\nAll in one, we\u0027ve decided to rename the subsystem to \u0027performance\nevents\u0027 and to propagate this rename through all fields, variables\nand API names. (in an ABI compatible fashion)\n\nThe word \u0027event\u0027 is also a bit shorter than \u0027counter\u0027 - which makes\nit slightly more convenient to write/handle as well.\n\nThanks goes to Stephane Eranian who first observed this misnomer and\nsuggested a rename.\n\nUser-space tooling and ABI compatibility is not affected - this patch\nshould be function-invariant. (Also, defconfigs were not touched to\nkeep the size down.)\n\nThis patch has been generated via the following script:\n\n  FILES\u003d$(find * -type f | grep -vE \u0027oprofile|[^K]config\u0027)\n\n  sed -i \\\n    -e \u0027s/PERF_EVENT_/PERF_RECORD_/g\u0027 \\\n    -e \u0027s/PERF_COUNTER/PERF_EVENT/g\u0027 \\\n    -e \u0027s/perf_counter/perf_event/g\u0027 \\\n    -e \u0027s/nb_counters/nb_events/g\u0027 \\\n    -e \u0027s/swcounter/swevent/g\u0027 \\\n    -e \u0027s/tpcounter_event/tp_event/g\u0027 \\\n    $FILES\n\n  for N in $(find . -name perf_counter.[ch]); do\n    M\u003d$(echo $N | sed \u0027s/perf_counter/perf_event/g\u0027)\n    mv $N $M\n  done\n\n  FILES\u003d$(find . -name perf_event.*)\n\n  sed -i \\\n    -e \u0027s/COUNTER_MASK/REG_MASK/g\u0027 \\\n    -e \u0027s/COUNTER/EVENT/g\u0027 \\\n    -e \u0027s/\\\u003cevent\\\u003e/event_id/g\u0027 \\\n    -e \u0027s/counter/event/g\u0027 \\\n    -e \u0027s/Counter/Event/g\u0027 \\\n    $FILES\n\n... to keep it as correct as possible. This script can also be\nused by anyone who has pending perfcounters patches - it converts\na Linux kernel tree over to the new naming. We tried to time this\nchange to the point in time where the amount of pending patches\nis the smallest: the end of the merge window.\n\nNamespace clashes were fixed up in a preparatory patch - and some\nstylistic fallout will be fixed up in a subsequent patch.\n\n( NOTE: \u0027counters\u0027 are still the proper terminology when we deal\n  with hardware registers - and these sed scripts are a bit\n  over-eager in renaming them. I\u0027ve undone some of that, but\n  in case there\u0027s something left where \u0027counter\u0027 would be\n  better than \u0027event\u0027 we can undo that on an individual basis\n  instead of touching an otherwise nicely automated patch. )\n\nSuggested-by: Stephane Eranian \u003ceranian@google.com\u003e\nAcked-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nAcked-by: Paul Mackerras \u003cpaulus@samba.org\u003e\nReviewed-by: Arjan van de Ven \u003carjan@linux.intel.com\u003e\nCc: Mike Galbraith \u003cefault@gmx.de\u003e\nCc: Arnaldo Carvalho de Melo \u003cacme@redhat.com\u003e\nCc: Frederic Weisbecker \u003cfweisbec@gmail.com\u003e\nCc: Steven Rostedt \u003crostedt@goodmis.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Kyle McMartin \u003ckyle@mcmartin.ca\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "849abde92bd3314a4894f2b4f70b30c2accf8653",
      "tree": "10249b655b074635bf2c46f25af0c54c894606c3",
      "parents": [
        "8a02631a470d6f2ccec7bcf79c1058b0d4240bce"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Sep 04 18:23:38 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 04 20:27:26 2009 +0200"
      },
      "message": "perf stat: Clean up statistics calculations a bit more\n\nRemove some, now useless, global storage.\nDon\u0027t calculate the stddev when not needed.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "8a02631a470d6f2ccec7bcf79c1058b0d4240bce",
      "tree": "e9dc528dff1db2d7165f315f9c05877265561444",
      "parents": [
        "63d40deb2e7c64ed55943d49f078e09fc4b64b54"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Sep 04 17:26:26 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 04 17:38:15 2009 +0200"
      },
      "message": "perf stat: More advanced variance computation\n\nUse the more advanced single pass variance algorithm outlined\non the wikipedia page. This is numerically more stable for\nlarger sample sets.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    },
    {
      "commit": "63d40deb2e7c64ed55943d49f078e09fc4b64b54",
      "tree": "df36ad086b762f87b6f53ff8750b62e25b2cce07",
      "parents": [
        "9e9772c458d50dabdb5327821da3803254638cd1"
      ],
      "author": {
        "name": "Peter Zijlstra",
        "email": "a.p.zijlstra@chello.nl",
        "time": "Fri Sep 04 17:03:13 2009 +0200"
      },
      "committer": {
        "name": "Ingo Molnar",
        "email": "mingo@elte.hu",
        "time": "Fri Sep 04 17:38:14 2009 +0200"
      },
      "message": "perf stat: Use stddev_mean in stead of stddev\n\nWhen we\u0027re computing the mean by sampling the distribution,\nthen the std dev of the mean is related to the std dev of the\nsample set by:\n\n  stddev_mean \u003d std_dev / sqrt(N)\n\nWhich is exactly what we want.\n\nThis results in the error on the mean decreasing with\nincreasing number of samples.\n\nAlso fix the scaled \u003d\u003d -1, aka not counted case.\n\nSigned-off-by: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nLKML-Reference: \u003cnew-submission\u003e\nSigned-off-by: Ingo Molnar \u003cmingo@elte.hu\u003e\n"
    }
  ],
  "next": "9e9772c458d50dabdb5327821da3803254638cd1"
}
