Loop Id: 1979 | Module: libparcsr_ls.so | Source: par_strength.c:2000-2083 [...] | Coverage: 0.01% |
---|
Loop Id: 1979 | Module: libparcsr_ls.so | Source: par_strength.c:2000-2083 [...] | Coverage: 0.01% |
---|
0x1033b1 MOV -0xf8(%RBP),%RDI |
0x1033b8 MOV -0xa8(%RBP),%RBX |
0x1033bf MOV (%RDI,%RSI,8),%RCX |
0x1033c3 MOV (%RBX,%RCX,8),%R12 |
0x1033c7 LEA 0x8(,%RCX,8),%R10 |
0x1033cf ADD %R10,%RBX |
0x1033d2 MOV %R12,-0x80(%RBP) |
0x1033d6 MOV %RBX,-0x98(%RBP) |
0x1033dd CMP %R12,(%RBX) |
0x1033e0 JLE 10355b |
0x1033e6 MOV -0x68(%RBP),%RBX |
0x1033ea MOV -0xd0(%RBP),%R15 |
0x1033f1 MOV %RSI,-0x70(%RBP) |
0x1033f5 MOV %R10,-0xc8(%RBP) |
0x1033fc MOV -0xb0(%RBP),%R9 |
0x103403 MOV %RCX,-0xd8(%RBP) |
0x10340a MOV -0x120(%RBP),%R8 |
0x103411 MOV -0x100(%RBP),%R11 |
0x103418 NOPL (%RAX,%RAX,1) |
(1983) 0x103420 MOV -0x80(%RBP),%RCX |
(1983) 0x103424 MOV (%R8,%RCX,8),%R10 |
(1983) 0x103428 CMPQ $0,(%R11,%R10,8) |
(1983) 0x10342d LEA (,%R10,8),%RDI |
(1983) 0x103435 JLE 10345d |
(1983) 0x103437 MOV (%RBX,%R10,8),%RDX |
(1983) 0x10343b MOV -0x58(%RBP),%RSI |
(1983) 0x10343f LEA (%RSI,%RDX,8),%R12 |
(1983) 0x103443 CMP %R13,(%R12) |
(1983) 0x103447 JGE 10345d |
(1983) 0x103449 MOV -0x48(%RBP),%RSI |
(1983) 0x10344d MOV -0x78(%RBP),%RCX |
(1983) 0x103451 MOV %RSI,(%R12) |
(1983) 0x103455 MOV %RDX,(%RCX,%RSI,8) |
(1983) 0x103459 INCQ -0x48(%RBP) |
(1983) 0x10345d MOV -0xa8(%RBP),%R12 |
(1983) 0x103464 LEA 0x8(%RDI),%RCX |
(1983) 0x103468 LEA (%R12,%RCX,1),%RDI |
(1983) 0x10346c MOV (%R12,%R10,8),%RDX |
(1983) 0x103470 MOV (%RDI),%RSI |
(1983) 0x103473 CMP %RSI,%RDX |
(1983) 0x103476 JGE 1034d7 |
(1983) 0x103478 MOV %RAX,-0x90(%RBP) |
(1983) 0x10347f MOV %RDI,%RAX |
(1983) 0x103482 NOPW (%RAX,%RAX,1) |
(1985) 0x103488 MOV (%R8,%RDX,8),%R12 |
(1985) 0x10348c CMPQ $0,(%R11,%R12,8) |
(1985) 0x103491 JLE 1034c8 |
(1985) 0x103493 MOV (%RBX,%R12,8),%RDI |
(1985) 0x103497 CMP %RDI,-0x70(%RBP) |
(1985) 0x10349b JE 1034c8 |
(1985) 0x10349d MOV -0x58(%RBP),%R12 |
(1985) 0x1034a1 LEA (%R12,%RDI,8),%R12 |
(1985) 0x1034a5 CMP %R13,(%R12) |
(1985) 0x1034a9 JGE 1034c8 |
(1985) 0x1034ab MOV -0x48(%RBP),%RSI |
(1985) 0x1034af MOV %RSI,(%R12) |
(1985) 0x1034b3 MOV -0x78(%RBP),%R12 |
(1985) 0x1034b7 MOV %RDI,(%R12,%RSI,8) |
(1985) 0x1034bb MOV (%RAX),%RSI |
(1985) 0x1034be INCQ -0x48(%RBP) |
(1985) 0x1034c2 NOPW (%RAX,%RAX,1) |
(1985) 0x1034c8 INC %RDX |
(1985) 0x1034cb CMP %RSI,%RDX |
(1985) 0x1034ce JL 103488 |
(1983) 0x1034d0 MOV -0x90(%RBP),%RAX |
(1983) 0x1034d7 MOV -0xa0(%RBP),%RDI |
(1983) 0x1034de MOV -0x60(%RBP),%R12 |
(1983) 0x1034e2 MOV (%RDI,%R10,8),%RDX |
(1983) 0x1034e6 LEA (%RDI,%RCX,1),%RDI |
(1983) 0x1034ea MOV (%RDI),%RCX |
(1983) 0x1034ed CMP %RDX,%RCX |
(1983) 0x1034f0 JLE 103531 |
(1983) 0x1034f2 NOPW (%RAX,%RAX,1) |
(1984) 0x1034f8 MOV (%R9,%RDX,8),%R10 |
(1984) 0x1034fc CMPQ $0,(%R15,%R10,8) |
(1984) 0x103501 JLE 103529 |
(1984) 0x103503 MOV (%R12,%R10,8),%RSI |
(1984) 0x103507 LEA (%R14,%RSI,8),%R10 |
(1984) 0x10350b CMP %RAX,(%R10) |
(1984) 0x10350e JGE 103529 |
(1984) 0x103510 MOV -0x50(%RBP),%RCX |
(1984) 0x103514 MOV %RCX,(%R10) |
(1984) 0x103517 MOV -0x88(%RBP),%R10 |
(1984) 0x10351e MOV %RSI,(%R10,%RCX,8) |
(1984) 0x103522 MOV (%RDI),%RCX |
(1984) 0x103525 INCQ -0x50(%RBP) |
(1984) 0x103529 INC %RDX |
(1984) 0x10352c CMP %RCX,%RDX |
(1984) 0x10352f JL 1034f8 |
(1983) 0x103531 MOV -0x98(%RBP),%RDI |
(1983) 0x103538 INCQ -0x80(%RBP) |
(1983) 0x10353c MOV -0x80(%RBP),%RDX |
(1983) 0x103540 CMP %RDX,(%RDI) |
(1983) 0x103543 JG 103420 |
0x103549 MOV -0xc8(%RBP),%R10 |
0x103550 MOV -0x70(%RBP),%RSI |
0x103554 MOV -0xd8(%RBP),%RCX |
0x10355b MOV -0xa0(%RBP),%RBX |
0x103562 ADD %RBX,%R10 |
0x103565 MOV (%RBX,%RCX,8),%R15 |
0x103569 MOV %R10,-0x90(%RBP) |
0x103570 CMP (%R10),%R15 |
0x103573 JGE 10368a |
0x103579 MOV %R15,%RCX |
0x10357c MOV -0x110(%RBP),%R9 |
0x103583 MOV -0x58(%RBP),%R12 |
0x103587 MOV -0x118(%RBP),%R10 |
0x10358e MOV -0x88(%RBP),%R15 |
0x103595 NOPL (%RAX) |
(1980) 0x103598 MOV -0xb0(%RBP),%R8 |
(1980) 0x10359f MOV -0xd0(%RBP),%RDX |
(1980) 0x1035a6 MOV (%R8,%RCX,8),%R11 |
(1980) 0x1035aa CMPQ $0,(%RDX,%R11,8) |
(1980) 0x1035af LEA (,%R11,8),%RDI |
(1980) 0x1035b7 JLE 1035d9 |
(1980) 0x1035b9 MOV -0x60(%RBP),%RBX |
(1980) 0x1035bd MOV (%RBX,%R11,8),%RDX |
(1980) 0x1035c1 LEA (%R14,%RDX,8),%R8 |
(1980) 0x1035c5 CMP %RAX,(%R8) |
(1980) 0x1035c8 JGE 1035d9 |
(1980) 0x1035ca MOV -0x50(%RBP),%RBX |
(1980) 0x1035ce MOV %RBX,(%R8) |
(1980) 0x1035d1 MOV %RDX,(%R15,%RBX,8) |
(1980) 0x1035d5 INCQ -0x50(%RBP) |
(1980) 0x1035d9 MOV -0xc0(%RBP),%RBX |
(1980) 0x1035e0 ADD $0x8,%RDI |
(1980) 0x1035e4 MOV (%RBX,%R11,8),%RDX |
(1980) 0x1035e8 ADD %RDI,%RBX |
(1980) 0x1035eb MOV (%RBX),%R8 |
(1980) 0x1035ee CMP %R8,%RDX |
(1980) 0x1035f1 JGE 103638 |
(1980) 0x1035f3 MOV %R9,-0x70(%RBP) |
(1980) 0x1035f7 MOV %RDI,-0x80(%RBP) |
(1980) 0x1035fb NOPL (%RAX,%RAX,1) |
(1982) 0x103600 MOV (%R10,%RDX,8),%RDI |
(1982) 0x103604 CMP %RDI,%RSI |
(1982) 0x103607 JE 103628 |
(1982) 0x103609 LEA (%R12,%RDI,8),%R9 |
(1982) 0x10360d CMP (%R9),%R13 |
(1982) 0x103610 JLE 103628 |
(1982) 0x103612 MOV -0x48(%RBP),%R8 |
(1982) 0x103616 MOV %R8,(%R9) |
(1982) 0x103619 MOV -0x78(%RBP),%R9 |
(1982) 0x10361d MOV %RDI,(%R9,%R8,8) |
(1982) 0x103621 MOV (%RBX),%R8 |
(1982) 0x103624 INCQ -0x48(%RBP) |
(1982) 0x103628 INC %RDX |
(1982) 0x10362b CMP %R8,%RDX |
(1982) 0x10362e JL 103600 |
(1980) 0x103630 MOV -0x70(%RBP),%R9 |
(1980) 0x103634 MOV -0x80(%RBP),%RDI |
(1980) 0x103638 MOV -0xb8(%RBP),%RBX |
(1980) 0x10363f ADD %RBX,%RDI |
(1980) 0x103642 MOV (%RBX,%R11,8),%RDX |
(1980) 0x103646 MOV (%RDI),%RBX |
(1980) 0x103649 CMP %RBX,%RDX |
(1980) 0x10364c JGE 103677 |
(1980) 0x10364e XCHG %AX,%AX |
(1981) 0x103650 MOV (%R9,%RDX,8),%R8 |
(1981) 0x103654 LEA (%R14,%R8,8),%R11 |
(1981) 0x103658 CMP (%R11),%RAX |
(1981) 0x10365b JLE 1036a8 |
(1981) 0x10365d MOV -0x50(%RBP),%RBX |
(1981) 0x103661 INC %RDX |
(1981) 0x103664 MOV %RBX,(%R11) |
(1981) 0x103667 MOV %R8,(%R15,%RBX,8) |
(1981) 0x10366b MOV (%RDI),%RBX |
(1981) 0x10366e INCQ -0x50(%RBP) |
(1981) 0x103672 CMP %RDX,%RBX |
(1981) 0x103675 JG 103650 |
(1980) 0x103677 MOV -0x90(%RBP),%RDI |
(1980) 0x10367e INC %RCX |
(1980) 0x103681 CMP %RCX,(%RDI) |
(1980) 0x103684 JG 103598 |
0x10368a INC %RSI |
0x10368d CMP %RSI,-0x108(%RBP) |
0x103694 JE 1036c5 |
0x103696 MOV -0x48(%RBP),%R13 |
0x10369a MOV -0x50(%RBP),%RAX |
0x10369e JMP 1033b1 |
(1981) 0x1036a8 INC %RDX |
(1981) 0x1036ab CMP %RBX,%RDX |
(1981) 0x1036ae JL 103650 |
(1980) 0x1036b0 MOV -0x90(%RBP),%RDI |
(1980) 0x1036b7 INC %RCX |
(1980) 0x1036ba CMP %RCX,(%RDI) |
(1980) 0x1036bd JG 103598 |
0x1036c3 JMP 10368a |
/home/eoseret/qaas_runs_CPU_9468/172-019-1763/intel/AMG/build/AMG/AMG/parcsr_ls/par_strength.c: 2000 - 2083 |
-------------------------------------------------------------------------------- |
2000: for (ic = ic_begin; ic < ic_end; ic++) |
[...] |
2008: HYPRE_Int jj_row_begin_diag = num_nonzeros_diag; |
2009: HYPRE_Int jj_row_begin_offd = num_nonzeros_offd; |
2010: |
2011: for (jj1 = S_diag_i[i1]; jj1 < S_diag_i[i1+1]; jj1++) |
2012: { |
2013: i2 = S_diag_j[jj1]; |
2014: if (CF_marker[i2] > 0) |
2015: { |
2016: index = fine_to_coarse[i2]; |
2017: if (S_marker[index] < jj_row_begin_diag) |
2018: { |
2019: S_marker[index] = num_nonzeros_diag; |
2020: C_diag_j[num_nonzeros_diag] = index; |
2021: num_nonzeros_diag++; |
2022: } |
2023: } |
2024: for (jj2 = S_diag_i[i2]; jj2 < S_diag_i[i2+1]; jj2++) |
2025: { |
2026: i3 = S_diag_j[jj2]; |
2027: if (CF_marker[i3] > 0) |
2028: { |
2029: index = fine_to_coarse[i3]; |
2030: if (index != ic && S_marker[index] < jj_row_begin_diag) |
2031: { |
2032: S_marker[index] = num_nonzeros_diag; |
2033: C_diag_j[num_nonzeros_diag] = index; |
2034: num_nonzeros_diag++; |
2035: } |
2036: } |
2037: } |
2038: for (jj2 = S_offd_i[i2]; jj2 < S_offd_i[i2+1]; jj2++) |
2039: { |
2040: i3 = S_offd_j[jj2]; |
2041: if (CF_marker_offd[i3] > 0) |
2042: { |
2043: index = map_S_to_C[i3]; |
2044: if (S_marker_offd[index] < jj_row_begin_offd) |
2045: { |
2046: S_marker_offd[index] = num_nonzeros_offd; |
2047: C_offd_j[num_nonzeros_offd] = index; |
2048: num_nonzeros_offd++; |
2049: } |
2050: } |
2051: } |
2052: } |
2053: for (jj1 = S_offd_i[i1]; jj1 < S_offd_i[i1+1]; jj1++) |
2054: { |
2055: i2 = S_offd_j[jj1]; |
2056: if (CF_marker_offd[i2] > 0) |
2057: { |
2058: index = map_S_to_C[i2]; |
2059: if (S_marker_offd[index] < jj_row_begin_offd) |
2060: { |
2061: S_marker_offd[index] = num_nonzeros_offd; |
2062: C_offd_j[num_nonzeros_offd] = index; |
2063: num_nonzeros_offd++; |
2064: } |
2065: } |
2066: for (jj2 = S_ext_diag_i[i2]; jj2 < S_ext_diag_i[i2+1]; jj2++) |
2067: { |
2068: i3 = S_ext_diag_j[jj2]; |
2069: if (i3 != ic && S_marker[i3] < jj_row_begin_diag) |
2070: { |
2071: S_marker[i3] = num_nonzeros_diag; |
2072: C_diag_j[num_nonzeros_diag] = i3; |
2073: num_nonzeros_diag++; |
2074: } |
2075: } |
2076: for (jj2 = S_ext_offd_i[i2]; jj2 < S_ext_offd_i[i2+1]; jj2++) |
2077: { |
2078: i3 = S_ext_offd_j[jj2]; |
2079: if (S_marker_offd[i3] < jj_row_begin_offd) |
2080: { |
2081: S_marker_offd[i3] = num_nonzeros_offd; |
2082: C_offd_j[num_nonzeros_offd] = i3; |
2083: num_nonzeros_offd++; |
Coverage (%) | Name | Source Location | Module |
---|---|---|---|
○97.10 | gomp_thread_start | team.c:130 | libgomp.so.1.0.0 |
○2.90 | GOMP_parallel | libgomp.h:985 | libgomp.so.1.0.0 |
Path / |
Metric | Value |
---|---|
CQA speedup if no scalar integer | 1.00 |
CQA speedup if FP arith vectorized | 1.00 |
CQA speedup if fully vectorized | 4.46 |
CQA speedup if no inter-iteration dependency | NA |
CQA speedup if next bottleneck killed | 1.49 |
Bottlenecks | P5, P6, P7, |
Function | hypre_BoomerAMGCreate2ndS._omp_fn.7 |
Source | par_strength.c:2000-2000,par_strength.c:2008-2011,par_strength.c:2053-2053 |
Source loop unroll info | NA |
Source loop unroll confidence level | NA |
Unroll/vectorization loop type | NA |
Unroll factor | NA |
CQA cycles | 9.67 |
CQA cycles if no scalar integer | 9.67 |
CQA cycles if FP arith vectorized | 9.67 |
CQA cycles if fully vectorized | 2.17 |
Front-end cycles | 6.50 |
DIV/SQRT cycles | 2.50 |
P0 cycles | 2.50 |
P1 cycles | 2.25 |
P2 cycles | 2.25 |
P3 cycles | 2.50 |
P4 cycles | 9.67 |
P5 cycles | 9.67 |
P6 cycles | 9.67 |
P7 cycles | 0.00 |
P8 cycles | 0.00 |
P9 cycles | 0.00 |
P10 cycles | 0.00 |
P11 cycles | 0.00 |
P12 cycles | 0.00 |
P13 cycles | 0.00 |
Inter-iter dependencies cycles | NA |
FE+BE cycles (UFS) | NA |
Stall cycles (UFS) | NA |
Nb insns | 41.00 |
Nb uops | 39.00 |
Nb loads | 23.00 |
Nb stores | 6.00 |
Nb stack references | 21.00 |
FLOP/cycle | 0.00 |
Nb FLOP add-sub | 0.00 |
Nb FLOP mul | 0.00 |
Nb FLOP fma | 0.00 |
Nb FLOP div | 0.00 |
Nb FLOP rcp | 0.00 |
Nb FLOP sqrt | 0.00 |
Nb FLOP rsqrt | 0.00 |
Bytes/cycle | 24.00 |
Bytes prefetched | 0.00 |
Bytes loaded | 184.00 |
Bytes stored | 48.00 |
Stride 0 | NA |
Stride 1 | NA |
Stride n | NA |
Stride unknown | NA |
Stride indirect | NA |
Vectorization ratio all | 0.00 |
Vectorization ratio load | 0.00 |
Vectorization ratio store | 0.00 |
Vectorization ratio mul | NA |
Vectorization ratio add_sub | NA |
Vectorization ratio fma | NA |
Vectorization ratio div_sqrt | NA |
Vectorization ratio other | 0.00 |
Vector-efficiency ratio all | 12.50 |
Vector-efficiency ratio load | 12.50 |
Vector-efficiency ratio store | 12.50 |
Vector-efficiency ratio mul | NA |
Vector-efficiency ratio add_sub | NA |
Vector-efficiency ratio fma | NA |
Vector-efficiency ratio div_sqrt | NA |
Vector-efficiency ratio other | 12.50 |
Metric | Value |
---|---|
CQA speedup if no scalar integer | 1.00 |
CQA speedup if FP arith vectorized | 1.00 |
CQA speedup if fully vectorized | 4.46 |
CQA speedup if no inter-iteration dependency | NA |
CQA speedup if next bottleneck killed | 1.49 |
Bottlenecks | P5, P6, P7, |
Function | hypre_BoomerAMGCreate2ndS._omp_fn.7 |
Source | par_strength.c:2000-2000,par_strength.c:2008-2011,par_strength.c:2053-2053 |
Source loop unroll info | NA |
Source loop unroll confidence level | NA |
Unroll/vectorization loop type | NA |
Unroll factor | NA |
CQA cycles | 9.67 |
CQA cycles if no scalar integer | 9.67 |
CQA cycles if FP arith vectorized | 9.67 |
CQA cycles if fully vectorized | 2.17 |
Front-end cycles | 6.50 |
DIV/SQRT cycles | 2.50 |
P0 cycles | 2.50 |
P1 cycles | 2.25 |
P2 cycles | 2.25 |
P3 cycles | 2.50 |
P4 cycles | 9.67 |
P5 cycles | 9.67 |
P6 cycles | 9.67 |
P7 cycles | 0.00 |
P8 cycles | 0.00 |
P9 cycles | 0.00 |
P10 cycles | 0.00 |
P11 cycles | 0.00 |
P12 cycles | 0.00 |
P13 cycles | 0.00 |
Inter-iter dependencies cycles | NA |
FE+BE cycles (UFS) | NA |
Stall cycles (UFS) | NA |
Nb insns | 41.00 |
Nb uops | 39.00 |
Nb loads | 23.00 |
Nb stores | 6.00 |
Nb stack references | 21.00 |
FLOP/cycle | 0.00 |
Nb FLOP add-sub | 0.00 |
Nb FLOP mul | 0.00 |
Nb FLOP fma | 0.00 |
Nb FLOP div | 0.00 |
Nb FLOP rcp | 0.00 |
Nb FLOP sqrt | 0.00 |
Nb FLOP rsqrt | 0.00 |
Bytes/cycle | 24.00 |
Bytes prefetched | 0.00 |
Bytes loaded | 184.00 |
Bytes stored | 48.00 |
Stride 0 | NA |
Stride 1 | NA |
Stride n | NA |
Stride unknown | NA |
Stride indirect | NA |
Vectorization ratio all | 0.00 |
Vectorization ratio load | 0.00 |
Vectorization ratio store | 0.00 |
Vectorization ratio mul | NA |
Vectorization ratio add_sub | NA |
Vectorization ratio fma | NA |
Vectorization ratio div_sqrt | NA |
Vectorization ratio other | 0.00 |
Vector-efficiency ratio all | 12.50 |
Vector-efficiency ratio load | 12.50 |
Vector-efficiency ratio store | 12.50 |
Vector-efficiency ratio mul | NA |
Vector-efficiency ratio add_sub | NA |
Vector-efficiency ratio fma | NA |
Vector-efficiency ratio div_sqrt | NA |
Vector-efficiency ratio other | 12.50 |
Path / |
Function | hypre_BoomerAMGCreate2ndS._omp_fn.7 |
Source file and lines | par_strength.c:2000-2083 |
Module | libparcsr_ls.so |
nb instructions | 41 |
nb uops | 39 |
loop length | 217 |
used x86 registers | 13 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 21 |
micro-operation queue | 6.50 cycles |
front end | 6.50 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.50 | 2.50 | 2.25 | 2.25 | 2.50 | 9.67 | 9.67 | 9.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 2.50 | 2.50 | 2.25 | 2.25 | 2.50 | 9.67 | 9.67 | 9.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 6.50 |
Dispatch | 9.67 |
Overall L1 | 9.67 |
all | 0% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 0% |
all | 12% |
load | 12% |
store | 12% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 12% |
Instruction | Nb FU | ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | Latency | Recip. throughput | Vectorization |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MOV -0xf8(%RBP),%RDI | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xa8(%RBP),%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RDI,%RSI,8),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RBX,%RCX,8),%R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
LEA 0x8(,%RCX,8),%R10 | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
ADD %R10,%RBX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
MOV %R12,-0x80(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV %RBX,-0x98(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
CMP %R12,(%RBX) | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (12.5%) |
JLE 10355b <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x121b> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV -0x68(%RBP),%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xd0(%RBP),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %RSI,-0x70(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV %R10,-0xc8(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV -0xb0(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %RCX,-0xd8(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV -0x120(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x100(%RBP),%R11 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
NOPL (%RAX,%RAX,1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
MOV -0xc8(%RBP),%R10 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0x70(%RBP),%RSI | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xd8(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xa0(%RBP),%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD %RBX,%R10 | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
MOV (%RBX,%RCX,8),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %R10,-0x90(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
CMP (%R10),%R15 | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (12.5%) |
JGE 10368a <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x134a> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV %R15,%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
MOV -0x110(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x58(%RBP),%R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x118(%RBP),%R10 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0x88(%RBP),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
NOPL (%RAX) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
INC %RSI | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMP %RSI,-0x108(%RBP) | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
JE 1036c5 <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x1385> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV -0x48(%RBP),%R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x50(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
JMP 1033b1 <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x1071> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
JMP 10368a <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x134a> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
Function | hypre_BoomerAMGCreate2ndS._omp_fn.7 |
Source file and lines | par_strength.c:2000-2083 |
Module | libparcsr_ls.so |
nb instructions | 41 |
nb uops | 39 |
loop length | 217 |
used x86 registers | 13 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 21 |
micro-operation queue | 6.50 cycles |
front end | 6.50 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.50 | 2.50 | 2.25 | 2.25 | 2.50 | 9.67 | 9.67 | 9.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 2.50 | 2.50 | 2.25 | 2.25 | 2.50 | 9.67 | 9.67 | 9.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 6.50 |
Dispatch | 9.67 |
Overall L1 | 9.67 |
all | 0% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 0% |
all | 12% |
load | 12% |
store | 12% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | NA (no add-sub vectorizable/vectorized instructions) |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 12% |
Instruction | Nb FU | ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | Latency | Recip. throughput | Vectorization |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
MOV -0xf8(%RBP),%RDI | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xa8(%RBP),%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RDI,%RSI,8),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RBX,%RCX,8),%R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
LEA 0x8(,%RCX,8),%R10 | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
ADD %R10,%RBX | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
MOV %R12,-0x80(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV %RBX,-0x98(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
CMP %R12,(%RBX) | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (12.5%) |
JLE 10355b <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x121b> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV -0x68(%RBP),%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xd0(%RBP),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %RSI,-0x70(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV %R10,-0xc8(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV -0xb0(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %RCX,-0xd8(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
MOV -0x120(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x100(%RBP),%R11 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
NOPL (%RAX,%RAX,1) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
MOV -0xc8(%RBP),%R10 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0x70(%RBP),%RSI | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xd8(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0xa0(%RBP),%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
ADD %RBX,%R10 | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
MOV (%RBX,%RCX,8),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV %R10,-0x90(%RBP) | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 4 | 0.50 | scal (12.5%) |
CMP (%R10),%R15 | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | scal (12.5%) |
JGE 10368a <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x134a> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV %R15,%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 | N/A |
MOV -0x110(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x58(%RBP),%R12 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x118(%RBP),%R10 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0x88(%RBP),%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
NOPL (%RAX) | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.09 | N/A |
INC %RSI | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.25 | N/A |
CMP %RSI,-0x108(%RBP) | 1 | 0.25 | 0.25 | 0.25 | 0.25 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.33 | N/A |
JE 1036c5 <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x1385> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV -0x48(%RBP),%R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | scal (12.5%) |
MOV -0x50(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
JMP 1033b1 <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x1071> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
JMP 10368a <hypre_BoomerAMGCreate2ndS._omp_fn.7+0x134a> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |