Uncore Manual
Reference Number: 329468-002 157
Uncore Performance Monitoring
Intel® QPI Link Layer Performance Monitoring
TxL_FLITS_G2
• Title: Flits Transferred - Group 2
• Category: FLITS_TX Events
• Event Code: 0x01
• Extra Select Bit: Y
• Max. Inc/Cyc:. 2, Register Restrictions: 0-3
• Definition: Counts the number of flits transmitted across the QPI Link. This is one of three
“groups” that allow us to track flits. It includes filters for NDR, NCB, and NCS message classes.
Each “flit” is made up of 80 bits of information (in addition to some ECC data). In full-width (L0)
mode, flits are made up of four “fits”, each of which contains 20 bits of data (along with some
additional ECC data). In half-width (L0p) mode, the fits are only 10 bits, and therefore it takes
twice as many fits to transmit a flit. When one talks about QPI “speed” (for example, 8.0 GT/s),
the “transfers” here refer to “fits”. Therefore, in L0, the system will transfer 1 “flit” at the rate of
1/4th the QPI speed. One can calculate the bandwidth of the link by taking: flits*80b/time. Note
that this is not the same as “data” bandwidth. For example, when we are transferring a 64B cach-
eline across QPI, we will break it into 9 flits -- 1 with header information and 8 with 64 bits of
actual “data” and an additional 16 bits of other information. To calculate “data” bandwidth, one
should therefore do: data flits * 8B / time.
DRS_DATA b00001000 DRS Data Flits
Counts the total number of data flits transmitted over QPI on the
DRS (Data Response) channel. DRS flits are used to transmit
data with coherency. This does not count data flits transmitted
over the NCB channel which transmits non-coherent data. This
includes only the data flits (not the header).
DRS_NONDATA b00010000 DRS Header Flits
Counts the total number of protocol flits transmitted over QPI on
the DRS (Data Response) channel. DRS flits are used to transmit
data with coherency. This does not count data flits transmitted
over the NCB channel which transmits non-coherent data. This
includes only the header flits (not the data). This includes
extended headers.
DRS b00011000 DRS Flits (both Header and Data)
Counts the total number of flits transmitted over QPI on the DRS
(Data Response) channel. DRS flits are used to transmit data
with coherency.
Table 2-159. Unit Masks for TxL_FLITS_G2
Extension
umask
[15:8]
Description
NDR_AD b00000001 Non-Data Response Tx Flits - AD
Counts the total number of flits transmitted over the NDR (Non-
Data Response) channel. This channel is used to send a variety
of protocol flits including grants and completions. This is only for
NDR packets to the local socket which use the AK ring.
NDR_AK b00000010 Non-Data Response Tx Flits - AK
Counts the total number of flits transmitted over the NDR (Non-
Data Response) channel. This channel is used to send a variety
of protocol flits including grants and completions. This is only for
NDR packets destined for Route-thru to a remote socket.
NCB_DATA b00000100 Non-Coherent data Tx Flits
Number of Non-Coherent Bypass data flits. These flits are
generally used to transmit non-coherent data across QPI. This
does not include a count of the DRS (coherent) data flits. This
only counts the data flits, not the NCB headers.
Table 2-158. Unit Masks for TxL_FLITS_G1
Extension
umask
[15:8]
Description