aboutsummaryrefslogtreecommitdiff
path: root/zkvms_host_io
Commit message (Collapse)AuthorAgeFilesLines
* fix(zkvms_host_io): Remove millis flagKamen Mladenov2025-05-051-6/+0
| | | | | The usages of this flag were removed when we introduced our JSON metrics format.
* feat(zkvms_host_io): Rename argument and metrics output "repeats" to "runs"Kamen Mladenov2025-05-052-4/+4
|
* chore: cargo fmtKamen Mladenov2025-05-022-13/+34
|
* feat(zkvms_guest_io): Output proof sizeKamen Mladenov2025-05-021-0/+9
| | | | | | | In each zkVM we'll write the size to /tmp/proof_size and then guest_io will read that value and place it inside our metrics output. This is not the most elegant, and in certain zkVMs the file output is a part of the benchmark timing, but it will have to do.
* fix(zkvms io): More detailed errors on metrics output failureKamen Mladenov2025-05-021-2/+2
|
* fix(zkvms_host_io): Truncate output file in emit_benchmark_results when ↵Kamen Mladenov2025-05-021-0/+1
| | | | | | | | | | | | appropriate If we're not appending to a file with contents, then when we write our data, we're going to be overwriting the old data. If the old data is longer than the new one, we'll have some leftover text in the end, which will cause a problem with JSON parsing. We'll be truncating the file (i.e. emptying it out), but only when not appending to it.
* feat(zkvms_host_io): Implement new output format for zkvm/guestKamen Mladenov2025-05-022-52/+61
|
* feat(zkvms_host_io): Add json dependencyKamen Mladenov2025-05-022-0/+2
|
* feat(zkvms_host_io): Move metrics output from the benchmarkable macro to ↵Kamen Mladenov2025-05-022-58/+69
| | | | zkvsm_host_io lib
* fix(zkvms_host_io/input_macros): Add comma on public_types countKamen Mladenov2025-04-231-1/+1
| | | | | | The `sep` variable is used below, in `output_type`, where the public types are laid out. Before, we checked the count of all types, including private ones, which caused a crash when we have no private inputs.
* feat(zkvms_host_io): Update to use FunctionDefinitionKamen Mladenov2025-04-071-77/+36
|
* feat(zkvms_host_io): Add the "Return" type, which only contains the function ↵Kamen Mladenov2025-04-041-1/+5
| | | | | | | | | | | | | | return type Currently we create an "Output" type, which contains a tuple with all public inputs and the function return type. In most zkVMs, public and private inputs are not distinguished from the start, public inputs are returned by the guest program and private are not. Thus, most of the time we need a more complicated return type. However, sometimes this is not the case, and the public/private distinction is done upfront (and we don't need to output inputs). So we need to add the appropriate type.
* fix(metrics): Do not remove leading zerosAristotelis Papanis2025-03-131-2/+2
| | | | | | | With the commit for improving the metrics output we introduced a bug for the milliseconds where we would lose information about leading zeros. This has been now fixed.
* chore(metrics): Change output format of metricsAristotelis Papanis2025-03-131-17/+44
| | | | | | | | | | | | | | | | We have improved the format of the benchmarking output. Now the metrics follow a more standard CSV style. Example: ``` name,guest,total duration,repeats,average jolt,fibonacci,1.33,2,0.516 nexus,fibonacci,177.388,2,88.694 risc0,fibonacci,3.828,2,1.914 sp1,fibonacci,13.330,2,6.665 zkm,fibonacci,279.394,2,139.697 zkwasm,fibonacci,106.161,2,53.80 ```
* chore: Rust fmtKamen Mladenov2025-02-272-43/+71
|
* fix(zkvms_host_io): Reduce version constraint for clapKamen Mladenov2025-02-261-1/+1
| | | | | | Certain zkVMs may use clap with versions lower than 4.5 (e.g. 4.5.9). Here we do not really care about the version, so this change will fix compatibility issues.
* fix(zkvms_host_io): Rename short metrics output flag to 'o'Kamen Mladenov2025-02-111-1/+1
|
* feat(zkvms_host_io): Output guest name when benchmarkingKamen Mladenov2025-02-111-1/+1
|
* feat(zkvms_host_io): Remove version flagKamen Mladenov2025-02-101-1/+1
|
* docs(zkvms_host_io): Improve help messageKamen Mladenov2025-02-101-3/+8
|
* docs(zkvms_host_io): Add detailed documentation commentsKamen Mladenov2025-02-102-1/+85
|
* feat(zkvms_host_io): Allow appending to metric_output fileKamen Mladenov2025-02-102-2/+12
|
* feat(zkvms_host_io): Metrics output now contains the name of the zkvmKamen Mladenov2025-02-101-1/+1
|
* feat(zkvms_host_io): More standard CSV metrics output format and ↵Kamen Mladenov2025-02-102-21/+23
| | | | milliseconds flag
* feat(zkvms_host_io): Create "benchmarkable" macro and add benchmarking flagsKamen Mladenov2025-02-072-1/+73
|
* feat(zkvms/zkwasm): Support all std containers as input typesKamen Mladenov2025-02-061-1/+1
|
* feat(zkvms_host_io): Implement foreach_private_input_field and ↵Kamen Mladenov2025-02-032-7/+37
| | | | foreach_public_input_field macros
* feat(guests_macro/parse_fn): Make _public functions also return private valuesKamen Mladenov2025-02-031-5/+5
|
* feat(zkvms_host_io): Add public_inputs and private_inputs attributes to RunWithKamen Mladenov2025-02-032-5/+27
|
* fix(zkvms_host_io): Remove useless template parameter to RunWithKamen Mladenov2025-02-032-6/+6
|
* feat: Move some public input parsing logic to parse_fnKamen Mladenov2025-02-031-12/+7
|
* feat(zkvms_host_io): Make Output type contain public inputsKamen Mladenov2025-02-032-1/+19
|
* feat(zkvms_host_io): Add argument for private inputKamen Mladenov2025-02-031-2/+10
|
* feat: Add output type to zkvms_host_io macroKamen Mladenov2025-01-312-7/+13
|
* feat(zkvms_host_io): Implement convinence environment variable methodsKamen Mladenov2025-01-311-1/+18
|
* feat(zkvms_host_io): Add default_env RunWith attributeKamen Mladenov2025-01-312-4/+11
|
* feat: Pass guest entrypoint type to hostKamen Mladenov2025-01-301-2/+1
|
* feat(zkwasm): Remove workspace and use withGeneratedLockfileKamen Mladenov2025-01-291-260/+0
|
* feat(zkvms_host_io): Implement using a guest's default inputKamen Mladenov2025-01-281-3/+10
|
* feat(zkvms_host_io/input_macros): Implement forach_input_field macroKamen Mladenov2025-01-281-0/+13
|
* feat(zkvms_host_io): Generate input type from string and read input data ↵Kamen Mladenov2025-01-284-5/+56
| | | | from TOML file
* feat(zkvms): Export io logic to it's own crateKamen Mladenov2025-01-143-0/+303