From aee37734afc6e1b432113fc7d3719e2775b0d005 Mon Sep 17 00:00:00 2001 From: Matthias Goergens Date: Wed, 15 Jan 2025 00:41:20 +0000 Subject: [PATCH] More data --- plotting/ceno.data | 4 + plotting/sp1.data | 3 + plotting/sp1_ceno_scatter.png | Bin 30180 -> 30242 bytes .../sp1/log | 40 +++++ .../sp1/output_time | 23 +++ .../ceno/hints | Bin 0 -> 32 bytes .../ceno/output_time | 23 +++ .../sp1/log | 110 ++++++++++++++ .../sp1/output_time | 23 +++ .../ceno/hints | Bin 0 -> 32 bytes .../ceno/output_time | 23 +++ .../sp1/log | 140 ++++++++++++++++++ .../sp1/output_time | 23 +++ .../ceno/hints | Bin 0 -> 32 bytes .../ceno/output_time | 23 +++ .../ceno/hints | Bin 0 -> 32 bytes .../ceno/output_time | 0 17 files changed, 435 insertions(+) create mode 100644 sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/hints create mode 100644 sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/output_time create mode 100644 sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/log create mode 100644 sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/output_time create mode 100644 sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/hints create mode 100644 sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/output_time create mode 100644 sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/log create mode 100644 sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/output_time create mode 100644 sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/hints create mode 100644 sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/output_time create mode 100644 sorting-output/45383-2025-01-15T00:00:56,487324761+00:00/ceno/hints create mode 100644 sorting-output/45383-2025-01-15T00:00:56,487324761+00:00/ceno/output_time diff --git a/plotting/ceno.data b/plotting/ceno.data index 2476340..fa2189e 100644 --- a/plotting/ceno.data +++ b/plotting/ceno.data @@ -443,6 +443,7 @@ 15097 ceno 26.79 15252 ceno 26.85 15298 ceno 26.94 +15411 ceno 26.1 15563 ceno 26.18 16253 ceno 28.17 16345 ceno 27.98 @@ -498,6 +499,7 @@ 24012 ceno 35.28 24026 ceno 42.77 24294 ceno 36.44 +24408 ceno 36.26 24475 ceno 36.55 24584 ceno 36.7 24621 ceno 36.69 @@ -548,6 +550,7 @@ 32352 ceno 42.57 32386 ceno 42.42 32746 ceno 43.15 +32842 ceno 43.73 32854 ceno 43.24 32911 ceno 44.4 33524 ceno 43.18 @@ -612,6 +615,7 @@ 44434 ceno 57.65 44620 ceno 57.92 45317 ceno 58.45 +45383 ceno 45909 ceno 59.41 46656 ceno 59.2 46702 ceno 59.51 diff --git a/plotting/sp1.data b/plotting/sp1.data index 1b6c168..002b19c 100644 --- a/plotting/sp1.data +++ b/plotting/sp1.data @@ -443,6 +443,7 @@ 15097 sp1 41.22 15252 sp1 40.86 15298 sp1 40.72 +15411 sp1 40.02 15563 sp1 39.42 16253 sp1 39.73 16345 sp1 42.7 @@ -498,6 +499,7 @@ 24012 sp1 49.39 24026 sp1 49.36 24294 sp1 50.43 +24408 sp1 50.03 24475 sp1 49.39 24584 sp1 49.12 24621 sp1 50.13 @@ -549,6 +551,7 @@ 32352 sp1 60.22 32386 sp1 59.57 32746 sp1 60.56 +32842 sp1 60.39 32854 sp1 61.55 32911 sp1 61.85 33524 sp1 61.85 diff --git a/plotting/sp1_ceno_scatter.png b/plotting/sp1_ceno_scatter.png index 762edb6c56c7210797c07a0e6741d59590951929..f91b779315ed04a57ce8c06f0efc449a77ce4708 100644 GIT binary patch literal 30242 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 diff --git a/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/log b/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/log index 03241ba..8137283 100644 --- a/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/log +++ b/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/log @@ -54,3 +54,43 @@ stdout: WARNING: Using insecure random number generator. 2025-01-14T23:56:40.346655Z  INFO prove_core: Chip SyscallCore: 5 -> 10 2025-01-14T23:56:40.346657Z  INFO prove_core: Chip SyscallInstrs: 5 -> 10 2025-01-14T23:56:40.561666Z  INFO prove_core:generate main traces: close time.busy=215ms time.idle=1.55µs index=0 +2025-01-14T23:57:14.360785Z  INFO prove_core: execution report (totals): total_cycles=4963675, total_syscall_cycles=20, touched_memory_addresses=51532 +2025-01-14T23:57:14.360810Z  INFO prove_core: execution report (opcode counts): +2025-01-14T23:57:14.360818Z  INFO prove_core: 1548771 add +2025-01-14T23:57:14.360822Z  INFO prove_core: 861097 lw +2025-01-14T23:57:14.360824Z  INFO prove_core: 807355 sw +2025-01-14T23:57:14.360825Z  INFO prove_core: 415781 sll +2025-01-14T23:57:14.360827Z  INFO prove_core: 261647 bltu +2025-01-14T23:57:14.360829Z  INFO prove_core: 201477 xor +2025-01-14T23:57:14.360831Z  INFO prove_core: 196837 sltu +2025-01-14T23:57:14.360833Z  INFO prove_core: 191566 srl +2025-01-14T23:57:14.360834Z  INFO prove_core: 188167 or +2025-01-14T23:57:14.360836Z  INFO prove_core: 90639 bne +2025-01-14T23:57:14.360838Z  INFO prove_core: 61552 bgeu +2025-01-14T23:57:14.360840Z  INFO prove_core: 61467 beq +2025-01-14T23:57:14.360841Z  INFO prove_core: 34531 jal +2025-01-14T23:57:14.360843Z  INFO prove_core: 16154 sub +2025-01-14T23:57:14.360845Z  INFO prove_core: 9898 jalr +2025-01-14T23:57:14.360846Z  INFO prove_core: 8470 and +2025-01-14T23:57:14.360848Z  INFO prove_core: 4952 auipc +2025-01-14T23:57:14.360850Z  INFO prove_core: 1990 mul +2025-01-14T23:57:14.360851Z  INFO prove_core: 474 sb +2025-01-14T23:57:14.360853Z  INFO prove_core: 329 lbu +2025-01-14T23:57:14.360855Z  INFO prove_core: 250 mulhu +2025-01-14T23:57:14.360856Z  INFO prove_core: 243 blt +2025-01-14T23:57:14.360858Z  INFO prove_core: 20 ecall +2025-01-14T23:57:14.360860Z  INFO prove_core: 4 lb +2025-01-14T23:57:14.360861Z  INFO prove_core: 3 divu +2025-01-14T23:57:14.360863Z  INFO prove_core: 1 bge +2025-01-14T23:57:14.360866Z  INFO prove_core: execution report (syscall counts): +2025-01-14T23:57:14.360872Z  INFO prove_core: 8 commit +2025-01-14T23:57:14.360874Z  INFO prove_core: 8 commit_deferred_proofs +2025-01-14T23:57:14.360876Z  INFO prove_core: 1 halt +2025-01-14T23:57:14.360878Z  INFO prove_core: 1 write +2025-01-14T23:57:14.360880Z  INFO prove_core: 1 hint_len +2025-01-14T23:57:14.360882Z  INFO prove_core: 1 hint_read +2025-01-14T23:57:14.360891Z  INFO prove_core: summary: cycles=4963675, e2e=35.218161201s, khz=140.94 +2025-01-14T23:57:14.362997Z  INFO prove_core: close time.busy=34.0s time.idle=1.26s +Successfully generated proof! +2025-01-14T23:57:15.076326Z  INFO verify: close time.busy=696ms time.idle=2.10µs +Successfully verified proof! diff --git a/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/output_time b/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/output_time index e69de29..aa19309 100644 --- a/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/output_time +++ b/sorting-output/15411-2025-01-14T23:56:35,000038277+00:00/sp1/output_time @@ -0,0 +1,23 @@ + Command being timed: "cargo run --release -- --n=15411 --prove" + User time (seconds): 1688.26 + System time (seconds): 76.59 + Percent of CPU this job got: 4409% + Elapsed (wall clock) time (h:mm:ss or m:ss): 0:40.02 + Average shared text size (kbytes): 0 + Average unshared data size (kbytes): 0 + Average stack size (kbytes): 0 + Average total size (kbytes): 0 + Maximum resident set size (kbytes): 24377912 + Average resident set size (kbytes): 0 + Major (requiring I/O) page faults: 5 + Minor (reclaiming a frame) page faults: 15450588 + Voluntary context switches: 780983 + Involuntary context switches: 159415 + Swaps: 0 + File system inputs: 0 + File system outputs: 944 + Socket messages sent: 0 + Socket messages received: 0 + Signals delivered: 0 + Page size (bytes): 4096 + Exit status: 0 diff --git a/sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/hints b/sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/hints new file mode 100644 index 0000000000000000000000000000000000000000..98615ae39739fbddb86f80daee171bdb88ba59ee GIT binary patch literal 32 OcmWe(Kn2D&sC)nkQ~-nk literal 0 HcmV?d00001 diff --git a/sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/output_time b/sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/output_time new file mode 100644 index 0000000..e317e6a --- /dev/null +++ b/sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/output_time @@ -0,0 +1,23 @@ + Command being timed: "cargo run --package=ceno_zkvm --bin=e2e --profile=release -- --hints=/home/matthias/scroll/prog/zkVM-benchmarks/sorting-output/15411-2025-01-14T23:57:15,989113808+00:00/ceno/hints /home/matthias/scroll/prog/zkVM-benchmarks/ceno/examples/target/riscv32im-ceno-zkvm-elf/release/examples/sorting" + User time (seconds): 837.65 + System time (seconds): 57.67 + Percent of CPU this job got: 3429% + Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.10 + Average shared text size (kbytes): 0 + Average unshared data size (kbytes): 0 + Average stack size (kbytes): 0 + Average total size (kbytes): 0 + Maximum resident set size (kbytes): 8632324 + Average resident set size (kbytes): 0 + Major (requiring I/O) page faults: 33 + Minor (reclaiming a frame) page faults: 5084993 + Voluntary context switches: 1008281 + Involuntary context switches: 153772 + Swaps: 0 + File system inputs: 0 + File system outputs: 32 + Socket messages sent: 0 + Socket messages received: 0 + Signals delivered: 0 + Page size (bytes): 4096 + Exit status: 0 diff --git a/sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/log b/sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/log new file mode 100644 index 0000000..e98cecd --- /dev/null +++ b/sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/log @@ -0,0 +1,110 @@ +2025-01-14T23:59:29.913738Z  WARN SP1_PROVER environment variable not set, defaulting to 'cpu' +2025-01-14T23:59:30.373150Z  INFO vk verification: true +n: 24408 +2025-01-14T23:59:32.670585Z  INFO prove_core: clk = 0 pc = 0x200d04 +stdout: WARNING: Using insecure random number generator. +2025-01-14T23:59:32.917785Z  INFO prove_core: clk = 0 pc = 0x200d04 +stdout: WARNING: Using insecure random number generator. +2025-01-14T23:59:34.113763Z  INFO prove_core: deferred 1 records +2025-01-14T23:59:34.496893Z  INFO prove_core: Shard Lifted: Index=1, Cluster=210 +2025-01-14T23:59:34.496917Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:59:34.496919Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:59:34.496921Z  INFO prove_core: Chip Bitwise: 19 -> 19 +2025-01-14T23:59:34.496923Z  INFO prove_core: Chip Mul: 2 -> 17 +2025-01-14T23:59:34.496924Z  INFO prove_core: Chip ShiftRight: 18 -> 18 +2025-01-14T23:59:34.496925Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:59:34.496928Z  INFO prove_core: Chip Lt: 17 -> 18 +2025-01-14T23:59:34.496929Z  INFO prove_core: Chip MemoryLocal: 13 -> 18 +2025-01-14T23:59:34.496930Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:59:34.496932Z  INFO prove_core: Chip Auipc: 9 -> 18 +2025-01-14T23:59:34.496933Z  INFO prove_core: Chip Branch: 16 -> 18 +2025-01-14T23:59:34.496934Z  INFO prove_core: Chip Jump: 12 -> 18 +2025-01-14T23:59:34.496935Z  INFO prove_core: Chip Global: 16 -> 17 +2025-01-14T23:59:34.496936Z  INFO prove_core: Chip SyscallCore: 2 -> 10 +2025-01-14T23:59:34.496938Z  INFO prove_core: Chip SyscallInstrs: 2 -> 10 +2025-01-14T23:59:34.497315Z  INFO prove_core: Shard Lifted: Index=2, Cluster=54 +2025-01-14T23:59:34.497319Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:59:34.497320Z  INFO prove_core: Chip DivRem: 2 -> 10 +2025-01-14T23:59:34.497321Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:59:34.497323Z  INFO prove_core: Chip Bitwise: 18 -> 18 +2025-01-14T23:59:34.497324Z  INFO prove_core: Chip Mul: 11 -> 17 +2025-01-14T23:59:34.497325Z  INFO prove_core: Chip ShiftRight: 17 -> 17 +2025-01-14T23:59:34.497326Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:59:34.497327Z  INFO prove_core: Chip Lt: 19 -> 19 +2025-01-14T23:59:34.497328Z  INFO prove_core: Chip MemoryLocal: 14 -> 18 +2025-01-14T23:59:34.497330Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:59:34.497331Z  INFO prove_core: Chip Auipc: 11 -> 18 +2025-01-14T23:59:34.497332Z  INFO prove_core: Chip Branch: 18 -> 18 +2025-01-14T23:59:34.497333Z  INFO prove_core: Chip Jump: 14 -> 18 +2025-01-14T23:59:34.497334Z  INFO prove_core: Chip Global: 17 -> 17 +2025-01-14T23:59:34.497538Z  INFO prove_core: Shard Lifted: Index=3, Cluster=179 +2025-01-14T23:59:34.497542Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:59:34.497543Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:59:34.497545Z  INFO prove_core: Chip Bitwise: 14 -> 17 +2025-01-14T23:59:34.497546Z  INFO prove_core: Chip Mul: 10 -> 17 +2025-01-14T23:59:34.497547Z  INFO prove_core: Chip ShiftRight: 11 -> 17 +2025-01-14T23:59:34.497548Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:59:34.497549Z  INFO prove_core: Chip Lt: 20 -> 20 +2025-01-14T23:59:34.497551Z  INFO prove_core: Chip MemoryLocal: 14 -> 18 +2025-01-14T23:59:34.497552Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:59:34.497553Z  INFO prove_core: Chip Auipc: 12 -> 18 +2025-01-14T23:59:34.497554Z  INFO prove_core: Chip Branch: 19 -> 19 +2025-01-14T23:59:34.497555Z  INFO prove_core: Chip Jump: 15 -> 18 +2025-01-14T23:59:34.497557Z  INFO prove_core: Chip Global: 17 -> 17 +2025-01-14T23:59:34.497732Z  INFO prove_core: Shard Lifted: Index=4, Cluster=180 +2025-01-14T23:59:34.497736Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:59:34.497738Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:59:34.497739Z  INFO prove_core: Chip Bitwise: 15 -> 17 +2025-01-14T23:59:34.497740Z  INFO prove_core: Chip Mul: 10 -> 17 +2025-01-14T23:59:34.497741Z  INFO prove_core: Chip ShiftRight: 12 -> 17 +2025-01-14T23:59:34.497742Z  INFO prove_core: Chip ShiftLeft: 17 -> 17 +2025-01-14T23:59:34.497743Z  INFO prove_core: Chip Lt: 20 -> 20 +2025-01-14T23:59:34.497745Z  INFO prove_core: Chip MemoryLocal: 13 -> 18 +2025-01-14T23:59:34.497746Z  INFO prove_core: Chip MemoryInstrs: 19 -> 19 +2025-01-14T23:59:34.497747Z  INFO prove_core: Chip Auipc: 12 -> 18 +2025-01-14T23:59:34.497748Z  INFO prove_core: Chip Branch: 18 -> 19 +2025-01-14T23:59:34.497749Z  INFO prove_core: Chip Jump: 15 -> 18 +2025-01-14T23:59:34.497751Z  INFO prove_core: Chip Global: 16 -> 17 +2025-01-14T23:59:34.497752Z  INFO prove_core: Chip SyscallCore: 5 -> 10 +2025-01-14T23:59:34.497753Z  INFO prove_core: Chip SyscallInstrs: 5 -> 10 +2025-01-14T23:59:34.787614Z  INFO prove_core:generate main traces: close time.busy=290ms time.idle=1.89µs index=0 +2025-01-15T00:00:17.652957Z  INFO prove_core: execution report (totals): total_cycles=8027270, total_syscall_cycles=20, touched_memory_addresses=69528 +2025-01-15T00:00:17.652977Z  INFO prove_core: execution report (opcode counts): +2025-01-15T00:00:17.652985Z  INFO prove_core: 2526011 add +2025-01-15T00:00:17.652989Z  INFO prove_core: 1388195 lw +2025-01-15T00:00:17.652991Z  INFO prove_core: 1302999 sw +2025-01-15T00:00:17.652993Z  INFO prove_core: 669966 sll +2025-01-15T00:00:17.652995Z  INFO prove_core: 428013 bltu +2025-01-15T00:00:17.652996Z  INFO prove_core: 324217 sltu +2025-01-15T00:00:17.652998Z  INFO prove_core: 318474 xor +2025-01-15T00:00:17.652999Z  INFO prove_core: 301933 srl +2025-01-15T00:00:17.653000Z  INFO prove_core: 297071 or +2025-01-15T00:00:17.653001Z  INFO prove_core: 150347 bne +2025-01-15T00:00:17.653003Z  INFO prove_core: 100130 bgeu +2025-01-15T00:00:17.653004Z  INFO prove_core: 97245 beq +2025-01-15T00:00:17.653005Z  INFO prove_core: 56444 jal +2025-01-15T00:00:17.653007Z  INFO prove_core: 25361 sub +2025-01-15T00:00:17.653008Z  INFO prove_core: 15761 jalr +2025-01-15T00:00:17.653009Z  INFO prove_core: 12648 and +2025-01-15T00:00:17.653011Z  INFO prove_core: 7884 auipc +2025-01-15T00:00:17.653012Z  INFO prove_core: 2924 mul +2025-01-15T00:00:17.653013Z  INFO prove_core: 538 sb +2025-01-15T00:00:17.653014Z  INFO prove_core: 390 lbu +2025-01-15T00:00:17.653016Z  INFO prove_core: 383 blt +2025-01-15T00:00:17.653017Z  INFO prove_core: 308 mulhu +2025-01-15T00:00:17.653018Z  INFO prove_core: 20 ecall +2025-01-15T00:00:17.653020Z  INFO prove_core: 4 lb +2025-01-15T00:00:17.653021Z  INFO prove_core: 3 divu +2025-01-15T00:00:17.653022Z  INFO prove_core: 1 bge +2025-01-15T00:00:17.653025Z  INFO prove_core: execution report (syscall counts): +2025-01-15T00:00:17.653030Z  INFO prove_core: 8 commit +2025-01-15T00:00:17.653032Z  INFO prove_core: 8 commit_deferred_proofs +2025-01-15T00:00:17.653034Z  INFO prove_core: 1 halt +2025-01-15T00:00:17.653035Z  INFO prove_core: 1 write +2025-01-15T00:00:17.653037Z  INFO prove_core: 1 hint_len +2025-01-15T00:00:17.653038Z  INFO prove_core: 1 hint_read +2025-01-15T00:00:17.653045Z  INFO prove_core: summary: cycles=8027270, e2e=44.98311761s, khz=178.45 +2025-01-15T00:00:17.667216Z  INFO prove_core: close time.busy=43.1s time.idle=1.88s +Successfully generated proof! +2025-01-15T00:00:18.567246Z  INFO verify: close time.busy=874ms time.idle=2.95µs +Successfully verified proof! diff --git a/sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/output_time b/sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/output_time new file mode 100644 index 0000000..9bbe560 --- /dev/null +++ b/sorting-output/24408-2025-01-14T23:59:28,538410502+00:00/sp1/output_time @@ -0,0 +1,23 @@ + Command being timed: "cargo run --release -- --n=24408 --prove" + User time (seconds): 2564.24 + System time (seconds): 110.78 + Percent of CPU this job got: 5346% + Elapsed (wall clock) time (h:mm:ss or m:ss): 0:50.03 + Average shared text size (kbytes): 0 + Average unshared data size (kbytes): 0 + Average stack size (kbytes): 0 + Average total size (kbytes): 0 + Maximum resident set size (kbytes): 36149348 + Average resident set size (kbytes): 0 + Major (requiring I/O) page faults: 2 + Minor (reclaiming a frame) page faults: 24931633 + Voluntary context switches: 674897 + Involuntary context switches: 164995 + Swaps: 0 + File system inputs: 0 + File system outputs: 976 + Socket messages sent: 0 + Socket messages received: 0 + Signals delivered: 0 + Page size (bytes): 4096 + Exit status: 0 diff --git a/sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/hints b/sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/hints new file mode 100644 index 0000000000000000000000000000000000000000..5dc30308ebdbc6b5ae9a93415a5c9f39d2d61f71 GIT binary patch literal 32 OcmWe(Km`%;sC)nou>i~f literal 0 HcmV?d00001 diff --git a/sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/output_time b/sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/output_time new file mode 100644 index 0000000..d597df9 --- /dev/null +++ b/sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/output_time @@ -0,0 +1,23 @@ + Command being timed: "cargo run --package=ceno_zkvm --bin=e2e --profile=release -- --hints=/home/matthias/scroll/prog/zkVM-benchmarks/sorting-output/24408-2025-01-15T00:00:19,560223906+00:00/ceno/hints /home/matthias/scroll/prog/zkVM-benchmarks/ceno/examples/target/riscv32im-ceno-zkvm-elf/release/examples/sorting" + User time (seconds): 1241.06 + System time (seconds): 84.37 + Percent of CPU this job got: 3654% + Elapsed (wall clock) time (h:mm:ss or m:ss): 0:36.26 + Average shared text size (kbytes): 0 + Average unshared data size (kbytes): 0 + Average stack size (kbytes): 0 + Average total size (kbytes): 0 + Maximum resident set size (kbytes): 14325116 + Average resident set size (kbytes): 0 + Major (requiring I/O) page faults: 0 + Minor (reclaiming a frame) page faults: 10080290 + Voluntary context switches: 1211277 + Involuntary context switches: 202760 + Swaps: 0 + File system inputs: 0 + File system outputs: 32 + Socket messages sent: 0 + Socket messages received: 0 + Signals delivered: 0 + Page size (bytes): 4096 + Exit status: 0 diff --git a/sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/log b/sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/log new file mode 100644 index 0000000..0cad6cd --- /dev/null +++ b/sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/log @@ -0,0 +1,140 @@ +2025-01-14T23:57:44.125036Z  WARN SP1_PROVER environment variable not set, defaulting to 'cpu' +2025-01-14T23:57:44.578492Z  INFO vk verification: true +n: 32842 +2025-01-14T23:57:46.881384Z  INFO prove_core: clk = 0 pc = 0x200d04 +stdout: WARNING: Using insecure random number generator. +2025-01-14T23:57:47.191569Z  INFO prove_core: clk = 10000000 pc = 0x20271c +2025-01-14T23:57:47.233951Z  INFO prove_core: clk = 0 pc = 0x200d04 +stdout: WARNING: Using insecure random number generator. +2025-01-14T23:57:48.741174Z  INFO prove_core: clk = 10000000 pc = 0x20271c +2025-01-14T23:57:48.891402Z  INFO prove_core: deferred 1 records +2025-01-14T23:57:49.437042Z  INFO prove_core: Shard Lifted: Index=1, Cluster=210 +2025-01-14T23:57:49.437076Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:57:49.437079Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:57:49.437081Z  INFO prove_core: Chip Bitwise: 19 -> 19 +2025-01-14T23:57:49.437082Z  INFO prove_core: Chip Mul: 2 -> 17 +2025-01-14T23:57:49.437084Z  INFO prove_core: Chip ShiftRight: 18 -> 18 +2025-01-14T23:57:49.437085Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:57:49.437088Z  INFO prove_core: Chip Lt: 17 -> 18 +2025-01-14T23:57:49.437089Z  INFO prove_core: Chip MemoryLocal: 13 -> 18 +2025-01-14T23:57:49.437090Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:57:49.437091Z  INFO prove_core: Chip Auipc: 9 -> 18 +2025-01-14T23:57:49.437093Z  INFO prove_core: Chip Branch: 16 -> 18 +2025-01-14T23:57:49.437094Z  INFO prove_core: Chip Jump: 12 -> 18 +2025-01-14T23:57:49.437095Z  INFO prove_core: Chip Global: 16 -> 17 +2025-01-14T23:57:49.437096Z  INFO prove_core: Chip SyscallCore: 2 -> 10 +2025-01-14T23:57:49.437098Z  INFO prove_core: Chip SyscallInstrs: 2 -> 10 +2025-01-14T23:57:49.437268Z  INFO prove_core: Shard Lifted: Index=2, Cluster=210 +2025-01-14T23:57:49.437272Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:57:49.437273Z  INFO prove_core: Chip DivRem: 2 -> 10 +2025-01-14T23:57:49.437274Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:57:49.437276Z  INFO prove_core: Chip Bitwise: 19 -> 19 +2025-01-14T23:57:49.437277Z  INFO prove_core: Chip Mul: 11 -> 17 +2025-01-14T23:57:49.437278Z  INFO prove_core: Chip ShiftRight: 18 -> 18 +2025-01-14T23:57:49.437279Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:57:49.437280Z  INFO prove_core: Chip Lt: 17 -> 18 +2025-01-14T23:57:49.437282Z  INFO prove_core: Chip MemoryLocal: 13 -> 18 +2025-01-14T23:57:49.437283Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:57:49.437284Z  INFO prove_core: Chip Auipc: 9 -> 18 +2025-01-14T23:57:49.437285Z  INFO prove_core: Chip Branch: 16 -> 18 +2025-01-14T23:57:49.437286Z  INFO prove_core: Chip Jump: 12 -> 18 +2025-01-14T23:57:49.437287Z  INFO prove_core: Chip Global: 16 -> 17 +2025-01-14T23:57:49.437597Z  INFO prove_core: Shard Lifted: Index=3, Cluster=179 +2025-01-14T23:57:49.437601Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:57:49.437602Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:57:49.437603Z  INFO prove_core: Chip Bitwise: 14 -> 17 +2025-01-14T23:57:49.437604Z  INFO prove_core: Chip Mul: 10 -> 17 +2025-01-14T23:57:49.437605Z  INFO prove_core: Chip ShiftRight: 11 -> 17 +2025-01-14T23:57:49.437606Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:57:49.437608Z  INFO prove_core: Chip Lt: 20 -> 20 +2025-01-14T23:57:49.437609Z  INFO prove_core: Chip MemoryLocal: 15 -> 18 +2025-01-14T23:57:49.437610Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:57:49.437611Z  INFO prove_core: Chip Auipc: 12 -> 18 +2025-01-14T23:57:49.437612Z  INFO prove_core: Chip Branch: 19 -> 19 +2025-01-14T23:57:49.437613Z  INFO prove_core: Chip Jump: 15 -> 18 +2025-01-14T23:57:49.437615Z  INFO prove_core: Chip Global: 18 -> 18 +2025-01-14T23:57:49.437839Z  INFO prove_core: Shard Lifted: Index=4, Cluster=179 +2025-01-14T23:57:49.437842Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:57:49.437844Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:57:49.437845Z  INFO prove_core: Chip Bitwise: 14 -> 17 +2025-01-14T23:57:49.437846Z  INFO prove_core: Chip Mul: 10 -> 17 +2025-01-14T23:57:49.437847Z  INFO prove_core: Chip ShiftRight: 12 -> 17 +2025-01-14T23:57:49.437848Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:57:49.437849Z  INFO prove_core: Chip Lt: 20 -> 20 +2025-01-14T23:57:49.437851Z  INFO prove_core: Chip MemoryLocal: 14 -> 18 +2025-01-14T23:57:49.437852Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:57:49.437853Z  INFO prove_core: Chip Auipc: 12 -> 18 +2025-01-14T23:57:49.437854Z  INFO prove_core: Chip Branch: 19 -> 19 +2025-01-14T23:57:49.437855Z  INFO prove_core: Chip Jump: 15 -> 18 +2025-01-14T23:57:49.437856Z  INFO prove_core: Chip Global: 17 -> 17 +2025-01-14T23:57:49.438034Z  INFO prove_core: Shard Lifted: Index=5, Cluster=179 +2025-01-14T23:57:49.438038Z  INFO prove_core: Chip Cpu: 21 -> 21 +2025-01-14T23:57:49.438040Z  INFO prove_core: Chip AddSub: 21 -> 21 +2025-01-14T23:57:49.438041Z  INFO prove_core: Chip Bitwise: 14 -> 17 +2025-01-14T23:57:49.438042Z  INFO prove_core: Chip Mul: 10 -> 17 +2025-01-14T23:57:49.438044Z  INFO prove_core: Chip ShiftRight: 12 -> 17 +2025-01-14T23:57:49.438045Z  INFO prove_core: Chip ShiftLeft: 18 -> 18 +2025-01-14T23:57:49.438046Z  INFO prove_core: Chip Lt: 20 -> 20 +2025-01-14T23:57:49.438047Z  INFO prove_core: Chip MemoryLocal: 13 -> 18 +2025-01-14T23:57:49.438048Z  INFO prove_core: Chip MemoryInstrs: 20 -> 20 +2025-01-14T23:57:49.438049Z  INFO prove_core: Chip Auipc: 12 -> 18 +2025-01-14T23:57:49.438051Z  INFO prove_core: Chip Branch: 19 -> 19 +2025-01-14T23:57:49.438052Z  INFO prove_core: Chip Jump: 15 -> 18 +2025-01-14T23:57:49.438053Z  INFO prove_core: Chip Global: 16 -> 17 +2025-01-14T23:57:49.439097Z  INFO prove_core: Shard Lifted: Index=6, Cluster=313 +2025-01-14T23:57:49.439105Z  INFO prove_core: Chip Cpu: 20 -> 20 +2025-01-14T23:57:49.439106Z  INFO prove_core: Chip AddSub: 19 -> 20 +2025-01-14T23:57:49.439107Z  INFO prove_core: Chip Bitwise: 13 -> 16 +2025-01-14T23:57:49.439109Z  INFO prove_core: Chip Mul: 9 -> 16 +2025-01-14T23:57:49.439110Z  INFO prove_core: Chip ShiftRight: 11 -> 16 +2025-01-14T23:57:49.439111Z  INFO prove_core: Chip ShiftLeft: 16 -> 16 +2025-01-14T23:57:49.439112Z  INFO prove_core: Chip Lt: 18 -> 18 +2025-01-14T23:57:49.439113Z  INFO prove_core: Chip MemoryLocal: 11 -> 17 +2025-01-14T23:57:49.439114Z  INFO prove_core: Chip MemoryInstrs: 18 -> 18 +2025-01-14T23:57:49.439116Z  INFO prove_core: Chip Auipc: 10 -> 17 +2025-01-14T23:57:49.439117Z  INFO prove_core: Chip Branch: 17 -> 17 +2025-01-14T23:57:49.439118Z  INFO prove_core: Chip Jump: 14 -> 17 +2025-01-14T23:57:49.439119Z  INFO prove_core: Chip Global: 14 -> 16 +2025-01-14T23:57:49.439120Z  INFO prove_core: Chip SyscallCore: 5 -> 10 +2025-01-14T23:57:49.439121Z  INFO prove_core: Chip SyscallInstrs: 5 -> 10 +2025-01-14T23:57:49.863910Z  INFO prove_core:generate main traces: close time.busy=425ms time.idle=2.11µs index=0 +2025-01-14T23:58:41.824921Z  INFO prove_core: execution report (totals): total_cycles=11019298, total_syscall_cycles=20, touched_memory_addresses=86428 +2025-01-14T23:58:41.824944Z  INFO prove_core: execution report (opcode counts): +2025-01-14T23:58:41.824953Z  INFO prove_core: 3486003 add +2025-01-14T23:58:41.824956Z  INFO prove_core: 1902287 lw +2025-01-14T23:58:41.824958Z  INFO prove_core: 1786905 sw +2025-01-14T23:58:41.824960Z  INFO prove_core: 918718 sll +2025-01-14T23:58:41.824962Z  INFO prove_core: 594651 bltu +2025-01-14T23:58:41.824963Z  INFO prove_core: 453481 sltu +2025-01-14T23:58:41.824965Z  INFO prove_core: 428924 xor +2025-01-14T23:58:41.824966Z  INFO prove_core: 406200 srl +2025-01-14T23:58:41.824967Z  INFO prove_core: 399771 or +2025-01-14T23:58:41.824968Z  INFO prove_core: 207920 bne +2025-01-14T23:58:41.824970Z  INFO prove_core: 138829 bgeu +2025-01-14T23:58:41.824971Z  INFO prove_core: 129688 beq +2025-01-14T23:58:41.824972Z  INFO prove_core: 76653 jal +2025-01-14T23:58:41.824974Z  INFO prove_core: 34223 sub +2025-01-14T23:58:41.824975Z  INFO prove_core: 21520 jalr +2025-01-14T23:58:41.824976Z  INFO prove_core: 16802 and +2025-01-14T23:58:41.824977Z  INFO prove_core: 10764 auipc +2025-01-14T23:58:41.824979Z  INFO prove_core: 3797 mul +2025-01-14T23:58:41.824980Z  INFO prove_core: 847 sb +2025-01-14T23:58:41.824981Z  INFO prove_core: 514 blt +2025-01-14T23:58:41.824982Z  INFO prove_core: 429 lbu +2025-01-14T23:58:41.824984Z  INFO prove_core: 344 mulhu +2025-01-14T23:58:41.824985Z  INFO prove_core: 20 ecall +2025-01-14T23:58:41.824986Z  INFO prove_core: 4 lb +2025-01-14T23:58:41.824988Z  INFO prove_core: 3 divu +2025-01-14T23:58:41.824989Z  INFO prove_core: 1 bge +2025-01-14T23:58:41.824991Z  INFO prove_core: execution report (syscall counts): +2025-01-14T23:58:41.824997Z  INFO prove_core: 8 commit +2025-01-14T23:58:41.824999Z  INFO prove_core: 8 commit_deferred_proofs +2025-01-14T23:58:41.825001Z  INFO prove_core: 1 halt +2025-01-14T23:58:41.825002Z  INFO prove_core: 1 write +2025-01-14T23:58:41.825004Z  INFO prove_core: 1 hint_len +2025-01-14T23:58:41.825005Z  INFO prove_core: 1 hint_read +2025-01-14T23:58:41.825012Z  INFO prove_core: summary: cycles=11019298, e2e=54.944264674s, khz=200.55 +2025-01-14T23:58:41.828058Z  INFO prove_core: close time.busy=52.3s time.idle=2.64s +Successfully generated proof! +2025-01-14T23:58:43.090403Z  INFO verify: close time.busy=1.24s time.idle=1.55µs +Successfully verified proof! diff --git a/sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/output_time b/sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/output_time new file mode 100644 index 0000000..b6db73a --- /dev/null +++ b/sorting-output/32842-2025-01-14T23:57:42,798420219+00:00/sp1/output_time @@ -0,0 +1,23 @@ + Command being timed: "cargo run --release -- --n=32842 --prove" + User time (seconds): 3616.87 + System time (seconds): 110.47 + Percent of CPU this job got: 6171% + Elapsed (wall clock) time (h:mm:ss or m:ss): 1:00.39 + Average shared text size (kbytes): 0 + Average unshared data size (kbytes): 0 + Average stack size (kbytes): 0 + Average total size (kbytes): 0 + Maximum resident set size (kbytes): 55247240 + Average resident set size (kbytes): 0 + Major (requiring I/O) page faults: 3 + Minor (reclaiming a frame) page faults: 31145091 + Voluntary context switches: 829018 + Involuntary context switches: 175912 + Swaps: 0 + File system inputs: 0 + File system outputs: 1008 + Socket messages sent: 0 + Socket messages received: 0 + Signals delivered: 0 + Page size (bytes): 4096 + Exit status: 0 diff --git a/sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/hints b/sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/hints new file mode 100644 index 0000000000000000000000000000000000000000..72e896c22e7f9a1c63427e06e61ed5ef9fa1faf3 GIT binary patch literal 32 OcmWe(Km}e6sC)npzyRL> literal 0 HcmV?d00001 diff --git a/sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/output_time b/sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/output_time new file mode 100644 index 0000000..ac269d1 --- /dev/null +++ b/sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/output_time @@ -0,0 +1,23 @@ + Command being timed: "cargo run --package=ceno_zkvm --bin=e2e --profile=release -- --hints=/home/matthias/scroll/prog/zkVM-benchmarks/sorting-output/32842-2025-01-14T23:58:44,147756918+00:00/ceno/hints /home/matthias/scroll/prog/zkVM-benchmarks/ceno/examples/target/riscv32im-ceno-zkvm-elf/release/examples/sorting" + User time (seconds): 1482.13 + System time (seconds): 109.07 + Percent of CPU this job got: 3638% + Elapsed (wall clock) time (h:mm:ss or m:ss): 0:43.73 + Average shared text size (kbytes): 0 + Average unshared data size (kbytes): 0 + Average stack size (kbytes): 0 + Average total size (kbytes): 0 + Maximum resident set size (kbytes): 19582788 + Average resident set size (kbytes): 0 + Major (requiring I/O) page faults: 0 + Minor (reclaiming a frame) page faults: 14271271 + Voluntary context switches: 1195126 + Involuntary context switches: 206259 + Swaps: 0 + File system inputs: 0 + File system outputs: 32 + Socket messages sent: 0 + Socket messages received: 0 + Signals delivered: 0 + Page size (bytes): 4096 + Exit status: 0 diff --git a/sorting-output/45383-2025-01-15T00:00:56,487324761+00:00/ceno/hints b/sorting-output/45383-2025-01-15T00:00:56,487324761+00:00/ceno/hints new file mode 100644 index 0000000000000000000000000000000000000000..6c4c157af8b5c88b1aa77ade16d237b3188e4d39 GIT binary patch literal 32 OcmWe(Kn3m_QTYH7ZvhPe literal 0 HcmV?d00001 diff --git a/sorting-output/45383-2025-01-15T00:00:56,487324761+00:00/ceno/output_time b/sorting-output/45383-2025-01-15T00:00:56,487324761+00:00/ceno/output_time new file mode 100644 index 0000000..e69de29