Function: ideal_gas_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, ... | Module: exec | Source: ideal_gas.cpp:37-45 [...] | Coverage: 4.03% |
---|
Function: ideal_gas_kernel(int, int, int, int, clover::Buffer2D<double>&, clover::Buffer2D<double>&, ... | Module: exec | Source: ideal_gas.cpp:37-45 [...] | Coverage: 4.03% |
---|
/scratch_na/users/xoserete/qaas_runs/171-320-5323/intel/CloverLeafCXX/build/CloverLeafCXX/src/omp/ideal_gas.cpp: 37 - 45 |
-------------------------------------------------------------------------------- |
37: #pragma omp parallel for simd collapse(2) |
38: for (int j = (y_min + 1); j < (y_max + 2); j++) { |
39: for (int i = (x_min + 1); i < (x_max + 2); i++) { |
40: double v = 1.0 / density(i, j); |
41: pressure(i, j) = (1.4 - 1.0) * density(i, j) * energy(i, j); |
42: double pressurebyenergy = (1.4 - 1.0) * density(i, j); |
43: double pressurebyvolume = -density(i, j) * pressure(i, j); |
44: double sound_speed_squared = v * v * (pressure(i, j) * pressurebyenergy - pressurebyvolume); |
45: soundspeed(i, j) = std::sqrt(sound_speed_squared); |
/scratch_na/users/xoserete/qaas_runs/171-320-5323/intel/CloverLeafCXX/build/CloverLeafCXX/src/omp/context.h: 69 - 69 |
-------------------------------------------------------------------------------- |
69: T &operator()(size_t i, size_t j) const { return data[i + j * sizeX]; } |
0x444940 PUSH %RBP |
0x444941 MOV %RSP,%RBP |
0x444944 PUSH %R15 |
0x444946 PUSH %R14 |
0x444948 PUSH %R13 |
0x44494a PUSH %R12 |
0x44494c PUSH %RBX |
0x44494d AND $-0x40,%RSP |
0x444951 ADD $-0x80,%RSP |
0x444955 MOV 0x28(%RDI),%EAX |
0x444958 MOV 0x2c(%RDI),%EDX |
0x44495b MOV 0x20(%RDI),%EBX |
0x44495e MOV 0x24(%RDI),%ECX |
0x444961 ADD $0x2,%EDX |
0x444964 LEA 0x1(%RAX),%R15D |
0x444968 LEA 0x1(%RBX),%ESI |
0x44496b MOV %EDX,0x50(%RSP) |
0x44496f MOV %ESI,0x4c(%RSP) |
0x444973 CMP %EDX,%R15D |
0x444976 JGE 444f4b |
0x44497c MOV %EDX,%EBX |
0x44497e LEA 0x2(%RCX),%R14D |
0x444982 SUB %R15D,%EBX |
0x444985 CMP %R14D,%ESI |
0x444988 JGE 444f4b |
0x44498e MOV %RDI,%R13 |
0x444991 MOV %R14D,%EDI |
0x444994 SUB %ESI,%EDI |
0x444996 MOV %EDI,0x54(%RSP) |
0x44499a CALL 4046c0 <omp_get_num_threads@plt> |
0x44499f MOV %EAX,%R12D |
0x4449a2 CALL 4045b0 <omp_get_thread_num@plt> |
0x4449a7 XOR %EDX,%EDX |
0x4449a9 MOV %EAX,%R8D |
0x4449ac MOV 0x54(%RSP),%EAX |
0x4449b0 IMUL %EBX,%EAX |
0x4449b3 DIV %R12D |
0x4449b6 MOV %EAX,%R12D |
0x4449b9 CMP %EDX,%R8D |
0x4449bc JB 444f6b |
0x4449c2 IMUL %R12D,%R8D |
0x4449c6 LEA (%R8,%RDX,1),%R9D |
0x4449ca LEA (%R12,%R9,1),%R10D |
0x4449ce MOV %R10D,0x48(%RSP) |
0x4449d3 CMP %R10D,%R9D |
0x4449d6 JAE 444f4b |
0x4449dc MOV %R9D,%EAX |
0x4449df XOR %EDX,%EDX |
0x4449e1 MOV 0x4c(%RSP),%R11D |
0x4449e6 MOV 0x8(%R13),%RSI |
0x4449ea DIVL 0x54(%RSP) |
0x4449ee MOV 0x18(%R13),%RBX |
0x4449f2 VMOVSD 0x811e(%RIP),%XMM7 |
0x4449fa VMOVSD 0x812e(%RIP),%XMM6 |
0x444a02 VMOVSD 0x812e(%RIP),%XMM5 |
0x444a0a MOV %RSI,0x38(%RSP) |
0x444a0f MOV %RBX,0x28(%RSP) |
0x444a14 VBROADCASTSD %XMM7,%YMM10 |
0x444a19 VBROADCASTSD %XMM6,%YMM9 |
0x444a1e VBROADCASTSD %XMM5,%YMM8 |
0x444a23 VBROADCASTSD %XMM7,%ZMM4 |
0x444a29 VBROADCASTSD %XMM6,%ZMM3 |
0x444a2f VBROADCASTSD %XMM5,%ZMM2 |
0x444a35 ADD %EDX,%R11D |
0x444a38 ADD %R15D,%EAX |
0x444a3b MOV %R14D,%EDX |
0x444a3e MOV (%R13),%R15 |
0x444a42 MOV 0x10(%R13),%R14 |
0x444a46 MOV %R11D,0x7c(%RSP) |
0x444a4b SUB %R11D,%EDX |
0x444a4e MOVSXD %EAX,%RBX |
0x444a51 MOV %R15,0x40(%RSP) |
0x444a56 MOV %R14,0x30(%RSP) |
0x444a5b NOPL (%RAX,%RAX,1) |
(461) 0x444a60 CMP %EDX,%R12D |
(461) 0x444a63 CMOVBE %R12D,%EDX |
(461) 0x444a67 LEA (%R9,%RDX,1),%ECX |
(461) 0x444a6b MOV %ECX,0x78(%RSP) |
(461) 0x444a6f CMP %ECX,%R9D |
(461) 0x444a72 JAE 444f1c |
(461) 0x444a78 MOV 0x40(%RSP),%R13 |
(461) 0x444a7d MOV 0x38(%RSP),%RDI |
(461) 0x444a82 LEA -0x1(%RDX),%EAX |
(461) 0x444a85 MOV 0x30(%RSP),%R12 |
(461) 0x444a8a MOV 0x28(%RSP),%R8 |
(461) 0x444a8f MOV (%R13),%R11 |
(461) 0x444a93 MOV (%RDI),%RSI |
(461) 0x444a96 MOV (%R12),%R10 |
(461) 0x444a9a MOV 0x10(%RDI),%R14 |
(461) 0x444a9e MOV (%R8),%RDI |
(461) 0x444aa1 IMUL %RBX,%R11 |
(461) 0x444aa5 MOV 0x10(%R13),%R15 |
(461) 0x444aa9 IMUL %RBX,%RSI |
(461) 0x444aad MOV 0x10(%R12),%R13 |
(461) 0x444ab2 MOV 0x10(%R8),%R12 |
(461) 0x444ab6 IMUL %RBX,%R10 |
(461) 0x444aba IMUL %RBX,%RDI |
(461) 0x444abe MOV %R11,0x58(%RSP) |
(461) 0x444ac3 MOV %RSI,0x60(%RSP) |
(461) 0x444ac8 MOV %R10,0x68(%RSP) |
(461) 0x444acd MOV %RDI,0x70(%RSP) |
(461) 0x444ad2 CMP $0x6,%EAX |
(461) 0x444ad5 JBE 444f60 |
(461) 0x444adb MOVSXD 0x7c(%RSP),%R8 |
(461) 0x444ae0 LEA (%RSI,%R8,1),%RAX |
(461) 0x444ae4 LEA (%R11,%R8,1),%R11 |
(461) 0x444ae8 LEA (%R10,%R8,1),%R10 |
(461) 0x444aec ADD %RDI,%R8 |
(461) 0x444aef LEA (%R15,%R11,8),%RCX |
(461) 0x444af3 MOV %EDX,%EDI |
(461) 0x444af5 SHR $0x3,%EDI |
(461) 0x444af8 LEA (%R14,%RAX,8),%R11 |
(461) 0x444afc LEA (%R13,%R10,8),%R10 |
(461) 0x444b01 XOR %EAX,%EAX |
(461) 0x444b03 SAL $0x6,%RDI |
(461) 0x444b07 LEA (%R12,%R8,8),%R8 |
(461) 0x444b0b LEA -0x40(%RDI),%RSI |
(461) 0x444b0f SHR $0x6,%RSI |
(461) 0x444b13 INC %RSI |
(461) 0x444b16 AND $0x3,%ESI |
(461) 0x444b19 JE 444c15 |
(461) 0x444b1f CMP $0x1,%RSI |
(461) 0x444b23 JE 444bc1 |
(461) 0x444b29 CMP $0x2,%RSI |
(461) 0x444b2d JE 444b76 |
(461) 0x444b2f VMOVUPD (%RCX),%ZMM1 |
(461) 0x444b35 MOV $0x40,%EAX |
(461) 0x444b3a VMULPD (%R11),%ZMM1,%ZMM0 |
(461) 0x444b40 VDIVPD %ZMM1,%ZMM4,%ZMM11 |
(461) 0x444b46 VMULPD %ZMM11,%ZMM11,%ZMM14 |
(461) 0x444b4c VMULPD %ZMM3,%ZMM0,%ZMM12 |
(461) 0x444b52 VMOVUPD %ZMM12,(%R10) |
(461) 0x444b58 VMULPD (%RCX),%ZMM2,%ZMM13 |
(461) 0x444b5e VMULPD %ZMM14,%ZMM13,%ZMM15 |
(461) 0x444b64 VMULPD %ZMM12,%ZMM15,%ZMM1 |
(461) 0x444b6a VSQRTPD %ZMM1,%ZMM11 |
(461) 0x444b70 VMOVUPD %ZMM11,(%R8) |
(461) 0x444b76 VMOVUPD (%RCX,%RAX,1),%ZMM0 |
(461) 0x444b7d VMULPD (%R11,%RAX,1),%ZMM0,%ZMM13 |
(461) 0x444b84 VDIVPD %ZMM0,%ZMM4,%ZMM12 |
(461) 0x444b8a VMULPD %ZMM12,%ZMM12,%ZMM1 |
(461) 0x444b90 VMULPD %ZMM3,%ZMM13,%ZMM14 |
(461) 0x444b96 VMOVUPD %ZMM14,(%R10,%RAX,1) |
(461) 0x444b9d VMULPD (%RCX,%RAX,1),%ZMM2,%ZMM15 |
(461) 0x444ba4 VMULPD %ZMM1,%ZMM15,%ZMM11 |
(461) 0x444baa VMULPD %ZMM14,%ZMM11,%ZMM0 |
(461) 0x444bb0 VSQRTPD %ZMM0,%ZMM12 |
(461) 0x444bb6 VMOVUPD %ZMM12,(%R8,%RAX,1) |
(461) 0x444bbd ADD $0x40,%RAX |
(461) 0x444bc1 VMOVUPD (%RCX,%RAX,1),%ZMM13 |
(461) 0x444bc8 VMULPD (%R11,%RAX,1),%ZMM13,%ZMM15 |
(461) 0x444bcf VDIVPD %ZMM13,%ZMM4,%ZMM14 |
(461) 0x444bd5 VMULPD %ZMM14,%ZMM14,%ZMM11 |
(461) 0x444bdb VMULPD %ZMM3,%ZMM15,%ZMM1 |
(461) 0x444be1 VMOVUPD %ZMM1,(%R10,%RAX,1) |
(461) 0x444be8 VMULPD (%RCX,%RAX,1),%ZMM2,%ZMM0 |
(461) 0x444bef VMULPD %ZMM11,%ZMM0,%ZMM12 |
(461) 0x444bf5 VMULPD %ZMM1,%ZMM12,%ZMM13 |
(461) 0x444bfb VSQRTPD %ZMM13,%ZMM14 |
(461) 0x444c01 VMOVUPD %ZMM14,(%R8,%RAX,1) |
(461) 0x444c08 ADD $0x40,%RAX |
(461) 0x444c0c CMP %RDI,%RAX |
(461) 0x444c0f JE 444d4f |
(462) 0x444c15 VMOVUPD (%RCX,%RAX,1),%ZMM15 |
(462) 0x444c1c VMULPD (%R11,%RAX,1),%ZMM15,%ZMM1 |
(462) 0x444c23 VDIVPD %ZMM15,%ZMM4,%ZMM11 |
(462) 0x444c29 VMULPD %ZMM11,%ZMM11,%ZMM13 |
(462) 0x444c2f VMULPD %ZMM3,%ZMM1,%ZMM12 |
(462) 0x444c35 VMOVUPD %ZMM12,(%R10,%RAX,1) |
(462) 0x444c3c VMULPD (%RCX,%RAX,1),%ZMM2,%ZMM0 |
(462) 0x444c43 VMULPD %ZMM13,%ZMM0,%ZMM14 |
(462) 0x444c49 VMULPD %ZMM12,%ZMM14,%ZMM15 |
(462) 0x444c4f VSQRTPD %ZMM15,%ZMM11 |
(462) 0x444c55 VMOVUPD %ZMM11,(%R8,%RAX,1) |
(462) 0x444c5c VMOVUPD 0x40(%RCX,%RAX,1),%ZMM1 |
(462) 0x444c64 VMULPD 0x40(%R11,%RAX,1),%ZMM1,%ZMM0 |
(462) 0x444c6c VDIVPD %ZMM1,%ZMM4,%ZMM12 |
(462) 0x444c72 VMULPD %ZMM12,%ZMM12,%ZMM15 |
(462) 0x444c78 VMULPD %ZMM3,%ZMM0,%ZMM13 |
(462) 0x444c7e VMOVUPD %ZMM13,0x40(%R10,%RAX,1) |
(462) 0x444c86 VMULPD 0x40(%RCX,%RAX,1),%ZMM2,%ZMM14 |
(462) 0x444c8e VMULPD %ZMM15,%ZMM14,%ZMM11 |
(462) 0x444c94 VMULPD %ZMM13,%ZMM11,%ZMM1 |
(462) 0x444c9a VSQRTPD %ZMM1,%ZMM12 |
(462) 0x444ca0 VMOVUPD %ZMM12,0x40(%R8,%RAX,1) |
(462) 0x444ca8 VMOVUPD 0x80(%RCX,%RAX,1),%ZMM0 |
(462) 0x444cb0 VMULPD 0x80(%R11,%RAX,1),%ZMM0,%ZMM14 |
(462) 0x444cb8 VDIVPD %ZMM0,%ZMM4,%ZMM13 |
(462) 0x444cbe VMULPD %ZMM13,%ZMM13,%ZMM11 |
(462) 0x444cc4 VMULPD %ZMM3,%ZMM14,%ZMM15 |
(462) 0x444cca VMOVUPD %ZMM15,0x80(%R10,%RAX,1) |
(462) 0x444cd2 VMULPD 0x80(%RCX,%RAX,1),%ZMM2,%ZMM1 |
(462) 0x444cda VMULPD %ZMM11,%ZMM1,%ZMM12 |
(462) 0x444ce0 VMULPD %ZMM15,%ZMM12,%ZMM0 |
(462) 0x444ce6 VSQRTPD %ZMM0,%ZMM13 |
(462) 0x444cec VMOVUPD %ZMM13,0x80(%R8,%RAX,1) |
(462) 0x444cf4 VMOVUPD 0xc0(%RCX,%RAX,1),%ZMM14 |
(462) 0x444cfc VMULPD 0xc0(%R11,%RAX,1),%ZMM14,%ZMM1 |
(462) 0x444d04 VDIVPD %ZMM14,%ZMM4,%ZMM15 |
(462) 0x444d0a VMULPD %ZMM15,%ZMM15,%ZMM11 |
(462) 0x444d10 VMULPD %ZMM3,%ZMM1,%ZMM12 |
(462) 0x444d16 VMOVUPD %ZMM12,0xc0(%R10,%RAX,1) |
(462) 0x444d1e VMULPD 0xc0(%RCX,%RAX,1),%ZMM2,%ZMM0 |
(462) 0x444d26 VMULPD %ZMM11,%ZMM0,%ZMM13 |
(462) 0x444d2c VMULPD %ZMM12,%ZMM13,%ZMM14 |
(462) 0x444d32 VSQRTPD %ZMM14,%ZMM15 |
(462) 0x444d38 VMOVUPD %ZMM15,0xc0(%R8,%RAX,1) |
(462) 0x444d40 ADD $0x100,%RAX |
(462) 0x444d46 CMP %RDI,%RAX |
(462) 0x444d49 JNE 444c15 |
(461) 0x444d4f MOV 0x7c(%RSP),%R11D |
(461) 0x444d54 MOV %EDX,%ECX |
(461) 0x444d56 AND $-0x8,%ECX |
(461) 0x444d59 ADD %ECX,%R9D |
(461) 0x444d5c LEA (%RCX,%R11,1),%ESI |
(461) 0x444d60 TEST $0x7,%DL |
(461) 0x444d63 JE 444f17 |
(461) 0x444d69 SUB %ECX,%EDX |
(461) 0x444d6b LEA -0x1(%RDX),%R10D |
(461) 0x444d6f CMP $0x2,%R10D |
(461) 0x444d73 JBE 444df9 |
(461) 0x444d79 MOVSXD 0x7c(%RSP),%RAX |
(461) 0x444d7e MOV 0x58(%RSP),%R8 |
(461) 0x444d83 MOV 0x60(%RSP),%R11 |
(461) 0x444d88 MOV 0x70(%RSP),%RDI |
(461) 0x444d8d ADD %RAX,%R8 |
(461) 0x444d90 ADD %RCX,%R8 |
(461) 0x444d93 ADD %RAX,%RDI |
(461) 0x444d96 LEA (%R15,%R8,8),%R10 |
(461) 0x444d9a LEA (%R11,%RAX,1),%R8 |
(461) 0x444d9e MOV 0x68(%RSP),%R11 |
(461) 0x444da3 ADD %RCX,%RDI |
(461) 0x444da6 VMOVUPD (%R10),%YMM1 |
(461) 0x444dab ADD %RCX,%R8 |
(461) 0x444dae ADD %R11,%RAX |
(461) 0x444db1 VDIVPD %YMM1,%YMM10,%YMM12 |
(461) 0x444db5 ADD %RCX,%RAX |
(461) 0x444db8 VMULPD (%R14,%R8,8),%YMM1,%YMM0 |
(461) 0x444dbe VMULPD %YMM9,%YMM0,%YMM13 |
(461) 0x444dc3 VMOVUPD %YMM13,(%R13,%RAX,8) |
(461) 0x444dca VMULPD (%R10),%YMM8,%YMM14 |
(461) 0x444dcf VMULPD %YMM12,%YMM12,%YMM11 |
(461) 0x444dd4 VMULPD %YMM11,%YMM14,%YMM15 |
(461) 0x444dd9 VMULPD %YMM13,%YMM15,%YMM1 |
(461) 0x444dde VSQRTPD %YMM1,%YMM12 |
(461) 0x444de2 VMOVUPD %YMM12,(%R12,%RDI,8) |
(461) 0x444de8 TEST $0x3,%DL |
(461) 0x444deb JE 444f17 |
(461) 0x444df1 AND $-0x4,%EDX |
(461) 0x444df4 ADD %EDX,%R9D |
(461) 0x444df7 ADD %EDX,%ESI |
(461) 0x444df9 MOV 0x58(%RSP),%RDI |
(461) 0x444dfe MOVSXD %ESI,%RAX |
(461) 0x444e01 MOV 0x60(%RSP),%R11 |
(461) 0x444e06 MOV 0x68(%RSP),%R10 |
(461) 0x444e0b LEA (%RDI,%RAX,1),%RDX |
(461) 0x444e0f LEA (%R11,%RAX,1),%RCX |
(461) 0x444e13 LEA (%R15,%RDX,8),%R8 |
(461) 0x444e17 LEA (%R10,%RAX,1),%RDX |
(461) 0x444e1b VMOVSD (%R8),%XMM0 |
(461) 0x444e20 VDIVSD %XMM0,%XMM7,%XMM13 |
(461) 0x444e24 VMULSD (%R14,%RCX,8),%XMM0,%XMM14 |
(461) 0x444e2a MOV 0x78(%RSP),%ECX |
(461) 0x444e2e VMULSD %XMM6,%XMM14,%XMM15 |
(461) 0x444e32 VMOVSD %XMM15,(%R13,%RDX,8) |
(461) 0x444e39 LEA 0x1(%R9),%EDX |
(461) 0x444e3d VMULSD (%R8),%XMM5,%XMM1 |
(461) 0x444e42 MOV 0x70(%RSP),%R8 |
(461) 0x444e47 ADD %R8,%RAX |
(461) 0x444e4a VMULSD %XMM13,%XMM13,%XMM11 |
(461) 0x444e4f VMULSD %XMM11,%XMM1,%XMM12 |
(461) 0x444e54 VMULSD %XMM15,%XMM12,%XMM0 |
(461) 0x444e59 VSQRTSD %XMM0,%XMM0,%XMM0 |
(461) 0x444e5d VMOVSD %XMM0,(%R12,%RAX,8) |
(461) 0x444e63 LEA 0x1(%RSI),%EAX |
(461) 0x444e66 CMP %ECX,%EDX |
(461) 0x444e68 JAE 444f17 |
(461) 0x444e6e CLTQ |
(461) 0x444e70 ADD $0x2,%R9D |
(461) 0x444e74 ADD $0x2,%ESI |
(461) 0x444e77 LEA (%RDI,%RAX,1),%RDX |
(461) 0x444e7b LEA (%R11,%RAX,1),%RCX |
(461) 0x444e7f LEA (%R15,%RDX,8),%RDX |
(461) 0x444e83 VMOVSD (%RDX),%XMM13 |
(461) 0x444e87 VDIVSD %XMM13,%XMM7,%XMM14 |
(461) 0x444e8c VMULSD (%R14,%RCX,8),%XMM13,%XMM15 |
(461) 0x444e92 LEA (%R10,%RAX,1),%RCX |
(461) 0x444e96 ADD %R8,%RAX |
(461) 0x444e99 VMULSD %XMM6,%XMM15,%XMM1 |
(461) 0x444e9d VMOVSD %XMM1,(%R13,%RCX,8) |
(461) 0x444ea4 VMULSD (%RDX),%XMM5,%XMM12 |
(461) 0x444ea8 VMULSD %XMM14,%XMM14,%XMM11 |
(461) 0x444ead VMULSD %XMM11,%XMM12,%XMM0 |
(461) 0x444eb2 VMULSD %XMM1,%XMM0,%XMM13 |
(461) 0x444eb6 VSQRTSD %XMM13,%XMM13,%XMM13 |
(461) 0x444ebb VMOVSD %XMM13,(%R12,%RAX,8) |
(461) 0x444ec1 MOV 0x78(%RSP),%EAX |
(461) 0x444ec5 CMP %EAX,%R9D |
(461) 0x444ec8 JAE 444f17 |
(461) 0x444eca MOVSXD %ESI,%R9 |
(461) 0x444ecd ADD %R9,%RDI |
(461) 0x444ed0 ADD %R9,%R11 |
(461) 0x444ed3 ADD %R9,%R10 |
(461) 0x444ed6 ADD %R9,%R8 |
(461) 0x444ed9 LEA (%R15,%RDI,8),%R15 |
(461) 0x444edd VMOVSD (%R15),%XMM14 |
(461) 0x444ee2 VDIVSD %XMM14,%XMM7,%XMM15 |
(461) 0x444ee7 VMULSD (%R14,%R11,8),%XMM14,%XMM1 |
(461) 0x444eed VMULSD %XMM6,%XMM1,%XMM12 |
(461) 0x444ef1 VMOVSD %XMM12,(%R13,%R10,8) |
(461) 0x444ef8 VMULSD (%R15),%XMM5,%XMM0 |
(461) 0x444efd VMULSD %XMM15,%XMM15,%XMM11 |
(461) 0x444f02 VMULSD %XMM11,%XMM0,%XMM13 |
(461) 0x444f07 VMULSD %XMM12,%XMM13,%XMM14 |
(461) 0x444f0c VSQRTSD %XMM14,%XMM14,%XMM14 |
(461) 0x444f11 VMOVSD %XMM14,(%R12,%R8,8) |
(461) 0x444f17 MOV 0x78(%RSP),%R9D |
(461) 0x444f1c INC %RBX |
(461) 0x444f1f LEA (%RBX),%R14D |
(461) 0x444f22 CMP %R14D,0x50(%RSP) |
(461) 0x444f27 JLE 444f48 |
(461) 0x444f29 MOV 0x48(%RSP),%R12D |
(461) 0x444f2e MOV 0x4c(%RSP),%R13D |
(461) 0x444f33 MOV 0x54(%RSP),%EDX |
(461) 0x444f37 MOV %R13D,0x7c(%RSP) |
(461) 0x444f3c SUB %R9D,%R12D |
(461) 0x444f3f JMP 444a60 |
0x444f44 NOPL (%RAX) |
0x444f48 VZEROUPPER |
0x444f4b LEA -0x28(%RBP),%RSP |
0x444f4f POP %RBX |
0x444f50 POP %R12 |
0x444f52 POP %R13 |
0x444f54 POP %R14 |
0x444f56 POP %R15 |
0x444f58 POP %RBP |
0x444f59 RET |
0x444f5a NOPW (%RAX,%RAX,1) |
(461) 0x444f60 MOV 0x7c(%RSP),%ESI |
(461) 0x444f64 XOR %ECX,%ECX |
(461) 0x444f66 JMP 444d69 |
0x444f6b INC %R12D |
0x444f6e XOR %EDX,%EDX |
0x444f70 JMP 4449c2 |
0x444f75 NOPW %CS:(%RAX,%RAX,1) |
Path / |
Source file and lines | ideal_gas.cpp:37-45 |
Module | exec |
nb instructions | 89 |
nb uops | 99 |
loop length | 337 |
used x86 registers | 16 |
used mmx registers | 0 |
used xmm registers | 3 |
used ymm registers | 3 |
used zmm registers | 3 |
nb stack references | 10 |
micro-operation queue | 16.50 cycles |
front end | 16.50 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 7.30 | 8.00 | 7.00 | 7.00 | 8.50 | 7.20 | 7.30 | 8.50 | 8.50 | 8.50 | 7.20 | 7.00 |
cycles | 7.30 | 11.73 | 7.00 | 7.00 | 8.50 | 7.20 | 7.30 | 8.50 | 8.50 | 8.50 | 7.20 | 7.00 |
Cycles executing div or sqrt instructions | 12.00 |
FE+BE cycles | 15.76-15.85 |
Stall cycles | 0.00 |
Front-end | 16.50 |
Dispatch | 11.73 |
DIV/SQRT | 12.00 |
Overall L1 | 16.50 |
all | 4% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 14% |
all | 0% |
load | 0% |
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 | 3% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 0% |
other | 9% |
all | 9% |
load | 10% |
store | 9% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 6% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 8% |
all | 12% |
load | 12% |
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 | 12% |
all | 10% |
load | 10% |
store | 9% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 6% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 6% |
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 |
AND $-0x40,%RSP | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
ADD $-0x80,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x28(%RDI),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x2c(%RDI),%EDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x20(%RDI),%EBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x24(%RDI),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD $0x2,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA 0x1(%RAX),%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
LEA 0x1(%RBX),%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %EDX,0x50(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %ESI,0x4c(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %EDX,%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 444f4b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x60b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %EDX,%EBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA 0x2(%RCX),%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
SUB %R15D,%EBX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CMP %R14D,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 444f4b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x60b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %RDI,%R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %R14D,%EDI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SUB %ESI,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %EDI,0x54(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CALL 4046c0 <omp_get_num_threads@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
MOV %EAX,%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CALL 4045b0 <omp_get_thread_num@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %EAX,%R8D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x54(%RSP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
IMUL %EBX,%EAX | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
DIV %R12D | 4 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 11-16 | 6 |
MOV %EAX,%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CMP %EDX,%R8D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JB 444f6b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x62b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
IMUL %R12D,%R8D | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
LEA (%R8,%RDX,1),%R9D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
LEA (%R12,%R9,1),%R10D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %R10D,0x48(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %R10D,%R9D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 444f4b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x60b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %R9D,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV 0x4c(%RSP),%R11D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x8(%R13),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
DIVL 0x54(%RSP) | 5 | 0 | 3 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 11-16 | 6 |
MOV 0x18(%R13),%RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x811e(%RIP),%XMM7 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x812e(%RIP),%XMM6 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x812e(%RIP),%XMM5 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RSI,0x38(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %RBX,0x28(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VBROADCASTSD %XMM7,%YMM10 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM6,%YMM9 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM5,%YMM8 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM7,%ZMM4 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM6,%ZMM3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM5,%ZMM2 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
ADD %EDX,%R11D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
ADD %R15D,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %R14D,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV (%R13),%R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x10(%R13),%R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %R11D,0x7c(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
SUB %R11D,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOVSXD %EAX,%RBX | 1 | 0 | 0.33 | 0 | 0 | 0 | 0.33 | 0 | 0 | 0 | 0 | 0.33 | 0 | 1 | 0.33 |
MOV %R15,0x40(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R14,0x30(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
NOPL (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%RAX) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
VZEROUPPER | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
LEA -0x28(%RBP),%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 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 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
INC %R12D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 4449c2 <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x82> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2.08 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Source file and lines | ideal_gas.cpp:37-45 |
Module | exec |
nb instructions | 89 |
nb uops | 99 |
loop length | 337 |
used x86 registers | 16 |
used mmx registers | 0 |
used xmm registers | 3 |
used ymm registers | 3 |
used zmm registers | 3 |
nb stack references | 10 |
micro-operation queue | 16.50 cycles |
front end | 16.50 cycles |
P0 | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P10 | P11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
uops | 7.30 | 8.00 | 7.00 | 7.00 | 8.50 | 7.20 | 7.30 | 8.50 | 8.50 | 8.50 | 7.20 | 7.00 |
cycles | 7.30 | 11.73 | 7.00 | 7.00 | 8.50 | 7.20 | 7.30 | 8.50 | 8.50 | 8.50 | 7.20 | 7.00 |
Cycles executing div or sqrt instructions | 12.00 |
FE+BE cycles | 15.76-15.85 |
Stall cycles | 0.00 |
Front-end | 16.50 |
Dispatch | 11.73 |
DIV/SQRT | 12.00 |
Overall L1 | 16.50 |
all | 4% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 14% |
all | 0% |
load | 0% |
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 | 3% |
load | 0% |
store | 0% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 0% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 0% |
other | 9% |
all | 9% |
load | 10% |
store | 9% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 6% |
fma | NA (no fma vectorizable/vectorized instructions) |
other | 8% |
all | 12% |
load | 12% |
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 | 12% |
all | 10% |
load | 10% |
store | 9% |
mul | NA (no mul vectorizable/vectorized instructions) |
add-sub | 6% |
fma | NA (no fma vectorizable/vectorized instructions) |
div/sqrt | 6% |
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 |
AND $-0x40,%RSP | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
ADD $-0x80,%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x28(%RDI),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x2c(%RDI),%EDX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x20(%RDI),%EBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x24(%RDI),%ECX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
ADD $0x2,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
LEA 0x1(%RAX),%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
LEA 0x1(%RBX),%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %EDX,0x50(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %ESI,0x4c(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %EDX,%R15D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 444f4b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x60b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %EDX,%EBX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
LEA 0x2(%RCX),%R14D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
SUB %R15D,%EBX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
CMP %R14D,%ESI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JGE 444f4b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x60b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %RDI,%R13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV %R14D,%EDI | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
SUB %ESI,%EDI | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %EDI,0x54(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CALL 4046c0 <omp_get_num_threads@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
MOV %EAX,%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CALL 4045b0 <omp_get_thread_num@plt> | 2 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 0 | 1 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV %EAX,%R8D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV 0x54(%RSP),%EAX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
IMUL %EBX,%EAX | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
DIV %R12D | 4 | 0 | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 11-16 | 6 |
MOV %EAX,%R12D | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
CMP %EDX,%R8D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JB 444f6b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x62b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
IMUL %R12D,%R8D | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
LEA (%R8,%RDX,1),%R9D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
LEA (%R12,%R9,1),%R10D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1-2 | 0.20 |
MOV %R10D,0x48(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
CMP %R10D,%R9D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
JAE 444f4b <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x60b> | 1 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0 | 0 | 0.50 |
MOV %R9D,%EAX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
MOV 0x4c(%RSP),%R11D | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x8(%R13),%RSI | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
DIVL 0x54(%RSP) | 5 | 0 | 3 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 11-16 | 6 |
MOV 0x18(%R13),%RBX | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x811e(%RIP),%XMM7 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x812e(%RIP),%XMM6 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
VMOVSD 0x812e(%RIP),%XMM5 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %RSI,0x38(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %RBX,0x28(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
VBROADCASTSD %XMM7,%YMM10 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM6,%YMM9 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM5,%YMM8 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM7,%ZMM4 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM6,%ZMM3 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
VBROADCASTSD %XMM5,%ZMM2 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 3 | 1 |
ADD %EDX,%R11D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
ADD %R15D,%EAX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOV %R14D,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0.17 |
MOV (%R13),%R15 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV 0x10(%R13),%R14 | 1 | 0 | 0 | 0.33 | 0.33 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.33 | 1 | 0.33 |
MOV %R11D,0x7c(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
SUB %R11D,%EDX | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
MOVSXD %EAX,%RBX | 1 | 0 | 0.33 | 0 | 0 | 0 | 0.33 | 0 | 0 | 0 | 0 | 0.33 | 0 | 1 | 0.33 |
MOV %R15,0x40(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
MOV %R14,0x30(%RSP) | 1 | 0 | 0 | 0 | 0 | 0.50 | 0 | 0 | 0.50 | 0.50 | 0.50 | 0 | 0 | 1 | 0.50 |
NOPL (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
NOPL (%RAX) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
VZEROUPPER | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
LEA -0x28(%RBP),%RSP | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 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 |
RET | 1 | 0.50 | 0 | 0.33 | 0.33 | 0 | 0 | 0.50 | 0 | 0 | 0 | 0 | 0.33 | 0 | 2.13 |
NOPW (%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
INC %R12D | 1 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0.20 | 0 | 0 | 0 | 0.20 | 0 | 1 | 0.20 |
XOR %EDX,%EDX | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
JMP 4449c2 <_Z16ideal_gas_kerneliiiiRN6clover8Buffer2DIdEES2_S2_S2_._omp_fn.0+0x82> | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 2.08 |
NOPW %CS:(%RAX,%RAX,1) | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.17 |
Name | Coverage (%) | Time (s) |
---|---|---|
▼ideal_gas_kernel(int, int, int, int, clover::Buffer2D | 4.03 | 1.29 |
▼Loop 461 - ideal_gas.cpp:40-45 - exec– | 0.01 | 0 |
○Loop 462 - ideal_gas.cpp:40-45 - exec | 4.03 | 1.28 |