Loop Id: 2101 | Module: libparcsr_ls.so | Source: par_strength.c:2000-2083 [...] | Coverage: 0.01% |
---|
Loop Id: 2101 | Module: libparcsr_ls.so | Source: par_strength.c:2000-2083 [...] | Coverage: 0.01% |
---|
0x8dd10 INC %RBX |
0x8dd13 CMP -0xb8(%RBP),%RBX |
0x8dd1a JE 8e581 |
0x8dd20 MOV -0x98(%RBP),%RAX |
0x8dd27 MOV -0x78(%RBP),%RCX |
0x8dd2b MOV -0x38(%RBP),%R12 |
0x8dd2f MOV (%RAX,%RBX,8),%RDX |
0x8dd33 MOV -0x30(%RBP),%RAX |
0x8dd37 MOV (%RCX,%RDX,8),%R8 |
0x8dd3b MOV %RDX,-0x58(%RBP) |
0x8dd3f CMP 0x8(%RCX,%RDX,8),%R8 |
0x8dd44 JGE 8ded0 |
0x8dd4a MOV 0x78(%RBP),%RCX |
0x8dd4e MOV 0xc8(%RBP),%RDX |
0x8dd55 MOV 0x88(%RBP),%RSI |
0x8dd5c MOV (%RCX),%RCX |
0x8dd5f MOV (%RSI),%R9 |
0x8dd62 MOV %RCX,-0x60(%RBP) |
0x8dd66 MOV (%RDX),%RCX |
0x8dd69 MOV 0x90(%RBP),%RDX |
0x8dd70 MOV (%RDX),%R15 |
0x8dd73 MOV %RCX,-0xa8(%RBP) |
0x8dd7a JMP 8dd96 |
(2105) 0x8dd80 MOV -0x78(%RBP),%RCX |
(2105) 0x8dd84 MOV -0x58(%RBP),%RDX |
(2105) 0x8dd88 INC %R8 |
(2105) 0x8dd8b CMP 0x8(%RCX,%RDX,8),%R8 |
(2105) 0x8dd90 JGE 8ded0 |
(2105) 0x8dd96 MOV -0x70(%RBP),%RCX |
(2105) 0x8dd9a MOV -0x40(%RBP),%RDX |
(2105) 0x8dd9e MOV (%RCX,%R8,8),%R10 |
(2105) 0x8dda2 CMPQ $0,(%RDX,%R10,8) |
(2105) 0x8dda7 JLE 8ddd2 |
(2105) 0x8dda9 MOV -0x60(%RBP),%RCX |
(2105) 0x8ddad MOV (%RCX,%R10,8),%RCX |
(2105) 0x8ddb1 CMP %R12,(%R14,%RCX,8) |
(2105) 0x8ddb5 JGE 8ddd2 |
(2105) 0x8ddb7 MOV -0x38(%RBP),%RDX |
(2105) 0x8ddbb MOV -0xa8(%RBP),%RSI |
(2105) 0x8ddc2 MOV %RDX,(%R14,%RCX,8) |
(2105) 0x8ddc6 MOV -0x38(%RBP),%RDX |
(2105) 0x8ddca MOV %RCX,(%RSI,%RDX,8) |
(2105) 0x8ddce INCQ -0x38(%RBP) |
(2105) 0x8ddd2 MOV -0x78(%RBP),%RDX |
(2105) 0x8ddd6 MOV (%RDX,%R10,8),%RCX |
(2105) 0x8ddda MOV 0x8(%RDX,%R10,8),%RDX |
(2105) 0x8dddf CMP %RDX,%RCX |
(2105) 0x8dde2 JGE 8de50 |
(2105) 0x8dde4 MOV 0x78(%RBP),%RSI |
(2105) 0x8dde8 MOV 0xc8(%RBP),%RDI |
(2105) 0x8ddef MOV (%RSI),%R11 |
(2105) 0x8ddf2 MOV (%RDI),%RSI |
(2105) 0x8ddf5 MOV %RSI,-0x48(%RBP) |
(2105) 0x8ddf9 JMP 8de08 |
(2107) 0x8de00 INC %RCX |
(2107) 0x8de03 CMP %RDX,%RCX |
(2107) 0x8de06 JGE 8de50 |
(2107) 0x8de08 MOV -0x70(%RBP),%RSI |
(2107) 0x8de0c MOV -0x40(%RBP),%RDI |
(2107) 0x8de10 MOV (%RSI,%RCX,8),%RSI |
(2107) 0x8de14 CMPQ $0,(%RDI,%RSI,8) |
(2107) 0x8de19 JLE 8de00 |
(2107) 0x8de1b MOV (%R11,%RSI,8),%RSI |
(2107) 0x8de1f CMP %RBX,%RSI |
(2107) 0x8de22 JE 8de00 |
(2107) 0x8de24 CMP %R12,(%R14,%RSI,8) |
(2107) 0x8de28 JGE 8de00 |
(2107) 0x8de2a MOV -0x38(%RBP),%RDX |
(2107) 0x8de2e MOV -0x48(%RBP),%RDI |
(2107) 0x8de32 MOV %RDX,(%R14,%RSI,8) |
(2107) 0x8de36 MOV -0x38(%RBP),%RDX |
(2107) 0x8de3a MOV %RSI,(%RDI,%RDX,8) |
(2107) 0x8de3e MOV -0x78(%RBP),%RSI |
(2107) 0x8de42 INCQ -0x38(%RBP) |
(2107) 0x8de46 MOV 0x8(%RSI,%R10,8),%RDX |
(2107) 0x8de4b JMP 8de00 |
(2105) 0x8de50 MOV -0x68(%RBP),%RDX |
(2105) 0x8de54 MOV (%RDX,%R10,8),%RCX |
(2105) 0x8de58 MOV 0x8(%RDX,%R10,8),%RSI |
(2105) 0x8de5d CMP %RSI,%RCX |
(2105) 0x8de60 JGE 8dd80 |
(2105) 0x8de66 MOV 0x98(%RBP),%RDX |
(2105) 0x8de6d MOV 0xd0(%RBP),%R11 |
(2105) 0x8de74 MOV (%RDX),%RDX |
(2105) 0x8de77 MOV (%R11),%RDI |
(2105) 0x8de7a JMP 8de8c |
(2106) 0x8de80 INC %RCX |
(2106) 0x8de83 CMP %RSI,%RCX |
(2106) 0x8de86 JGE 8dd80 |
(2106) 0x8de8c MOV (%R9,%RCX,8),%R11 |
(2106) 0x8de90 CMPQ $0,(%R15,%R11,8) |
(2106) 0x8de95 JLE 8de80 |
(2106) 0x8de97 MOV (%RDX,%R11,8),%R11 |
(2106) 0x8de9b CMP %RAX,(%R13,%R11,8) |
(2106) 0x8dea0 JGE 8de80 |
(2106) 0x8dea2 MOV -0x30(%RBP),%RSI |
(2106) 0x8dea6 MOV %RSI,(%R13,%R11,8) |
(2106) 0x8deab MOV -0x30(%RBP),%RSI |
(2106) 0x8deaf MOV %R11,(%RDI,%RSI,8) |
(2106) 0x8deb3 MOV -0x68(%RBP),%R11 |
(2106) 0x8deb7 INCQ -0x30(%RBP) |
(2106) 0x8debb MOV 0x8(%R11,%R10,8),%RSI |
(2106) 0x8dec0 JMP 8de80 |
0x8ded0 MOV -0x68(%RBP),%RCX |
0x8ded4 MOV -0x58(%RBP),%RDX |
0x8ded8 MOV (%RCX,%RDX,8),%R8 |
0x8dedc CMP 0x8(%RCX,%RDX,8),%R8 |
0x8dee1 JGE 8dd10 |
0x8dee7 MOV 0x98(%RBP),%RCX |
0x8deee MOV 0xd0(%RBP),%RDX |
0x8def5 MOV 0xa8(%RBP),%RSI |
0x8defc MOV (%RCX),%RDI |
0x8deff MOV (%RDX),%RCX |
0x8df02 MOV 0xb8(%RBP),%RDX |
0x8df09 MOV (%RSI),%R15 |
0x8df0c MOV (%RDX),%R10 |
0x8df0f MOV %RCX,-0x48(%RBP) |
0x8df13 JMP 8df36 |
(2102) 0x8df20 MOV -0x68(%RBP),%RCX |
(2102) 0x8df24 MOV -0x58(%RBP),%RDX |
(2102) 0x8df28 INC %R8 |
(2102) 0x8df2b CMP 0x8(%RCX,%RDX,8),%R8 |
(2102) 0x8df30 JGE 8dd10 |
(2102) 0x8df36 MOV -0x50(%RBP),%RCX |
(2102) 0x8df3a MOV -0xb0(%RBP),%RDX |
(2102) 0x8df41 MOV (%RCX,%R8,8),%R9 |
(2102) 0x8df45 CMPQ $0,(%RDX,%R9,8) |
(2102) 0x8df4a JLE 8df70 |
(2102) 0x8df4c MOV (%RDI,%R9,8),%RCX |
(2102) 0x8df50 CMP %RAX,(%R13,%RCX,8) |
(2102) 0x8df55 JGE 8df70 |
(2102) 0x8df57 MOV -0x30(%RBP),%RDX |
(2102) 0x8df5b MOV -0x48(%RBP),%RSI |
(2102) 0x8df5f MOV %RDX,(%R13,%RCX,8) |
(2102) 0x8df64 MOV -0x30(%RBP),%RDX |
(2102) 0x8df68 MOV %RCX,(%RSI,%RDX,8) |
(2102) 0x8df6c INCQ -0x30(%RBP) |
(2102) 0x8df70 MOV -0x88(%RBP),%RDX |
(2102) 0x8df77 MOV (%RDX,%R9,8),%RCX |
(2102) 0x8df7b MOV 0x8(%RDX,%R9,8),%RSI |
(2102) 0x8df80 CMP %RSI,%RCX |
(2102) 0x8df83 JGE 8dfe0 |
(2102) 0x8df85 MOV 0xc8(%RBP),%RDX |
(2102) 0x8df8c MOV (%RDX),%RDX |
(2102) 0x8df8f JMP 8dfa8 |
(2104) 0x8dfa0 INC %RCX |
(2104) 0x8dfa3 CMP %RSI,%RCX |
(2104) 0x8dfa6 JGE 8dfe0 |
(2104) 0x8dfa8 MOV (%R15,%RCX,8),%R11 |
(2104) 0x8dfac CMP %RBX,%R11 |
(2104) 0x8dfaf JE 8dfa0 |
(2104) 0x8dfb1 CMP %R12,(%R14,%R11,8) |
(2104) 0x8dfb5 JGE 8dfa0 |
(2104) 0x8dfb7 MOV -0x38(%RBP),%RSI |
(2104) 0x8dfbb MOV %RSI,(%R14,%R11,8) |
(2104) 0x8dfbf MOV -0x38(%RBP),%RSI |
(2104) 0x8dfc3 MOV %R11,(%RDX,%RSI,8) |
(2104) 0x8dfc7 MOV -0x88(%RBP),%R11 |
(2104) 0x8dfce INCQ -0x38(%RBP) |
(2104) 0x8dfd2 MOV 0x8(%R11,%R9,8),%RSI |
(2104) 0x8dfd7 JMP 8dfa0 |
(2102) 0x8dfe0 MOV -0x80(%RBP),%RDX |
(2102) 0x8dfe4 MOV (%RDX,%R9,8),%RCX |
(2102) 0x8dfe8 MOV 0x8(%RDX,%R9,8),%RSI |
(2102) 0x8dfed CMP %RSI,%RCX |
(2102) 0x8dff0 JGE 8df20 |
(2102) 0x8dff6 MOV 0xd0(%RBP),%RDX |
(2102) 0x8dffd MOV (%RDX),%RDX |
(2102) 0x8e000 JMP 8e01c |
(2103) 0x8e010 INC %RCX |
(2103) 0x8e013 CMP %RSI,%RCX |
(2103) 0x8e016 JGE 8df20 |
(2103) 0x8e01c MOV (%R10,%RCX,8),%R11 |
(2103) 0x8e020 CMP %RAX,(%R13,%R11,8) |
(2103) 0x8e025 JGE 8e010 |
(2103) 0x8e027 MOV -0x30(%RBP),%RSI |
(2103) 0x8e02b MOV %RSI,(%R13,%R11,8) |
(2103) 0x8e030 MOV -0x30(%RBP),%RSI |
(2103) 0x8e034 MOV %R11,(%RDX,%RSI,8) |
(2103) 0x8e038 MOV -0x80(%RBP),%R11 |
(2103) 0x8e03c INCQ -0x30(%RBP) |
(2103) 0x8e040 MOV 0x8(%R11,%R9,8),%RSI |
(2103) 0x8e045 JMP 8e010 |
/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++) |
[...] |
2006: HYPRE_Int i1 = coarse_to_fine[ic]; |
2007: |
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 |
---|---|---|---|
►100.00+ | __kmp_invoke_microtask | libomp.so | |
○ | __kmp_invoke_task_func | libomp.so |
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.27 |
CQA speedup if no inter-iteration dependency | NA |
CQA speedup if next bottleneck killed | 1.68 |
Bottlenecks | P5, P6, P7, |
Function | .omp_outlined..20.572 |
Source | par_strength.c:2000-2000,par_strength.c:2006-2011,par_strength.c:2038-2038,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 | 10.67 |
CQA cycles if no scalar integer | 10.67 |
CQA cycles if FP arith vectorized | 10.67 |
CQA cycles if fully vectorized | 2.50 |
Front-end cycles | 6.33 |
DIV/SQRT cycles | 2.50 |
P0 cycles | 1.50 |
P1 cycles | 1.25 |
P2 cycles | 1.25 |
P3 cycles | 2.50 |
P4 cycles | 10.67 |
P5 cycles | 10.67 |
P6 cycles | 10.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 | 38.00 |
Nb uops | 38.00 |
Nb loads | 28.00 |
Nb stores | 4.00 |
Nb stack references | 18.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 | 224.00 |
Bytes stored | 32.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.27 |
CQA speedup if no inter-iteration dependency | NA |
CQA speedup if next bottleneck killed | 1.68 |
Bottlenecks | P5, P6, P7, |
Function | .omp_outlined..20.572 |
Source | par_strength.c:2000-2000,par_strength.c:2006-2011,par_strength.c:2038-2038,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 | 10.67 |
CQA cycles if no scalar integer | 10.67 |
CQA cycles if FP arith vectorized | 10.67 |
CQA cycles if fully vectorized | 2.50 |
Front-end cycles | 6.33 |
DIV/SQRT cycles | 2.50 |
P0 cycles | 1.50 |
P1 cycles | 1.25 |
P2 cycles | 1.25 |
P3 cycles | 2.50 |
P4 cycles | 10.67 |
P5 cycles | 10.67 |
P6 cycles | 10.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 | 38.00 |
Nb uops | 38.00 |
Nb loads | 28.00 |
Nb stores | 4.00 |
Nb stack references | 18.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 | 224.00 |
Bytes stored | 32.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 | .omp_outlined..20.572 |
Source file and lines | par_strength.c:2000-2083 |
Module | libparcsr_ls.so |
nb instructions | 38 |
nb uops | 38 |
loop length | 177 |
used x86 registers | 12 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 18 |
micro-operation queue | 6.33 cycles |
front end | 6.33 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.50 | 1.50 | 1.25 | 1.25 | 2.50 | 10.67 | 10.67 | 10.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 2.50 | 1.50 | 1.25 | 1.25 | 2.50 | 10.67 | 10.67 | 10.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 6.33 |
Dispatch | 10.67 |
Overall L1 | 10.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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
INC %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 |
CMP -0xb8(%RBP),%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%) |
JE 8e581 <.omp_outlined..20.572+0x1531> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV -0x98(%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 |
MOV -0x78(%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 -0x38(%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 (%RAX,%RBX,8),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0x30(%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 |
MOV (%RCX,%RDX,8),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %RDX,-0x58(%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 0x8(%RCX,%RDX,8),%R8 | 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 8ded0 <.omp_outlined..20.572+0xe80> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV 0x78(%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 0xc8(%RBP),%RDX | 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),%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 (%RCX),%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 (%RSI),%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,-0x60(%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 (%RDX),%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 0x90(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RDX),%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 %RCX,-0xa8(%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%) |
JMP 8dd96 <.omp_outlined..20.572+0xd46> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
MOV -0x68(%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 -0x58(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RCX,%RDX,8),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
CMP 0x8(%RCX,%RDX,8),%R8 | 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 |
JGE 8dd10 <.omp_outlined..20.572+0xcc0> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV 0x98(%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 0xd0(%RBP),%RDX | 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),%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 (%RCX),%RDI | 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 (%RDX),%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 0xb8(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RSI),%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 (%RDX),%R10 | 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,-0x48(%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%) |
JMP 8df36 <.omp_outlined..20.572+0xee6> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
Function | .omp_outlined..20.572 |
Source file and lines | par_strength.c:2000-2083 |
Module | libparcsr_ls.so |
nb instructions | 38 |
nb uops | 38 |
loop length | 177 |
used x86 registers | 12 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 18 |
micro-operation queue | 6.33 cycles |
front end | 6.33 cycles |
ALU0/BRU0 | ALU1 | ALU2 | ALU3 | BRU1 | AGU0 | AGU1 | AGU2 | FP0 | FP1 | FP2 | FP3 | FP4 | FP5 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 2.50 | 1.50 | 1.25 | 1.25 | 2.50 | 10.67 | 10.67 | 10.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
cycles | 2.50 | 1.50 | 1.25 | 1.25 | 2.50 | 10.67 | 10.67 | 10.67 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 |
Cycles executing div or sqrt instructions | NA |
Front-end | 6.33 |
Dispatch | 10.67 |
Overall L1 | 10.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 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
INC %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 |
CMP -0xb8(%RBP),%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%) |
JE 8e581 <.omp_outlined..20.572+0x1531> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV -0x98(%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 |
MOV -0x78(%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 -0x38(%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 (%RAX,%RBX,8),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV -0x30(%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 |
MOV (%RCX,%RDX,8),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV %RDX,-0x58(%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 0x8(%RCX,%RDX,8),%R8 | 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 8ded0 <.omp_outlined..20.572+0xe80> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV 0x78(%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 0xc8(%RBP),%RDX | 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),%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 (%RCX),%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 (%RSI),%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,-0x60(%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 (%RDX),%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 0x90(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RDX),%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 %RCX,-0xa8(%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%) |
JMP 8dd96 <.omp_outlined..20.572+0xd46> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |
MOV -0x68(%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 -0x58(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RCX,%RDX,8),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
CMP 0x8(%RCX,%RDX,8),%R8 | 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 |
JGE 8dd10 <.omp_outlined..20.572+0xcc0> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.50-1 | N/A |
MOV 0x98(%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 0xd0(%RBP),%RDX | 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),%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 (%RCX),%RDI | 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 (%RDX),%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 0xb8(%RBP),%RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0.33 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 0.33 | N/A |
MOV (%RSI),%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 (%RDX),%R10 | 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,-0x48(%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%) |
JMP 8df36 <.omp_outlined..20.572+0xee6> | 1 | 0.50 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | N/A |