amd zen2 predefined events need to be updated

Issue #77 resolved
Vince Weaver created an issue

as reported by Steve Kaufmann, the zen2 events are not the same as zen1 and papi_events.csv needs to be updated.

unfortunately the events between zen1 and zen2 seem to be very different so it’s not a quick fix

Comments (5)

  1. Sebastian Mobo

    I took a look through some documentation for Zen 2 performance events, and added presets based on that in pull request #127. That said, I don’t have hardware that I can actually run tests on, so I’m not sure if they’re fully correct yet.

  2. David Álvarez

    Hi!

    How’s the status of this issue? I have tested pull request #127 and found that FP_INS, FP_OPS and L1_DCM do not pass testing on a Zen2 System I have access to, but the rest seem to work fine. Specifically, L1_DCM is counting CHANGE_TO_X accesses to the L2 cache, and if I remove that, then I pass the L1 cache tests. In master there is a FP_INS counter for Zen2 that works fine, but FP_OPS is also wrong apparently.

    Can I help in some way to move this forward? I can provide testing on a Zen2 system 🙂

  3. Giuseppe Congiu
    # New FLOP event on zen2
    # PPR (under section 2.1.15.3. --
    # https://www.amd.com/system/files/TechDocs/54945_3.03_ppr_ZP_B2_pub.zip)
    # explains that FLOP events require MergeEvent support, which was included•
    # in the 5.6 kernel.•
    # Hence, a kernel version 5.6 or greater is required.
    # NOTE: without the MergeEvent support in the kernel, there is no guarantee
    # that this SSE/AVX FLOP event produces any useful data whatsoever.••
    PRESET,PAPI_FP_OPS,NOT_DERIVED,RETIRED_SSE_AVX_FLOPS:ANY
    # Since FP_OPS counts both single- and double-prec operations
    # correctly, we don't need to confuse the user with additional
    # DP_OPS and SP_OPS events. So, I'm taking them out.••
    #PRESET,PAPI_DP_OPS,NOT_DERIVED,RETIRED_SSE_AVX_FLOPS:ANY
    #PRESET,PAPI_SP_OPS,NOT_DERIVED,RETIRED_SSE_AVX_FLOPS:ANY
    #
    # Floating-point instructions (including non-numeric floating-point instructions,
    # e.g. Move or Merge Scalar Double-Precision Floating-Point values)
    PRESET,PAPI_FP_INS,NOT_DERIVED,RETIRED_MMX_FP_INSTRUCTIONS:SSE_INSTR:MMX_INSTR:X87_INSTR
    # Since FP_INS counts both single- and double-prec instuctions
    # correctly, we don't need to confuse the user with additional
    # VEC_DP and VEC_SP events. So, I'm taking them out.••
    

    From `papi_events.csv`. Please, consider the comments above.

  4. Log in to comment