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

[BUG] Wrong Read/Write amount of data using likwid-perfctr #515

Closed
DerNils-git opened this issue Feb 17, 2023 · 3 comments
Closed

[BUG] Wrong Read/Write amount of data using likwid-perfctr #515

DerNils-git opened this issue Feb 17, 2023 · 3 comments
Labels

Comments

@DerNils-git
Copy link

DerNils-git commented Feb 17, 2023

Describe the bug
Using likwid-perfctr to measure the bandwidth of an implementation on an Intel® Xeon® Platinum 8360Y Processor with the performance group MEM_DP seems to miss about a factor of two.
I try to measure the bandwidth of a single processor on a two socket system with OMP threads pinned to the first socket.

Memory write data volume [GBytes],42.8264
Actual memory written is around 85GB. A similar issue is encountered for the memory read.
Below I provided the counters that I think are related to this metric.

This might be a similar issue as found in #510

To Reproduce

likwid-perfctr -C S0:0-35 -m -g MEM_DP --output perf_data.csv <MyExecutable>
likwid-perfctr -- Version 5.2.1 (commit: 233ab943543480cd46058b34616c174198ba0459)

Related Counters

CAS_COUNT_RD,MBOX0C0,192339500,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_WR,MBOX0C1,167361500,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_RD,MBOX1C0,192358300,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_WR,MBOX1C1,167335800,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_RD,MBOX2C0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_WR,MBOX2C1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_RD,MBOX3C0,192376000,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_WR,MBOX3C1,167382800,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_RD,MBOX4C0,192406600,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_WR,MBOX4C1,167352300,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_RD,MBOX5C0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
CAS_COUNT_WR,MBOX5C1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

Topology Information

likwid-topology
--------------------------------------------------------------------------------
CPU name:       Intel(R) Xeon(R) Platinum 8360Y CPU @ 2.40GHz
CPU type:       Intel Icelake SP processor
CPU stepping:   6
********************************************************************************
Hardware Thread Topology
********************************************************************************
Sockets:                2
Cores per socket:       36
Threads per core:       2
--------------------------------------------------------------------------------
HWThread        Thread          Core            Socket          Available
0               0               0               0               *
1               0               1               0               *
2               0               2               0               *
3               0               3               0               *
4               0               4               0               *
5               0               5               0               *
6               0               6               0               *
7               0               7               0               *
8               0               8               0               *
9               0               9               0               *
10              0               10              0               *
11              0               11              0               *
12              0               12              0               *
13              0               13              0               *
14              0               14              0               *
15              0               15              0               *
16              0               16              0               *
17              0               17              0               *
18              0               18              0               *
19              0               19              0               *
20              0               20              0               *
21              0               21              0               *
22              0               22              0               *
23              0               23              0               *
24              0               24              0               *
25              0               25              0               *
26              0               26              0               *
27              0               27              0               *
28              0               28              0               *
29              0               29              0               *
30              0               30              0               *
31              0               31              0               *
32              0               32              0               *
33              0               33              0               *
34              0               34              0               *
35              0               35              0               *
...
Socket 0:               ( 0 72 1 73 2 74 3 75 4 76 5 77 6 78 7 79 8 80 9 81 10 82 11 83 12 84 13 85 14 86 15 87 16 88 17 89 18 90 19 91 20 92 21 93 22 94 23 95 24 96 25 97 26 98 27 99 28 100 29 101 30 102 31 103 32 104 33 105 34 106 35 107 )
Socket 1:               ( 36 108 37 109 38 110 39 111 40 112 41 113 42 114 43 115 44 116 45 117 46 118 47 119 48 120 49 121 50 122 51 123 52 124 53 125 54 126 55 127 56 128 57 129 58 130 59 131 60 132 61 133 62 134 63 135 64 136 65 137 66 138 67 139 68 140 69 141 70 142 71 143 )
...

Thanks in advance for your help.
So far I did not prepare a minimum example that I could share with this problem. If that is necessary I think I should be able to prepare one.

@TomTheBear
Copy link
Member

I realized after the release of 5.2.2 that the MEM_* group files for ICX are missing some counters. I fixed it in the repo directly but could not update the release tarball anymore, so I provided the fix on the release page. You can also download the group files from the repo.

@DerNils-git
Copy link
Author

Thanks, I will try a newer version of likwid.

@TomTheBear
Copy link
Member

This will not help. The latest 5.2.2 does not include the fix. You have to get the 5.2.2 tarball and apply the patch yourself.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants