Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
100 changes: 50 additions & 50 deletions zerocopy/benches/extend_vec_zeroed.x86-64.mca
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
Iterations: 100
Instructions: 5400
Total Cycles: 6595
Total Cycles: 3940
Total uOps: 6800

Dispatch Width: 4
uOps Per Cycle: 1.03
IPC: 0.82
uOps Per Cycle: 1.73
IPC: 1.37
Block RThroughput: 17.0


Expand Down Expand Up @@ -87,61 +87,61 @@ Resources:

Resource pressure per iteration:
[0] [1] [2] [3] [4] [5] [6.0] [6.1]
- - 12.00 12.00 10.00 13.00 11.00 11.00
- - 12.05 11.99 10.00 12.96 11.00 11.00

Resource pressure by instruction:
[0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
- - - - 1.00 - 0.49 0.51 push r15
- - - - 1.00 - 0.51 0.49 push r14
- - - - 1.00 - 0.50 0.50 push r13
- - - - 1.00 - 0.50 0.50 push r12
- - - - 1.00 - 0.50 0.50 push rbx
- - 0.01 0.99 - - - - sub rsp, 32
- - - - - 1.00 - - mov rbx, rdi
- - - - - - 0.50 0.50 mov rax, qword ptr [rdi]
- - - - - - 0.50 0.50 mov r12, qword ptr [rdi + 16]
- - - 1.00 - - - - mov rcx, rax
- - - 0.99 - 0.01 - - sub rcx, r12
- - - - - 1.00 - - cmp rsi, rcx
- - - - 1.00 - 0.34 0.66 push r15
- - - - 1.00 - 0.09 0.91 push r14
- - - - 1.00 - 0.92 0.08 push r13
- - - - 1.00 - 0.07 0.93 push r12
- - - - 1.00 - 0.94 0.06 push rbx
- - 0.92 0.05 - 0.03 - - sub rsp, 32
- - 0.03 0.35 - 0.62 - - mov rbx, rdi
- - - - - - 0.06 0.94 mov rax, qword ptr [rdi]
- - - - - - 0.93 0.07 mov r12, qword ptr [rdi + 16]
- - 0.06 0.92 - 0.02 - - mov rcx, rax
- - 0.07 0.03 - 0.90 - - sub rcx, r12
- - 0.05 0.03 - 0.92 - - cmp rsi, rcx
- - - - - 1.00 - - jbe .LBB6_3
- - 0.01 0.98 - 0.01 - - mov r15, r12
- - 0.99 0.01 - - - - add r15, rsi
- - 0.93 0.03 - 0.04 - - mov r15, r12
- - 0.03 0.91 - 0.06 - - add r15, rsi
- - - - - 1.00 - - jae .LBB6_6
- - - - - - - - xor eax, eax
- - - - - 1.00 - - jmp .LBB6_5
- - - - - - 0.50 0.50 mov rax, qword ptr [rbx + 8]
- - 1.00 - - - - - lea r15, [r12 + rsi]
- - 0.98 0.02 - - - - lea rcx, [r12 + 2*r12]
- - 0.99 0.01 - - - - lea rdi, [rax + 2*rcx]
- - - 1.00 - - - - add rsi, rsi
- - 0.99 0.01 - - - - lea rdx, [rsi + 2*rsi]
- - - - - - 0.64 0.36 mov rax, qword ptr [rbx + 8]
- - 0.93 0.07 - - - - lea r15, [r12 + rsi]
- - 0.06 0.94 - - - - lea rcx, [r12 + 2*r12]
- - 0.11 0.89 - - - - lea rdi, [rax + 2*rcx]
- - 0.92 0.06 - 0.02 - - add rsi, rsi
- - 0.89 0.11 - - - - lea rdx, [rsi + 2*rsi]
- - - - - - - - xor esi, esi
- - - - 1.00 1.00 1.00 1.00 call qword ptr [rip + memset@GOTPCREL]
- - - - 1.00 - 0.50 0.50 mov qword ptr [rbx + 16], r15
- - 0.01 0.99 - - - - mov al, 1
- - 1.00 - - - - - add rsp, 32
- - - - - - 0.50 0.50 pop rbx
- - - - - - 0.50 0.50 pop r12
- - - - - - 0.50 0.50 pop r13
- - - - - - 0.50 0.50 pop r14
- - - - - - 0.50 0.50 pop r15
- - - - 1.00 1.00 0.12 1.88 call qword ptr [rip + memset@GOTPCREL]
- - - - 1.00 - 0.94 0.06 mov qword ptr [rbx + 16], r15
- - 0.03 0.94 - 0.03 - - mov al, 1
- - 0.90 0.08 - 0.02 - - add rsp, 32
- - - - - - 0.09 0.91 pop rbx
- - - - - - 0.90 0.10 pop r12
- - - - - - 0.95 0.05 pop r13
- - - - - - 0.93 0.07 pop r14
- - - - - - 0.06 0.94 pop r15
- - - - - 1.00 - - ret
- - 1.00 - - - - - mov r13, rsi
- - 0.01 0.99 - - - - lea rcx, [rax + rax]
- - 0.99 0.01 - - - - cmp r15, rcx
- - 2.00 0.01 - 0.99 - - cmova rcx, r15
- - 0.01 0.99 - - - - cmp rcx, 5
- - 0.01 0.99 - - - - mov r14d, 4
- - 1.00 0.01 - 0.99 - - cmovae r14, rcx
- - - - - - 0.50 0.50 mov rdx, qword ptr [rbx + 8]
- - 0.01 0.99 - - - - lea rdi, [rsp + 8]
- - - 1.00 - - - - mov rsi, rax
- - - 0.01 - 0.99 - - mov rcx, r14
- - - - 1.00 1.00 0.50 0.50 call <alloc::raw_vec::RawVecInner>::finish_grow
- - - 0.99 - 0.01 0.50 0.50 cmp dword ptr [rsp + 8], 1
- - 0.91 0.09 - - - - mov r13, rsi
- - 0.11 0.89 - - - - lea rcx, [rax + rax]
- - 0.92 0.07 - 0.01 - - cmp r15, rcx
- - 0.22 0.95 - 1.83 - - cmova rcx, r15
- - 0.33 0.65 - 0.02 - - cmp rcx, 5
- - 0.93 0.07 - - - - mov r14d, 4
- - 0.70 0.97 - 0.33 - - cmovae r14, rcx
- - - - - - 0.03 0.97 mov rdx, qword ptr [rbx + 8]
- - 0.08 0.92 - - - - lea rdi, [rsp + 8]
- - 0.89 0.03 - 0.08 - - mov rsi, rax
- - 0.34 0.63 - 0.03 - - mov rcx, r14
- - - - 1.00 1.00 0.06 0.94 call <alloc::raw_vec::RawVecInner>::finish_grow
- - 0.03 0.97 - - 0.96 0.04 cmp dword ptr [rsp + 8], 1
- - - - - 1.00 - - je .LBB6_2
- - - - - - 0.50 0.50 mov rax, qword ptr [rsp + 16]
- - - - 1.00 - 0.49 0.51 mov qword ptr [rbx + 8], rax
- - - - 1.00 - 0.51 0.49 mov qword ptr [rbx], r14
- - 0.99 0.01 - - - - mov rsi, r13
- - - - - - 0.95 0.05 mov rax, qword ptr [rsp + 16]
- - - - 1.00 - 0.07 0.93 mov qword ptr [rbx + 8], rax
- - - - 1.00 - 0.95 0.05 mov qword ptr [rbx], r14
- - 0.66 0.34 - - - - mov rsi, r13
- - - - - 1.00 - - jmp .LBB6_4
132 changes: 66 additions & 66 deletions zerocopy/benches/insert_vec_zeroed.x86-64.mca
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
Iterations: 100
Instructions: 7200
Total Cycles: 7648
Total Cycles: 5459
Total uOps: 9300

Dispatch Width: 4
uOps Per Cycle: 1.22
IPC: 0.94
uOps Per Cycle: 1.70
IPC: 1.32
Block RThroughput: 23.3


Expand Down Expand Up @@ -105,79 +105,79 @@ Resources:

Resource pressure per iteration:
[0] [1] [2] [3] [4] [5] [6.0] [6.1]
- - 17.02 16.50 13.00 19.48 14.00 14.00
- - 17.46 17.03 13.00 18.51 13.99 14.01

Resource pressure by instruction:
[0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
- - - - 1.00 - 0.98 0.02 push rbp
- - - - 1.00 - 0.02 0.98 push r15
- - - - 1.00 - 0.99 0.01 push r14
- - - - 1.00 - 0.01 0.99 push r13
- - - - 1.00 - 0.99 0.01 push r12
- - - - 1.00 - 0.01 0.99 push rbx
- - 0.49 0.51 - - - - sub rsp, 24
- - - - - - 0.04 0.96 mov r12, qword ptr [rdi + 16]
- - 0.49 0.50 - 0.01 - - mov r13, r12
- - 0.48 0.51 - 0.01 - - sub r13, rsi
- - - - 1.00 - 0.52 0.48 push rbp
- - - - 1.00 - 0.50 0.50 push r15
- - - - 1.00 - 0.50 0.50 push r14
- - - - 1.00 - 0.50 0.50 push r13
- - - - 1.00 - 0.52 0.48 push r12
- - - - 1.00 - 0.49 0.51 push rbx
- - 0.90 0.08 - 0.02 - - sub rsp, 24
- - - - - - 0.48 0.52 mov r12, qword ptr [rdi + 16]
- - 0.89 0.08 - 0.03 - - mov r13, r12
- - 0.05 0.48 - 0.47 - - sub r13, rsi
- - - - - 1.00 - - jb .LBB6_10
- - 0.49 0.49 - 0.02 - - mov rbx, rdi
- - - - - - 0.97 0.03 mov rax, qword ptr [rdi]
- - 0.51 0.49 - - - - mov rcx, rax
- - 0.49 0.02 - 0.49 - - sub rcx, r12
- - 0.49 0.50 - 0.01 - - cmp rdx, rcx
- - 0.06 0.91 - 0.03 - - mov rbx, rdi
- - - - - - 0.49 0.51 mov rax, qword ptr [rdi]
- - 0.48 0.47 - 0.05 - - mov rcx, rax
- - 0.45 0.55 - - - - sub rcx, r12
- - 0.45 0.50 - 0.05 - - cmp rdx, rcx
- - - - - 1.00 - - jbe .LBB6_4
- - 0.02 0.49 - 0.49 - - add r12, rdx
- - 0.10 0.44 - 0.46 - - add r12, rdx
- - - - - 1.00 - - jae .LBB6_7
- - - - - - - - xor eax, eax
- - - - - 1.00 - - jmp .LBB6_6
- - - - - - 0.97 0.03 mov rax, qword ptr [rbx + 8]
- - 0.51 0.49 - - - - add r12, rdx
- - 0.49 0.51 - - - - lea rcx, [rsi + 2*rsi]
- - - - - - 0.51 0.49 mov rax, qword ptr [rbx + 8]
- - 0.53 0.47 - - - - add r12, rdx
- - 0.92 0.08 - - - - lea rcx, [rsi + 2*rsi]
- - 0.50 0.50 - - - - lea r14, [rax + 2*rcx]
- - 0.51 0.49 - - - - add rdx, rdx
- - 0.50 0.50 - - - - lea r15, [rdx + 2*rdx]
- - 0.49 0.51 - - - - lea rdi, [r14 + r15]
- - 0.50 0.49 - 0.01 - - add r13, r13
- - 0.51 0.49 - - - - lea rdx, [2*r13]
- - 0.01 0.01 - 0.98 - - add rdx, r13
- - 0.01 - - 0.99 - - mov rsi, r14
- - - - 1.00 1.00 1.98 0.02 call qword ptr [rip + memmove@GOTPCREL]
- - 0.49 0.50 - 0.01 - - mov rdi, r14
- - 0.08 0.91 - 0.01 - - add rdx, rdx
- - 0.32 0.68 - - - - lea r15, [rdx + 2*rdx]
- - 0.48 0.52 - - - - lea rdi, [r14 + r15]
- - 0.94 0.05 - 0.01 - - add r13, r13
- - 0.70 0.30 - - - - lea rdx, [2*r13]
- - 0.05 0.48 - 0.47 - - add rdx, r13
- - 0.49 0.24 - 0.27 - - mov rsi, r14
- - - - 1.00 1.00 1.00 1.00 call qword ptr [rip + memmove@GOTPCREL]
- - 0.03 0.27 - 0.70 - - mov rdi, r14
- - - - - - - - xor esi, esi
- - 0.50 0.50 - - - - mov rdx, r15
- - - - 1.00 1.00 1.96 0.04 call qword ptr [rip + memset@GOTPCREL]
- - - - 1.00 - 0.01 0.99 mov qword ptr [rbx + 16], r12
- - 0.50 - - 0.50 - - mov al, 1
- - 0.51 0.49 - - - - add rsp, 24
- - - - - - 0.02 0.98 pop rbx
- - - - - - 0.03 0.97 pop r12
- - - - - - 0.03 0.97 pop r13
- - - - - - 0.97 0.03 pop r14
- - - - - - 0.03 0.97 pop r15
- - - - - - 0.01 0.99 pop rbp
- - 0.47 0.28 - 0.25 - - mov rdx, r15
- - - - 1.00 1.00 1.00 1.00 call qword ptr [rip + memset@GOTPCREL]
- - - - 1.00 - 0.50 0.50 mov qword ptr [rbx + 16], r12
- - 0.53 0.26 - 0.21 - - mov al, 1
- - 0.46 0.53 - 0.01 - - add rsp, 24
- - - - - - 0.52 0.48 pop rbx
- - - - - - 0.48 0.52 pop r12
- - - - - - 0.50 0.50 pop r13
- - - - - - 0.50 0.50 pop r14
- - - - - - 0.50 0.50 pop r15
- - - - - - 0.50 0.50 pop rbp
- - - - - 1.00 - - ret
- - 0.49 0.51 - - - - mov r15, rsi
- - 0.51 0.49 - - - - mov rbp, rdx
- - 0.49 0.51 - - - - lea rcx, [rax + rax]
- - 0.49 0.50 - 0.01 - - cmp r12, rcx
- - 1.04 0.50 - 1.46 - - cmova rcx, r12
- - 0.49 0.49 - 0.02 - - cmp rcx, 5
- - 0.50 - - 0.50 - - mov r14d, 4
- - 0.50 0.51 - 0.99 - - cmovae r14, rcx
- - - - - - 0.97 0.03 mov rdx, qword ptr [rbx + 8]
- - - 0.51 - 0.49 - - mov rdi, rsp
- - 0.01 0.50 - 0.49 - - mov rsi, rax
- - 0.49 0.50 - 0.01 - - mov rcx, r14
- - - - 1.00 1.00 0.99 0.01 call <alloc::raw_vec::RawVecInner>::finish_grow
- - 0.51 0.49 - - 0.50 0.50 cmp dword ptr [rsp], 1
- - 0.07 0.93 - - - - mov r15, rsi
- - 0.93 0.07 - - - - mov rbp, rdx
- - 0.07 0.93 - - - - lea rcx, [rax + rax]
- - 0.69 0.04 - 0.27 - - cmp r12, rcx
- - 1.48 0.74 - 0.78 - - cmova rcx, r12
- - 0.68 0.29 - 0.03 - - cmp rcx, 5
- - 0.24 0.26 - 0.50 - - mov r14d, 4
- - 0.98 0.55 - 0.47 - - cmovae r14, rcx
- - - - - - 0.48 0.52 mov rdx, qword ptr [rbx + 8]
- - 0.27 0.06 - 0.67 - - mov rdi, rsp
- - 0.04 0.68 - 0.28 - - mov rsi, rax
- - 0.52 0.04 - 0.44 - - mov rcx, r14
- - - - 1.00 1.00 0.52 0.48 call <alloc::raw_vec::RawVecInner>::finish_grow
- - 0.06 0.50 - 0.44 0.51 0.49 cmp dword ptr [rsp], 1
- - - - - 1.00 - - je .LBB6_3
- - - - - - 0.50 0.50 mov rax, qword ptr [rsp + 8]
- - - - 1.00 - 0.99 0.01 mov qword ptr [rbx + 8], rax
- - - - 1.00 - 0.01 0.99 mov qword ptr [rbx], r14
- - 0.49 0.50 - 0.01 - - mov rdx, rbp
- - 0.50 0.01 - 0.49 - - mov rsi, r15
- - - - - - 0.49 0.51 mov rax, qword ptr [rsp + 8]
- - - - 1.00 - 0.51 0.49 mov qword ptr [rbx + 8], rax
- - - - 1.00 - 0.49 0.51 mov qword ptr [rbx], r14
- - 0.04 0.93 - 0.03 - - mov rdx, rbp
- - 0.90 0.05 - 0.05 - - mov rsi, r15
- - - - - 1.00 - - jmp .LBB6_5
- - 0.01 0.99 - - - - lea rdi, [rip + .Lanon.HASH.1]
- - 0.99 0.01 - - - - lea rdx, [rip + .Lanon.HASH.3]
- - 0.02 0.49 - 0.49 - - mov esi, 37
- - - - 1.00 1.00 0.02 1.98 call qword ptr [rip + core::panicking::panic@GOTPCREL]
- - 0.30 0.70 - - - - lea rdi, [rip + .Lanon.HASH.1]
- - 0.27 0.73 - - - - lea rdx, [rip + .Lanon.HASH.3]
- - 0.04 0.45 - 0.51 - - mov esi, 37
- - - - 1.00 1.00 0.98 1.02 call qword ptr [rip + core::panicking::panic@GOTPCREL]
20 changes: 10 additions & 10 deletions zerocopy/benches/new_box_zeroed.x86-64.mca
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
Iterations: 100
Instructions: 600
Total Cycles: 1197
Total Cycles: 743
Total uOps: 1100

Dispatch Width: 4
uOps Per Cycle: 0.92
IPC: 0.50
uOps Per Cycle: 1.48
IPC: 0.81
Block RThroughput: 2.8


Expand Down Expand Up @@ -39,13 +39,13 @@ Resources:

Resource pressure per iteration:
[0] [1] [2] [3] [4] [5] [6.0] [6.1]
- - 0.99 1.00 2.00 2.01 2.07 2.93
- - 1.00 1.00 2.00 2.00 2.93 2.07

Resource pressure by instruction:
[0] [1] [2] [3] [4] [5] [6.0] [6.1] Instructions:
- - - - 1.00 - 0.93 0.07 push rax
- - - - 1.00 1.00 0.12 1.88 call qword ptr [rip + __rustc::__rust_no_alloc_shim_is_unstable_v2@GOTPCREL]
- - 0.99 - - 0.01 - - mov edi, 6
- - - 1.00 - - - - mov esi, 2
- - - - - - 0.94 0.06 pop rax
- - - - - 1.00 0.08 0.92 jmp qword ptr [rip + __rustc::__rust_alloc_zeroed@GOTPCREL]
- - - - 1.00 - 0.47 0.53 push rax
- - - - 1.00 1.00 1.86 0.14 call qword ptr [rip + __rustc::__rust_no_alloc_shim_is_unstable_v2@GOTPCREL]
- - - 1.00 - - - - mov edi, 6
- - 1.00 - - - - - mov esi, 2
- - - - - - 0.53 0.47 pop rax
- - - - - 1.00 0.07 0.93 jmp qword ptr [rip + __rustc::__rust_alloc_zeroed@GOTPCREL]
Loading
Loading