Function: hypre_BinarySearch | Module: exec | Source: binsearch.c:29-53 [...] | Coverage: 0.01% |
---|
Function: hypre_BinarySearch | Module: exec | Source: binsearch.c:29-53 [...] | Coverage: 0.01% |
---|
/home/eoseret/qaas_runs_CPU_9468/171-716-5699/intel/AMG/build/AMG/AMG/utilities/binsearch.c: 29 - 53 |
-------------------------------------------------------------------------------- |
29: { |
30: HYPRE_Int low, high, m; |
31: HYPRE_Int not_found = 1; |
32: |
33: low = 0; |
34: high = list_length-1; |
35: while (not_found && low <= high) |
36: { |
37: m = (low + high) / 2; |
38: if (value < list[m]) |
39: { |
40: high = m - 1; |
41: } |
42: else if (value > list[m]) |
43: { |
44: low = m + 1; |
[...] |
53: } |
0x4e5a40 PUSH %RBP |
0x4e5a41 MOV %RSP,%RBP |
0x4e5a44 MOV $-0x1,%RAX |
0x4e5a4b TEST %RDX,%RDX |
0x4e5a4e JLE 4e5ac1 |
0x4e5a50 DEC %RDX |
0x4e5a53 XOR %ECX,%ECX |
0x4e5a55 JMP 4e5a6b |
0x4e5a57 NOPW (%RAX,%RAX,1) |
(4415) 0x4e5a60 DEC %R8 |
(4415) 0x4e5a63 MOV %R8,%RDX |
(4415) 0x4e5a66 CMP %RDX,%RCX |
(4415) 0x4e5a69 JG 4e5ac1 |
(4415) 0x4e5a6b LEA (%RDX,%RCX,1),%R9 |
(4415) 0x4e5a6f MOV %R9,%R8 |
(4415) 0x4e5a72 SHR $0x3f,%R8 |
(4415) 0x4e5a76 ADD %R9,%R8 |
(4415) 0x4e5a79 SAR $0x1,%R8 |
(4415) 0x4e5a7c CMP %RSI,(%RDI,%R8,8) |
(4415) 0x4e5a80 JLE 4e5a90 |
(4415) 0x4e5a82 DEC %R8 |
(4415) 0x4e5a85 MOV %R8,%RDX |
(4415) 0x4e5a88 CMP %RDX,%RCX |
(4415) 0x4e5a8b JLE 4e5a9d |
0x4e5a8d JMP 4e5ac1 |
0x4e5a8f NOP |
(4415) 0x4e5a90 JGE 4e5ac3 |
(4415) 0x4e5a92 INC %R8 |
(4415) 0x4e5a95 MOV %R8,%RCX |
(4415) 0x4e5a98 CMP %RDX,%RCX |
(4415) 0x4e5a9b JG 4e5ac1 |
(4415) 0x4e5a9d LEA (%RDX,%RCX,1),%R9 |
(4415) 0x4e5aa1 MOV %R9,%R8 |
(4415) 0x4e5aa4 SHR $0x3f,%R8 |
(4415) 0x4e5aa8 ADD %R9,%R8 |
(4415) 0x4e5aab SAR $0x1,%R8 |
(4415) 0x4e5aae CMP %RSI,(%RDI,%R8,8) |
(4415) 0x4e5ab2 JG 4e5a60 |
(4415) 0x4e5ab4 JGE 4e5ac3 |
(4415) 0x4e5ab6 INC %R8 |
(4415) 0x4e5ab9 MOV %R8,%RCX |
(4415) 0x4e5abc CMP %RDX,%RCX |
(4415) 0x4e5abf JLE 4e5a6b |
0x4e5ac1 POP %RBP |
0x4e5ac2 RET |
0x4e5ac3 MOV %R8,%RAX |
0x4e5ac6 POP %RBP |
0x4e5ac7 RET |
0x4e5ac8 NOPL (%RAX,%RAX,1) |
Path / |
Source file and lines | binsearch.c:29-53 |
Module | exec |
nb instructions | 17 |
nb uops | 17 |
loop length | 50 |
used x86 registers | 6 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 0 |
micro-operation queue | 2.83 cycles |
front end | 2.83 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 1.50 | 0.80 | 1.33 | 1.33 | 0.50 | 0.60 | 1.50 | 0.50 | 0.50 | 0.50 | 0.60 | 1.33 |
cycles | 1.50 | 0.80 | 1.33 | 1.33 | 0.50 | 0.60 | 1.50 | 0.50 | 0.50 | 0.50 | 0.60 | 1.33 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 2.93-2.95 |
Stall cycles | 0.00 |
Front-end | 2.83 |
Dispatch | 1.50 |
Overall L1 | 2.83 |
all | 0% |
load | NA (no load vectorizable/vectorized instructions) |
store | NA (no store vectorizable/vectorized instructions) |
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 | 10% |
load | NA (no load vectorizable/vectorized instructions) |
store | NA (no store vectorizable/vectorized instructions) |
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 | 10% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV $-0x1,%RAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
TEST %RDX,%RDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 2 | 0.20 |
JLE 4e5ac1 <hypre_BinarySearch+0x81> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
DEC %RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
XOR %ECX,%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 4e5a6b <hypre_BinarySearch+0x2b> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 4e5ac1 <hypre_BinarySearch+0x81> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
MOV %R8,%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPL (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Source file and lines | binsearch.c:29-53 |
Module | exec |
nb instructions | 17 |
nb uops | 17 |
loop length | 50 |
used x86 registers | 6 |
used mmx registers | 0 |
used xmm registers | 0 |
used ymm registers | 0 |
used zmm registers | 0 |
nb stack references | 0 |
micro-operation queue | 2.83 cycles |
front end | 2.83 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 1.50 | 0.80 | 1.33 | 1.33 | 0.50 | 0.60 | 1.50 | 0.50 | 0.50 | 0.50 | 0.60 | 1.33 |
cycles | 1.50 | 0.80 | 1.33 | 1.33 | 0.50 | 0.60 | 1.50 | 0.50 | 0.50 | 0.50 | 0.60 | 1.33 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 2.93-2.95 |
Stall cycles | 0.00 |
Front-end | 2.83 |
Dispatch | 1.50 |
Overall L1 | 2.83 |
all | 0% |
load | NA (no load vectorizable/vectorized instructions) |
store | NA (no store vectorizable/vectorized instructions) |
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 | 10% |
load | NA (no load vectorizable/vectorized instructions) |
store | NA (no store vectorizable/vectorized instructions) |
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 | 10% |
Instruction | Nb FU | P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | Latency | Recip. throughput |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
PUSH %RBP | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
MOV %RSP,%RBP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV $-0x1,%RAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
TEST %RDX,%RDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 2 | 0.20 |
JLE 4e5ac1 <hypre_BinarySearch+0x81> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
DEC %RDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
XOR %ECX,%ECX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 4e5a6b <hypre_BinarySearch+0x2b> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 4e5ac1 <hypre_BinarySearch+0x81> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 5.84 |
NOP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
MOV %R8,%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPL (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼hypre_BinarySearch– | 0.01 | 0 |
○Loop 4415 - binsearch.c:35-44 - exec | 0.01 | 0.01 |