Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reorganized VKTree services and implemented startup consumption of sequencer arguments for workers #208

Merged
merged 3 commits into from
Oct 15, 2024

Conversation

rpanic
Copy link
Member

@rpanic rpanic commented Oct 14, 2024

Closes #207

Description in the issue

Enhanced the FlowTaskWorker to accept three different types of tasks:
UnpreparingTask: Tasks that don't implement a prepare() method, therefore they don't have to wait for registration to get initialized - important because we need the CircuitCompilerTask before we have working worker registration
AbstractStartupTask: Tasks that are used for startup of workers: Mainly the WorkerRegistrationTask
Task: All normal tasks that wait for registration to be completed before preparing and registering for tasks

@rpanic rpanic requested review from ejMina226 and maht0rz October 14, 2024 16:57
Copy link
Collaborator

@ejMina226 ejMina226 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

@ejMina226
Copy link
Collaborator

@rpanic From a high-level, how did you get around the issue of the worker processes not having access to the VKTreeService?

@rpanic
Copy link
Member Author

rpanic commented Oct 15, 2024

@ejMina226
Two-fold: The first thing I did was instead of accessing the VKTreeService in the BlockProver, which is executed by a task, I add the VK and the tree witness as a task payload and through that, I use them in the BlockProver as a traditional program arguments / witness.
The second thing is how the blockprover has access to the tree root, which has to be baked into the circuit at compile time. This is done via a extra step that happens when the worker gets started, which is the "worker registration". I outlined that in more detail in the linked issue

@ejMina226 ejMina226 merged commit 813ddb0 into feature/sideloading_runtime Oct 15, 2024
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