Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce version headers to JSON event lists #22

Closed
edwarddavidbaker opened this issue Oct 10, 2022 · 0 comments · Fixed by #30
Closed

Introduce version headers to JSON event lists #22

edwarddavidbaker opened this issue Oct 10, 2022 · 0 comments · Fixed by #30
Assignees
Labels
enhancement New feature or request event lists Issues related to platform event files.

Comments

@edwarddavidbaker
Copy link
Contributor

edwarddavidbaker commented Oct 10, 2022

Currently event file versions in this repository are tracked via mapfile.csv and git history. The filenames themselves do not have version information. Version information is going to be re-introduced to event files with a dedicated header section.

Software updates required

The list of events are no longer tracked as a top level array. Instead first check for Header or Events entries. If present, retrieve the event list array from json_content["Events"].

Examples:

Example from alderlake_goldencove_core.json

Current

[
  {
    "EventCode": "0xc4",
    "UMask": "0x00",
    "EventName": "BR_INST_RETIRED.ALL_BRANCHES",
    "BriefDescription": "All branch instructions retired.",
    "Counter": "0,1,2,3,4,5,6,7",
    "PEBScounters": "0,1,2,3,4,5,6,7",
    "SampleAfterValue": "400009",
    "MSRIndex": "0x00",
    "MSRValue": "0x00",
    "CollectPEBSRecord": "2",
    "TakenAlone": "0",
    "CounterMask": "0",
    "Invert": "0",
    "EdgeDetect": "0",
    "PEBS": "1",
    "Data_LA": "0",
    "L1_Hit_Indication": "0",
    "Errata": "null",
    "Offcore": "0",
    "Speculative": "0"
  },
  {
    "EventCode": "0xc5",
    "UMask": "0x00",
<snip>
  }
]

This change

{
  "Header": {
    "Copyright": "Copyright (c) 2001 - 2022 Intel Corporation. All rights reserved.",
    "Info": "Performance Monitoring Events for 12th Generation Intel(R) Core(TM) Processor - V1.15",
    "DatePublished": "08/25/2022",
    "Version": "1.15",
    "Legend": ""
  },
  "Events": [
    {
      "EventCode": "0xc4",
      "UMask": "0x00",
      "EventName": "BR_INST_RETIRED.ALL_BRANCHES",
      "BriefDescription": "All branch instructions retired.",
      "Counter": "0,1,2,3,4,5,6,7",
      "PEBScounters": "0,1,2,3,4,5,6,7",
      "SampleAfterValue": "400009",
      "MSRIndex": "0x00",
      "MSRValue": "0x00",
      "CollectPEBSRecord": "2",
      "TakenAlone": "0",
      "CounterMask": "0",
      "Invert": "0",
      "EdgeDetect": "0",
      "PEBS": "1",
      "Data_LA": "0",
      "L1_Hit_Indication": "0",
      "Errata": "null",
      "Offcore": "0",
      "Speculative": "0"
    },
    {
      "EventCode": "0xc5",
      "UMask": "0x00",
<snip>
    }
]
@edwarddavidbaker edwarddavidbaker self-assigned this Oct 10, 2022
@edwarddavidbaker edwarddavidbaker added enhancement New feature or request event lists Issues related to platform event files. labels Oct 10, 2022
@edwarddavidbaker edwarddavidbaker changed the title Introduce version headers to event list JSON Introduce version headers to JSON event lists Oct 25, 2022
edwarddavidbaker added a commit to edwarddavidbaker/pmu-tools that referenced this issue Nov 22, 2022
Recently a Header was introduced to Intel event files [1]. This commit
checks for the presence of the new structure and pulls events from
'Events' accordingly.

[1] intel/perfmon#22
edwarddavidbaker added a commit to edwarddavidbaker/pmu-tools that referenced this issue Nov 22, 2022
Recently a Header was introduced to Intel event files [1]. This commit
checks for the presence of the new structure and pulls events from
'Events' accordingly.

[1] intel/perfmon#22
andikleen pushed a commit to andikleen/pmu-tools that referenced this issue Nov 29, 2022
Recently a Header was introduced to Intel event files [1]. This commit
checks for the presence of the new structure and pulls events from
'Events' accordingly.

[1] intel/perfmon#22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request event lists Issues related to platform event files.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant