Skip to content

Dynamic Marker API broken on LIKWID#master (@perfmon_marker) #41

@carstenbauer

Description

@carstenbauer

On LIKWID#master (RRZE-HPC/likwid@7f5d3f3)

julia> using LIKWID

julia> @perfmon_marker "FLOPS_DP" begin
           @marker "test" 3+3
       end

signal (11): Segmentation fault
in expression starting at REPL[2]:1
perfmon_readMarkerFile at /upb/departments/pc2/users/b/bauerc/.local/lib/liblikwid.so (unknown line)
perfmon_readMarkerFile at /scratch/pc2-mitarbeiter/bauerc/devel/LIKWID.jl/src/LibLikwid.jl:1071 [inlined]
read at /scratch/pc2-mitarbeiter/bauerc/devel/LIKWID.jl/src/markerfile.jl:11 [inlined]
_print_markerfile at /scratch/pc2-mitarbeiter/bauerc/devel/LIKWID.jl/src/prettyprinting.jl:41
#perfmon_marker#5 at /scratch/pc2-mitarbeiter/bauerc/devel/LIKWID.jl/src/marker.jl:354
unknown function (ip: 0x1554f023992e)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
perfmon_marker at /scratch/pc2-mitarbeiter/bauerc/devel/LIKWID.jl/src/marker.jl:339
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1788 [inlined]
do_call at /buildworker/worker/package_linux64/build/src/interpreter.c:126
eval_value at /buildworker/worker/package_linux64/build/src/interpreter.c:215
eval_stmt_value at /buildworker/worker/package_linux64/build/src/interpreter.c:166 [inlined]
eval_body at /buildworker/worker/package_linux64/build/src/interpreter.c:587
jl_interpret_toplevel_thunk at /buildworker/worker/package_linux64/build/src/interpreter.c:731
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:885
jl_toplevel_eval_flex at /buildworker/worker/package_linux64/build/src/toplevel.c:830
jl_toplevel_eval_in at /buildworker/worker/package_linux64/build/src/toplevel.c:944
eval at ./boot.jl:373 [inlined]
eval_user_input at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:150
repl_backend_loop at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:246
start_repl_backend at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:231
#run_repl#47 at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:364
run_repl at /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.7/REPL/src/REPL.jl:351
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
#930 at ./client.jl:394
jfptr_YY.930_45169.clone_1 at /cm/shared/apps/pc2/EB-SW/software/JuliaHPC/1.7.2-fosscuda-2020b-linux-x86_64/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1788 [inlined]
jl_f__call_latest at /buildworker/worker/package_linux64/build/src/builtins.c:757
#invokelatest#2 at ./essentials.jl:716 [inlined]
invokelatest at ./essentials.jl:714 [inlined]
run_main_repl at ./client.jl:379
exec_options at ./client.jl:309
_start at ./client.jl:495     
jfptr__start_38732.clone_1 at /cm/shared/apps/pc2/EB-SW/software/JuliaHPC/1.7.2-fosscuda-2020b-linux-x86_64/lib/julia/sys.so (unknown line)
_jl_invoke at /buildworker/worker/package_linux64/build/src/gf.c:2247 [inlined]
jl_apply_generic at /buildworker/worker/package_linux64/build/src/gf.c:2429
jl_apply at /buildworker/worker/package_linux64/build/src/julia.h:1788 [inlined]
true_main at /buildworker/worker/package_linux64/build/src/jlapi.c:559
jl_repl_entrypoint at /buildworker/worker/package_linux64/build/src/jlapi.c:701
main at julia (unknown line)
__libc_start_main at /lib64/libc.so.6 (unknown line)
unknown function (ip: 0x400808)
Allocations: 4599565 (Pool: 4597687; Big: 1878); GC: 6
Segmentation fault (core dumped)

Same works with LIKWID v5.2.1:

julia> using LIKWID

julia> @perfmon_marker "FLOPS_DP" begin
           @marker "test" 3+3
       end

Region: test, Group: FLOPS_DP
┌──────────────────────────────────────────┬──────────┐
│                                    Event │ Thread 1 │
├──────────────────────────────────────────┼──────────┤
│                        INSTR_RETIRED_ANY │   4058.0 │
│                    CPU_CLK_UNHALTED_CORE │   9415.0 │
│                     CPU_CLK_UNHALTED_REF │  22560.0 │
│ FP_ARITH_INST_RETIRED_128B_PACKED_DOUBLE │      0.0 │
│      FP_ARITH_INST_RETIRED_SCALAR_DOUBLE │     11.0 │
│ FP_ARITH_INST_RETIRED_256B_PACKED_DOUBLE │      0.0 │
│ FP_ARITH_INST_RETIRED_512B_PACKED_DOUBLE │      0.0 │
└──────────────────────────────────────────┴──────────┘
┌──────────────────────┬────────────┐
│               Metric │   Thread 1 │
├──────────────────────┼────────────┤
│  Runtime (RDTSC) [s] │ 1.21129e-7 │
│ Runtime unhalted [s] │ 3.93251e-6 │
│          Clock [MHz] │    999.153 │
│                  CPI │    2.32011 │
│         DP [MFLOP/s] │    90.8125 │
│     AVX DP [MFLOP/s] │        0.0 │
│  AVX512 DP [MFLOP/s] │        0.0 │
│     Packed [MUOPS/s] │        0.0 │
│     Scalar [MUOPS/s] │    90.8125 │
│  Vectorization ratio │        0.0 │
└──────────────────────┴────────────┘

(I've compiled with perf_event in both cases and have otherwise left the config.mk as is. Don't think that this info matters though.)

cc @TomTheBear

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingupstream

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions