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

--vec overhead from thread generation #878

Open
philipportner opened this issue Oct 24, 2024 · 1 comment
Open

--vec overhead from thread generation #878

philipportner opened this issue Oct 24, 2024 · 1 comment
Assignees
Labels
performance label for PRs of perf++ and issues of perf--

Comments

@philipportner
Copy link
Collaborator

Currently, when running DAPHNE with the --vec flag, the WorkerCPU constructor creates a new std::thread for every call to the constructor.

Meaning, for every call to a _vectorizedPipeline__* we create new std::threads. For scripts that call have lots of vectorized pipelines, this induces a significant overhead in execution time when running with --vec.

Possible solutions:

@philipportner
Copy link
Collaborator Author

philipportner commented Oct 24, 2024

This is part of the problem that causes a script that runs in ~0.25s without --vec to explode up to ~6.2s with --vec.

@philipportner philipportner added the performance label for PRs of perf++ and issues of perf-- label Oct 24, 2024
@philipportner philipportner self-assigned this Oct 24, 2024
philipportner added a commit that referenced this issue Oct 31, 2024
This patch adds a static llvm::ThreadPool which is to be used by the
MTWrapper for creating WorkerCPU instances.

closes #878
philipportner added a commit that referenced this issue Nov 1, 2024
This patch adds a static llvm::ThreadPool which is to be used by the
MTWrapper for creating WorkerCPU instances.

closes #878
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
performance label for PRs of perf++ and issues of perf--
Projects
None yet
Development

No branches or pull requests

1 participant