1
+ { "options" :
2
+ [
3
+ {
4
+ "name" : " flops.libpfm" ,
5
+ "category" : " metric" ,
6
+ "description" : " MFlops/s on Intel CPUs with libpfm" ,
7
+ "services" : [ " libpfm" ],
8
+ "config" :
9
+ {
10
+ "CALI_LIBPFM_EVENTS" : " FP_ARITH:SCALAR,FP_ARITH:PACKED" ,
11
+ "CALI_LIBPFM_ENABLE_SAMPLING" : " false"
12
+ },
13
+ "query" :
14
+ [
15
+ { "level" : " local" ,
16
+ "let" :
17
+ [
18
+ " flops.scalar=first(libpfm.counter.FP_ARITH:SCALAR,sum#libpfm.counter.FP_ARITH:SCALAR)" ,
19
+ " flops.packed=first(libpfm.counter.FP_ARITH:PACKED,sum#libpfm.counter.FP_ARITH:PACKED)"
20
+ ],
21
+ "select" :
22
+ [
23
+ { "expr" : " scale(flops.scalar,1e-6)" , "as" : " Mflops (scalar)" },
24
+ { "expr" : " scale(flops.packed,1e-6)" , "as" : " Mops (vector)" },
25
+ { "expr" : " ratio(flops.scalar,sum#time.duration,1e-6)" , "as" : " Mflops/s (scalar)" }
26
+ ]
27
+ },
28
+ { "level" : " cross" ,
29
+ "select" :
30
+ [
31
+ { "expr" : " sum(scale#flops.scalar)" , "as" : " Mflops (scalar)" },
32
+ { "expr" : " sum(scale#flops.packed)" , "as" : " Mops (vector)" },
33
+ { "expr" : " avg(ratio#flops.scalar/sum#time.duration)" , "as" : " Mflops/s (avg)" },
34
+ { "expr" : " max(ratio#flops.scalar/sum#time.duration)" , "as" : " Mflops/s (max)" },
35
+ { "expr" : " sum(ratio#flops.scalar/sum#time.duration)" , "as" : " Mflops/s (sum)" }
36
+ ]
37
+ }
38
+ ]
39
+ },
40
+ {
41
+ "name" : " flops" ,
42
+ "category" : " metric" ,
43
+ "description" : " MFlops/s with PAPI" ,
44
+ "services" : [ " papi" ],
45
+ "config" :
46
+ {
47
+ "CALI_PAPI_COUNTERS" : " PAPI_DP_OPS,PAPI_SP_OPS"
48
+ },
49
+ "query" :
50
+ [
51
+ { "level" : " local" ,
52
+ "let" :
53
+ [
54
+ " flops.sp=first(sum#papi.PAPI_SP_OPS,papi.PAPI_SP_OPS)" ,
55
+ " flops.dp=first(sum#papi.PAPI_DP_OPS,papi.PAPI_DP_OPS)" ,
56
+ " flops=sum(flops.dp,flops.sp)"
57
+ ],
58
+ "select" :
59
+ [
60
+ { "expr" : " scale(flops,1e-6)" , "as" : " Mflops" },
61
+ { "expr" : " ratio(flops,sum#time.duration,1e-6)" , "as" : " Mflops/s" }
62
+ ]
63
+ },
64
+ { "level" : " cross" ,
65
+ "select" :
66
+ [
67
+ { "expr" : " sum(scale#flops)" , "as" : " Mflops" },
68
+ { "expr" : " avg(ratio#flops/sum#time.duration)" , "as" : " Mflops/s (avg)" },
69
+ { "expr" : " max(ratio#flops/sum#time.duration)" , "as" : " Mflops/s (max)" },
70
+ { "expr" : " sum(ratio#flops/sum#time.duration)" , "as" : " Mflops/s (sum)" }
71
+ ]
72
+ }
73
+ ]
74
+ }
75
+ ]
76
+ }
0 commit comments