Skip to content

Conversation

@jonathanlim222
Copy link
Contributor

This PR fixes flat decoding processing and addresses the crashing that was happening when running the turbo benchmarks.

The flat decoding was not processing list data and pair data. The changes in the PR processes the tag types completely so that nesting list and pair structures will be processed accordingly.

This PR also adds threading to the cmd line eval so the stack size can be adjusted. It was crashing when trying to process the unwrapped flat benchmarks because of stack overflow.

KtorZ and others added 9 commits October 16, 2025 18:22
  Those benchmarks are real-world scripts extracted from mainnet, and to
  which the script context has been pre-applied.

  They've been produced by https://github.com/r2rationality/turbocardano.

  This commit adds a preliminary setup to run those benchmarks, and
  measure our performance against real data. Using only data from epoch
  519, 520 and 521, we already run into cases where the VM crashes.

  The reason for the crash could be plural: a bug in the VM
  implementation, or a bug in whomever produced the benchmark. Either
  way though, the VM should not crash but fail gracefully (or succeed,
  should the script actually be valid).

  Also, I have restricted the benchmarks to V3 only, since the semantic
  for V1 and V2 are still to be implemented.

  The goal from here would be to get all those benchmarks to pass; and
  ultimately compare with the Haskell & C++ implementations.
Signed-off-by: Jonathan <[email protected]>
Signed-off-by: Jonathan <[email protected]>
@jonathanlim222 jonathanlim222 requested a review from a team as a code owner November 21, 2025 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants