Function: advanceVelocity.extracted | Module: exec | Source: timestep.c:71-80 | Coverage: 2.45% |
---|
Function: advanceVelocity.extracted | Module: exec | Source: timestep.c:71-80 | Coverage: 2.45% |
---|
/scratch_na/users/xoserete/qaas_runs/171-322-9862/intel/CoMD/build/CoMD/CoMD/src-openmp/timestep.c: 71 - 80 |
-------------------------------------------------------------------------------- |
71: #pragma omp parallel for |
72: for (int iBox=0; iBox<nBoxes; iBox++) |
73: { |
74: for (int iOff=MAXATOMS*iBox,ii=0; ii<s->boxes->nAtoms[iBox]; ii++,iOff++) |
75: { |
76: s->atoms->p[iOff][0] += dt*s->atoms->f[iOff][0]; |
77: s->atoms->p[iOff][1] += dt*s->atoms->f[iOff][1]; |
78: s->atoms->p[iOff][2] += dt*s->atoms->f[iOff][2]; |
79: } |
80: } |
0x40fa10 PUSH %RBP |
0x40fa11 MOV %RSP,%RBP |
0x40fa14 PUSH %R15 |
0x40fa16 PUSH %R14 |
0x40fa18 PUSH %R13 |
0x40fa1a PUSH %R12 |
0x40fa1c PUSH %RBX |
0x40fa1d SUB $0x18,%RSP |
0x40fa21 MOV %RCX,%R15 |
0x40fa24 MOV %RDX,%RBX |
0x40fa27 MOVL $0,-0x3c(%RBP) |
0x40fa2e MOV (%RDI),%ESI |
0x40fa30 MOVL $0,-0x30(%RBP) |
0x40fa37 MOV %R9D,-0x2c(%RBP) |
0x40fa3b MOVL $0x1,-0x38(%RBP) |
0x40fa42 SUB $0x8,%RSP |
0x40fa46 LEA -0x38(%RBP),%RAX |
0x40fa4a LEA -0x3c(%RBP),%RCX |
0x40fa4e LEA -0x30(%RBP),%R8 |
0x40fa52 LEA -0x2c(%RBP),%R9 |
0x40fa56 MOV $0x62e8f0,%EDI |
0x40fa5b MOV %ESI,-0x34(%RBP) |
0x40fa5e MOV $0x22,%EDX |
0x40fa63 PUSH $0x1 |
0x40fa65 PUSH $0x1 |
0x40fa67 PUSH %RAX |
0x40fa68 CALL 403130 <__kmpc_for_static_init_4@plt> |
0x40fa6d ADD $0x20,%RSP |
0x40fa71 MOV -0x30(%RBP),%EAX |
0x40fa74 MOV -0x2c(%RBP),%ECX |
0x40fa77 CMP %ECX,%EAX |
0x40fa79 JBE 40fa99 |
0x40fa7b MOV $0x62e910,%EDI |
0x40fa80 MOV -0x34(%RBP),%ESI |
0x40fa83 ADD $0x18,%RSP |
0x40fa87 POP %RBX |
0x40fa88 POP %R12 |
0x40fa8a POP %R13 |
0x40fa8c POP %R14 |
0x40fa8e POP %R15 |
0x40fa90 POP %RBP |
0x40fa91 VZEROUPPER |
0x40fa94 JMP 402fe0 |
0x40fa99 VMOVQ %R15,%XMM0 |
0x40fa9e MOV 0x18(%RBX),%RDX |
0x40faa2 MOV 0x78(%RDX),%RDX |
0x40faa6 SUB %RAX,%RCX |
0x40faa9 VPBROADCASTQ %XMM0,%YMM1 |
0x40faae MOV %EAX,%ESI |
0x40fab0 SAL $0x6,%ESI |
0x40fab3 XOR %EDI,%EDI |
0x40fab5 JMP 40facf |
0x40fab7 NOPW (%RAX,%RAX,1) |
(96) 0x40fac0 LEA 0x1(%RDI),%R8 |
(96) 0x40fac4 ADD $0x40,%ESI |
(96) 0x40fac7 CMP %RCX,%RDI |
(96) 0x40faca MOV %R8,%RDI |
(96) 0x40facd JE 40fa7b |
(96) 0x40facf MOV %ESI,%ESI |
(96) 0x40fad1 LEA (%RDI,%RAX,1),%R8 |
(96) 0x40fad5 MOV (%RDX,%R8,4),%R8D |
(96) 0x40fad9 TEST %R8D,%R8D |
(96) 0x40fadc JLE 40fac0 |
(96) 0x40fade LEA (,%RSI,8),%R15 |
(96) 0x40fae6 LEA (%RDI,%RAX,1),%R12D |
(96) 0x40faea SAL $0x6,%R12D |
(96) 0x40faee MOV 0x20(%RBX),%R10 |
(96) 0x40faf2 MOV 0x20(%R10),%R9 |
(96) 0x40faf6 MOV 0x28(%R10),%R10 |
(96) 0x40fafa LEA -0x1(%R8),%R11D |
(96) 0x40fafe MOVSXD %R11D,%R11 |
(96) 0x40fb01 ADD %R12,%R11 |
(96) 0x40fb04 SAL $0x3,%R11 |
(96) 0x40fb08 LEA (%R11,%R11,2),%R11 |
(96) 0x40fb0c LEA (%R10,%R11,1),%R13 |
(96) 0x40fb10 ADD $0x10,%R13 |
(96) 0x40fb14 SAL $0x3,%R12 |
(96) 0x40fb18 LEA (%R12,%R12,2),%R12 |
(96) 0x40fb1c LEA (%R9,%R12,1),%R14 |
(96) 0x40fb20 CMP %R14,%R13 |
(96) 0x40fb23 JB 40fb90 |
(96) 0x40fb25 ADD %R10,%R12 |
(96) 0x40fb28 ADD %R9,%R11 |
(96) 0x40fb2b ADD $0x10,%R11 |
(96) 0x40fb2f CMP %R12,%R11 |
(96) 0x40fb32 JB 40fb90 |
(96) 0x40fb34 LEA (%R15,%R15,2),%R11 |
(96) 0x40fb38 ADD $0x10,%R11 |
(96) 0x40fb3c NOPL (%RAX) |
(99) 0x40fb40 VMOVSD -0x10(%R10,%R11,1),%XMM2 |
(99) 0x40fb47 VFMADD213SD -0x10(%R9,%R11,1),%XMM0,%XMM2 |
(99) 0x40fb4e VMOVSD %XMM2,-0x10(%R9,%R11,1) |
(99) 0x40fb55 VMOVSD -0x8(%R10,%R11,1),%XMM2 |
(99) 0x40fb5c VFMADD213SD -0x8(%R9,%R11,1),%XMM0,%XMM2 |
(99) 0x40fb63 VMOVSD %XMM2,-0x8(%R9,%R11,1) |
(99) 0x40fb6a VMOVSD (%R10,%R11,1),%XMM2 |
(99) 0x40fb70 VFMADD213SD (%R9,%R11,1),%XMM0,%XMM2 |
(99) 0x40fb76 VMOVSD %XMM2,(%R9,%R11,1) |
(99) 0x40fb7c ADD $0x18,%R11 |
(99) 0x40fb80 DEC %R8D |
(99) 0x40fb83 JNE 40fb40 |
(96) 0x40fb85 JMP 40fac0 |
0x40fb8a NOPW (%RAX,%RAX,1) |
(96) 0x40fb90 MOV %R8D,%R11D |
(96) 0x40fb93 AND $-0x8,%R11D |
(96) 0x40fb97 JE 40fde0 |
(96) 0x40fb9d LEA (%R15,%R15,2),%R15 |
(96) 0x40fba1 LEA -0x1(%R11),%R12D |
(96) 0x40fba5 XOR %R13D,%R13D |
(96) 0x40fba8 NOPL (%RAX,%RAX,1) |
(98) 0x40fbb0 VMOVUPD 0x20(%R10,%R15,1),%YMM2 |
(98) 0x40fbb7 VMOVUPD 0x80(%R10,%R15,1),%YMM3 |
(98) 0x40fbc1 VMOVUPD 0x10(%R10,%R15,1),%XMM4 |
(98) 0x40fbc8 VMOVUPD 0x70(%R10,%R15,1),%XMM5 |
(98) 0x40fbcf VBLENDPD $0x3,0x60(%R10,%R15,1),%YMM3,%YMM6 |
(98) 0x40fbd7 VINSERTF128 $0x1,0xa0(%R10,%R15,1),%YMM5,%YMM8 |
(98) 0x40fbe2 VMOVUPD 0x20(%R10,%R15,1),%XMM9 |
(98) 0x40fbe9 VBLENDPD $0xa,%YMM8,%YMM6,%YMM5 |
(98) 0x40fbef VBLENDPD $0x3,(%R10,%R15,1),%YMM2,%YMM11 |
(98) 0x40fbf6 VINSERTF128 $0x1,0x40(%R10,%R15,1),%YMM4,%YMM4 |
(98) 0x40fbfe VBLENDPD $0xa,%YMM4,%YMM11,%YMM10 |
(98) 0x40fc04 VSHUFPD $0x5,%YMM3,%YMM6,%YMM3 |
(98) 0x40fc09 VBROADCASTSD 0xb0(%R10,%R15,1),%YMM6 |
(98) 0x40fc13 VBLENDPD $0x8,%YMM6,%YMM3,%YMM7 |
(98) 0x40fc19 VSHUFPD $0x5,%YMM2,%YMM11,%YMM2 |
(98) 0x40fc1e VBROADCASTSD 0x50(%R10,%R15,1),%YMM3 |
(98) 0x40fc25 VBLENDPD $0x8,%YMM3,%YMM2,%YMM12 |
(98) 0x40fc2b VMOVUPD 0x80(%R10,%R15,1),%XMM2 |
(98) 0x40fc35 VBLENDPD $0xc,0xa0(%R10,%R15,1),%YMM2,%YMM2 |
(98) 0x40fc40 VBLENDPD $0xa,%YMM2,%YMM8,%YMM11 |
(98) 0x40fc46 VBLENDPD $0xc,0x40(%R10,%R15,1),%YMM9,%YMM2 |
(98) 0x40fc4e VBLENDPD $0xa,%YMM2,%YMM4,%YMM13 |
(98) 0x40fc54 VMOVUPD 0x20(%R9,%R15,1),%YMM3 |
(98) 0x40fc5b VMOVUPD 0x80(%R9,%R15,1),%YMM4 |
(98) 0x40fc65 VMOVUPD 0x10(%R9,%R15,1),%XMM8 |
(98) 0x40fc6c VMOVUPD 0x70(%R9,%R15,1),%XMM2 |
(98) 0x40fc73 VBLENDPD $0x3,0x60(%R9,%R15,1),%YMM4,%YMM6 |
(98) 0x40fc7b VINSERTF128 $0x1,0xa0(%R9,%R15,1),%YMM2,%YMM9 |
(98) 0x40fc86 VBLENDPD $0xa,%YMM9,%YMM6,%YMM2 |
(98) 0x40fc8c VBLENDPD $0x3,(%R9,%R15,1),%YMM3,%YMM14 |
(98) 0x40fc93 VSHUFPD $0x5,%YMM4,%YMM6,%YMM4 |
(98) 0x40fc98 VBROADCASTSD 0xb0(%R9,%R15,1),%YMM6 |
(98) 0x40fca2 VBLENDPD $0x8,%YMM6,%YMM4,%YMM6 |
(98) 0x40fca8 VSHUFPD $0x5,%YMM3,%YMM14,%YMM3 |
(98) 0x40fcad VBROADCASTSD 0x50(%R9,%R15,1),%YMM4 |
(98) 0x40fcb4 VBLENDPD $0x8,%YMM4,%YMM3,%YMM4 |
(98) 0x40fcba VMOVUPD 0x80(%R9,%R15,1),%XMM3 |
(98) 0x40fcc4 VBLENDPD $0xc,0xa0(%R9,%R15,1),%YMM3,%YMM3 |
(98) 0x40fccf VBLENDPD $0xa,%YMM3,%YMM9,%YMM3 |
(98) 0x40fcd5 VMOVUPD 0x20(%R9,%R15,1),%XMM9 |
(98) 0x40fcdc VINSERTF128 $0x1,0x40(%R9,%R15,1),%YMM8,%YMM15 |
(98) 0x40fce4 VBLENDPD $0xa,%YMM15,%YMM14,%YMM8 |
(98) 0x40fcea VBLENDPD $0xc,0x40(%R9,%R15,1),%YMM9,%YMM9 |
(98) 0x40fcf2 VBLENDPD $0xa,%YMM9,%YMM15,%YMM9 |
(98) 0x40fcf8 VFMADD231PD %YMM10,%YMM1,%YMM8 |
(98) 0x40fcfd VFMADD231PD %YMM5,%YMM1,%YMM2 |
(98) 0x40fd02 VFMADD231PD %YMM12,%YMM1,%YMM4 |
(98) 0x40fd07 VFMADD231PD %YMM7,%YMM1,%YMM6 |
(98) 0x40fd0c VFMADD231PD %YMM13,%YMM1,%YMM9 |
(98) 0x40fd11 VFMADD231PD %YMM11,%YMM1,%YMM3 |
(98) 0x40fd16 VMOVDDUP %XMM4,%XMM5 |
(98) 0x40fd1a VPERM2F128 $0x20,%YMM8,%YMM5,%YMM5 |
(98) 0x40fd20 VMOVDDUP %XMM6,%XMM7 |
(98) 0x40fd24 VPERM2F128 $0x20,%YMM2,%YMM7,%YMM7 |
(98) 0x40fd2a VINSERTF128 $0x1,%XMM3,%YMM2,%YMM10 |
(98) 0x40fd30 VBLENDPD $0xa,%YMM7,%YMM10,%YMM7 |
(98) 0x40fd36 VINSERTF128 $0x1,%XMM9,%YMM8,%YMM10 |
(98) 0x40fd3c VBLENDPD $0xa,%YMM5,%YMM10,%YMM5 |
(98) 0x40fd42 VSHUFPD $0x1,%YMM6,%YMM6,%YMM10 |
(98) 0x40fd47 VBLENDPD $0x4,%YMM2,%YMM10,%YMM10 |
(98) 0x40fd4d VSHUFPD $0x4,%YMM6,%YMM6,%YMM6 |
(98) 0x40fd52 VPERM2F128 $0x31,%YMM3,%YMM2,%YMM2 |
(98) 0x40fd58 VPERM2F128 $0x31,%YMM6,%YMM3,%YMM6 |
(98) 0x40fd5e VBLENDPD $0xa,%YMM2,%YMM6,%YMM2 |
(98) 0x40fd64 VSHUFPD $0x1,%YMM4,%YMM4,%YMM6 |
(98) 0x40fd69 VBLENDPD $0x4,%YMM8,%YMM6,%YMM6 |
(98) 0x40fd6f VSHUFPD $0x4,%YMM4,%YMM4,%YMM4 |
(98) 0x40fd74 VPERM2F128 $0x31,%YMM9,%YMM8,%YMM8 |
(98) 0x40fd7a VPERM2F128 $0x31,%YMM4,%YMM9,%YMM4 |
(98) 0x40fd80 VBLENDPD $0xa,%YMM8,%YMM4,%YMM4 |
(98) 0x40fd86 VBLENDPD $0x2,%YMM9,%YMM6,%YMM6 |
(98) 0x40fd8c VBLENDPD $0x2,%YMM3,%YMM10,%YMM3 |
(98) 0x40fd92 VMOVUPD %YMM4,0x40(%R9,%R15,1) |
(98) 0x40fd99 VMOVUPD %YMM2,0xa0(%R9,%R15,1) |
(98) 0x40fda3 VMOVUPD %YMM3,0x80(%R9,%R15,1) |
(98) 0x40fdad VMOVUPD %YMM6,0x20(%R9,%R15,1) |
(98) 0x40fdb4 VMOVUPD %YMM5,(%R9,%R15,1) |
(98) 0x40fdba VMOVUPD %YMM7,0x60(%R9,%R15,1) |
(98) 0x40fdc1 ADD $0x8,%R13D |
(98) 0x40fdc5 ADD $0xc0,%R15 |
(98) 0x40fdcc CMP %R12D,%R13D |
(98) 0x40fdcf JLE 40fbb0 |
(96) 0x40fdd5 CMP %R11D,%R8D |
(96) 0x40fdd8 JE 40fac0 |
(96) 0x40fdde JMP 40fde3 |
(96) 0x40fde0 XOR %R11D,%R11D |
(96) 0x40fde3 VMOVDDUP %XMM0,%XMM2 |
(96) 0x40fde7 SUB %R11D,%R8D |
(96) 0x40fdea MOVSXD %R11D,%R11 |
(96) 0x40fded ADD %RSI,%R11 |
(96) 0x40fdf0 LEA (%R11,%R11,2),%R11 |
(96) 0x40fdf4 LEA 0x10(,%R11,8),%R11 |
(96) 0x40fdfc NOPL (%RAX) |
(97) 0x40fe00 VMOVUPD -0x10(%R10,%R11,1),%XMM3 |
(97) 0x40fe07 VFMADD213PD -0x10(%R9,%R11,1),%XMM2,%XMM3 |
(97) 0x40fe0e VMOVUPD %XMM3,-0x10(%R9,%R11,1) |
(97) 0x40fe15 VMOVSD (%R10,%R11,1),%XMM3 |
(97) 0x40fe1b VFMADD213SD (%R9,%R11,1),%XMM0,%XMM3 |
(97) 0x40fe21 VMOVSD %XMM3,(%R9,%R11,1) |
(97) 0x40fe27 ADD $0x18,%R11 |
(97) 0x40fe2b DEC %R8D |
(97) 0x40fe2e JNE 40fe00 |
(96) 0x40fe30 JMP 40fac0 |
0x40fe35 NOPW %CS:(%RAX,%RAX,1) |
0x40fe3f NOP |
Path / |
Source file and lines | timestep.c:71-80 |
Module | exec |
nb instructions | 56 |
nb uops | 58 |
loop length | 193 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 1 |
used ymm registers | 1 |
used zmm registers | 0 |
nb stack references | 5 |
micro-operation queue | 9.67 cycles |
front end | 9.67 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 1.80 | 1.80 | 4.00 | 4.00 | 7.50 | 2.00 | 1.80 | 7.50 | 7.50 | 7.50 | 1.60 | 4.00 |
cycles | 1.80 | 1.80 | 4.00 | 4.00 | 7.50 | 2.00 | 1.80 | 7.50 | 7.50 | 7.50 | 1.60 | 4.00 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 9.46-9.50 |
Stall cycles | 0.00 |
Front-end | 9.67 |
Dispatch | 7.50 |
Overall L1 | 9.67 |
all | 5% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 14% |
all | 9% |
load | 6% |
store | 6% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 12% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 11% |
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 |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
SUB $0x18,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %RCX,%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %RDX,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOVL $0,-0x3c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV (%RDI),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R9D,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVL $0x1,-0x38(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
SUB $0x8,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA -0x38(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x3c(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x30(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x2c(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x62e8f0,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x34(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV $0x22,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RAX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
CALL 403130 <__kmpc_for_static_init_4@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
ADD $0x20,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x30(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x2c(%RBP),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
CMP %ECX,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JBE 40fa99 <advanceVelocity.extracted+0x89> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV $0x62e910,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV -0x34(%RBP),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD $0x18,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
VZEROUPPER | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
JMP 402fe0 <__kmpc_for_static_fini@plt> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2.08 |
VMOVQ %R15,%XMM0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
MOV 0x18(%RBX),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x78(%RDX),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %RAX,%RCX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
VPBROADCASTQ %XMM0,%YMM1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
MOV %EAX,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SAL $0x6,%ESI | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0-2 | 0.50 |
XOR %EDI,%EDI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 40facf <advanceVelocity.extracted+0xbf> | 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 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Source file and lines | timestep.c:71-80 |
Module | exec |
nb instructions | 56 |
nb uops | 58 |
loop length | 193 |
used x86 registers | 14 |
used mmx registers | 0 |
used xmm registers | 1 |
used ymm registers | 1 |
used zmm registers | 0 |
nb stack references | 5 |
micro-operation queue | 9.67 cycles |
front end | 9.67 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 1.80 | 1.80 | 4.00 | 4.00 | 7.50 | 2.00 | 1.80 | 7.50 | 7.50 | 7.50 | 1.60 | 4.00 |
cycles | 1.80 | 1.80 | 4.00 | 4.00 | 7.50 | 2.00 | 1.80 | 7.50 | 7.50 | 7.50 | 1.60 | 4.00 |
Cycles executing div or sqrt instructions | NA |
FE+BE cycles | 9.46-9.50 |
Stall cycles | 0.00 |
Front-end | 9.67 |
Dispatch | 7.50 |
Overall L1 | 9.67 |
all | 5% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 14% |
all | 9% |
load | 6% |
store | 6% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 12% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | NA (no div/sqrt vectorizable/vectorized instructions) |
other | 11% |
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 |
PUSH %R15 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R14 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R13 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %R12 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RBX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
SUB $0x18,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %RCX,%R15 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %RDX,%RBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOVL $0,-0x3c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV (%RDI),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOVL $0,-0x30(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R9D,-0x2c(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOVL $0x1,-0x38(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
SUB $0x8,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA -0x38(%RBP),%RAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x3c(%RBP),%RCX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x30(%RBP),%R8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
LEA -0x2c(%RBP),%R9 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV $0x62e8f0,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %ESI,-0x34(%RBP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV $0x22,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH $0x1 | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
PUSH %RAX | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 5-12 | 0.50 |
CALL 403130 <__kmpc_for_static_init_4@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
ADD $0x20,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV -0x30(%RBP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV -0x2c(%RBP),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
CMP %ECX,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JBE 40fa99 <advanceVelocity.extracted+0x89> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV $0x62e910,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV -0x34(%RBP),%ESI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD $0x18,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
POP %RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R12 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R13 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
POP %RBP | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1-6 | 0.33 |
VZEROUPPER | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
JMP 402fe0 <__kmpc_for_static_fini@plt> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2.08 |
VMOVQ %R15,%XMM0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
MOV 0x18(%RBX),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x78(%RDX),%RDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
SUB %RAX,%RCX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
VPBROADCASTQ %XMM0,%YMM1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
MOV %EAX,%ESI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SAL $0x6,%ESI | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0-2 | 0.50 |
XOR %EDI,%EDI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 40facf <advanceVelocity.extracted+0xbf> | 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 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼advanceVelocity.extracted– | 2.45 | 0.63 |
▼Loop 96 - timestep.c:71-80 - exec– | 0.03 | 0.01 |
○Loop 98 - timestep.c:74-78 - exec | 2.15 | 0.55 |
○Loop 97 - timestep.c:74-78 - exec | 0.27 | 0.07 |
○Loop 99 - timestep.c:74-78 - exec | 0 | 0 |