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

Hybrid modexp method#2 #33

Draft
wants to merge 3 commits into
base: ipcl_v2.0.0
Choose a base branch
from

Conversation

justalittlenoob
Copy link
Contributor

No description provided.

@skmono
Copy link
Contributor

skmono commented Nov 21, 2022

@justalittlenoob We might need a dedicated thread manager, that is initialized when IPCL library is called, which essentially generates a few "worker" threads - 1 for QATmodExp, a few (or maybe one) for IPPmodExp

Essentially the main thread and the workers will be inactive, with std::condition_variable where:
main thread - when modexp is needed, wake up the workers to standby. Start distributing batches of base/exponent/mod to workers)
workers - receive batch, change status to busy, perform modexp, release and return

What do you think?

@mosesojero
Copy link

Update

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.

3 participants