[
https://issues.apache.org/jira/browse/BEAM-3189?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16252840#comment-16252840
]
ASF GitHub Bot commented on BEAM-3189:
--------------------------------------
GitHub user angoenka opened a pull request:
https://github.com/apache/beam/pull/4134
[BEAM-3189] Sdk worker multithreading
Follow this checklist to help us incorporate your contribution quickly and
easily:
- [ ] Make sure there is a [JIRA
issue](https://issues.apache.org/jira/projects/BEAM/issues/) filed for the
change (usually before you start working on it). Trivial changes like typos do
not require a JIRA issue. Your pull request should address just this issue,
without pulling in other changes.
- [ ] Each commit in the pull request should have a meaningful subject
line and body.
- [ ] Format the pull request title like `[BEAM-XXX] Fixes bug in
ApproximateQuantiles`, where you replace `BEAM-XXX` with the appropriate JIRA
issue.
- [ ] Write a pull request description that is detailed enough to
understand what the pull request does, how, and why.
- [ ] Run `mvn clean verify` to make sure basic checks pass. A more
thorough check will be performed on your pull request automatically.
- [ ] If this contribution is large, please file an Apache [Individual
Contributor License Agreement](https://www.apache.org/licenses/icla.pdf).
---
Beam Python SDK is couple of magnitude slower than Java SDK when it comes
to stream processing.
In this PR we are going to address the following issue.
Given a single core, currently we are not fully utilizing the core because
the single thread spends a lot of time on the IO. This is more of a limitation
of our implementation rather than a limitation of Python.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/angoenka/beam sdk_worker_multithreading
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/beam/pull/4134.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #4134
----
commit 4339a4a52eddccd567d449c3b390cfa0bcabccce
Author: Ankur Goenka <[email protected]>
Date: 2017-11-07T00:16:44Z
Adding multi threaded function registration test
commit 533b82b45f89edff9262216b1f6252bd3f75f35b
Author: Ankur Goenka <[email protected]>
Date: 2017-11-08T00:03:45Z
Wrapping SDKWoker to associate more state to it.
commit 7719145a4044b323e4b88b87171dbf88bd957c9a
Author: Ankur Goenka <[email protected]>
Date: 2017-11-09T22:02:19Z
Making multiple workers to work in parallel
commit c73fc59d9191f3c337e17710f764f23d9f5c7ba8
Author: Ankur Goenka <[email protected]>
Date: 2017-11-15T01:59:11Z
Adding experimental option for worker_threads
----
> Python Fnapi - Worker speedup
> -----------------------------
>
> Key: BEAM-3189
> URL: https://issues.apache.org/jira/browse/BEAM-3189
> Project: Beam
> Issue Type: Improvement
> Components: sdk-py-harness
> Affects Versions: 2.3.0
> Reporter: Ankur Goenka
> Assignee: Ankur Goenka
> Priority: Minor
> Labels: performance, portability
>
> Beam Python SDK is couple of magnitude slower than Java SDK when it comes to
> stream processing.
> There are two related issues:
> # Given a single core, currently we are not fully utilizing the core because
> the single thread spends a lot of time on the IO. This is more of a
> limitation of our implementation rather than a limitation of Python.
> # Given a machine with multiple cores, single Python process could only
> utilize one core.
> In this task we will only address 1. 2 will be good for future optimization.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)