mirror of
https://github.com/RRZE-HPC/OSACA.git
synced 2026-01-06 19:20:07 +01:00
changed zen port model from combined LD/ST to separate ones
This commit is contained in:
580
tests/test_files/hidden_load_machine_model.yml
Normal file
580
tests/test_files/hidden_load_machine_model.yml
Normal file
@@ -0,0 +1,580 @@
|
||||
osaca_version: 0.3.0
|
||||
micro_architecture: "AMD Zen (family 17h)"
|
||||
arch_code: "ZEN1"
|
||||
isa: "x86"
|
||||
hidden_loads: true
|
||||
ports: ["0", "1", "2", "3", "3DV", "4", "5", "6", "7", "8", "8D", "9", "9D"]
|
||||
port_model_scheme: |
|
||||
┌--------------------------------------┐ ┌-----------------------------------------------┐
|
||||
| 96 entries OoO scheduler | | 84 entries OoO scheduler |
|
||||
└--------------------------------------┘ └-----------------------------------------------┘
|
||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|
||||
▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼ ▼
|
||||
┌-------┐ ┌-------┐ ┌-------┐ ┌-------┐ ┌------┐ ┌-----┐ ┌-----┐ ┌------┐ ┌-----┐ ┌-----┐
|
||||
|SSE ALU| |SSE ALU| |SSE ALU| |SSE ALU| | ALU | | ALU | | ALU | | ALU | | AGU | | AGU |
|
||||
└-------┘ └-------┘ └-------┘ └-------┘ └------┘ └-----┘ └-----┘ └------┘ └-----┘ └-----┘
|
||||
┌-------┐ ┌-------┐ ┌-------┐ ┌-------┐ ┌------┐ ┌-----┐ ┌-----┐ ┌------┐ | |
|
||||
|SSE MUL| |SSE MUL| |SSE ADD| |SSE ADD| |BRANCH| | MUL | | MUL | |BRANCH| ▼ ▼
|
||||
└-------┘ └-------┘ └-------┘ └-------┘ └------┘ └-----┘ └-----┘ └------┘ ┌-------------┐
|
||||
┌-------┐ ┌-------┐ ┌-------┐ ┌-------┐ | LOAD |
|
||||
|SSE FMA| |SSE FMA| | SSE | |SSE DIV| └-------------┘
|
||||
└-------┘ └-------┘ | SHUF | └-------┘ ┌-------------┐
|
||||
┌-------┐ └-------┘ | LOAD |
|
||||
| SSE | └-------------┘
|
||||
| SHUF | ┌-------------┐
|
||||
└-------┘ | STORE |
|
||||
└-------------┘
|
||||
instruction_forms:
|
||||
- name: add
|
||||
operands:
|
||||
- class: "immediate"
|
||||
imd: "int"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: 1.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: add
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: 1 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: addl
|
||||
operands:
|
||||
- class: "immediate"
|
||||
imd: "int"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: 1.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: addq
|
||||
operands:
|
||||
- class: "immediate"
|
||||
imd: "int"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: 1.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: cmpl
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: cmpq
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: cmpq
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: ~
|
||||
scale: 1
|
||||
throughput: 0.25
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: ja
|
||||
operands:
|
||||
- class: 'identifier'
|
||||
throughput: 0.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: jne
|
||||
operands:
|
||||
- class: 'identifier'
|
||||
throughput: 0.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: movl
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: ~
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.5
|
||||
latency: 3.0
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.5, 0.5, 0.5]
|
||||
- name: mulsd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 4.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: mulss
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: rcpss
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: ~ #1.0
|
||||
latency: 5.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: sqrtsd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: ~ #8.0
|
||||
latency: 23.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: sqrtss
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: ~ #5.0
|
||||
latency: 17.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: subq
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: 1.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: subq
|
||||
operands:
|
||||
- class: "immediate"
|
||||
imd: "int"
|
||||
- class: "register"
|
||||
name: "gpr"
|
||||
throughput: 0.25
|
||||
latency: 1.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.25, 0.25, 0.25, 0.25, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vaddpd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vaddpd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vaddpd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vaddsd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vaddss
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vdivsd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 4.0
|
||||
latency: 13.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 1.0, 4.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vdivss
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 3.0
|
||||
latency: 10.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 1.0, 3.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vfmadd213pd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vfmadd213pd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vfmadd231pd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vfmadd231pd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vfmadd132pd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vfmadd132pd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: ~ # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vmulsd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 4.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vmulss
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vmulpd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 8.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.5, 0.5, 0.5]
|
||||
- name: vmulpd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 8.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.5, 0.5, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.5, 0.5, 0.5]
|
||||
- name: vmulpd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: 4.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]
|
||||
- name: vmulpd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: 9.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vmulpd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: 9.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vmovapd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
throughput: 0.5
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 0.5, 0.5, 0.5]
|
||||
- name: vmovapd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
throughput: 1.0
|
||||
latency: 4.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 1.0, 0.5, 1.0]
|
||||
- name: vmovapd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: 5.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vmovapd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 1.0
|
||||
latency: 5.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0]
|
||||
- name: vmovapd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
throughput: 2.0
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 1.0, 2.0]
|
||||
- name: vmovapd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
throughput: 2.0
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 1.0, 2.0]
|
||||
- name: vmovaps
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
throughput: 1.0
|
||||
latency: 4.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 1.0, 0.5, 1.0]
|
||||
- name: vmovaps
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "xmm"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
throughput: 1.0
|
||||
latency: 4.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.5, 1.0, 0.5, 1.0]
|
||||
- name: vmovupd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
throughput: 2.0
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 1.0, 2.0]
|
||||
- name: vmovupd
|
||||
operands:
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
throughput: 2.0
|
||||
latency: 3.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 1.0, 2.0]
|
||||
- name: vmovupd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: ~
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 2.0
|
||||
latency: 5.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 1.0, 2.0]
|
||||
- name: vmovupd
|
||||
operands:
|
||||
- class: "memory"
|
||||
base: "gpr"
|
||||
offset: "imd"
|
||||
index: "gpr"
|
||||
scale: 1
|
||||
- class: "register"
|
||||
name: "ymm"
|
||||
throughput: 2.0
|
||||
latency: 5.0 # 0 1 2 3 3DV 4 5 6 7 8 8D 9 9D
|
||||
port_pressure: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, 2.0, 1.0, 2.0]
|
||||
Reference in New Issue
Block a user