GitHub user dlaboss opened a pull request:

    https://github.com/apache/incubator-quarks/pull/110

    add load balanced parallel()

    - Add PlumbingStreams.parallelBalanced()
    - Add LoadBalancedSplitter ToIntFunction
    - Add testParallelBalanced()
    
    Note: there's an oplet based implementation approach to a 
LoadBalancedSplitter that doesn't require "done" signaling nor separate ch 
"isolate()" use - one that has an internal thread pool pulling from single 
tuple queue.  Utilizing such a 1:n (~fanout) oplet would require adding 
something like ``TStream.split(Split)`` or perhaps 
``TStream.addOp1N(oplet-with-one-input-and-N-output)``.
    
    I'm sure there's a similar *functional* LoadBalancedSplitter possible and 
maybe I'll give that a little thought shortly.  Though, at this moment there's 
no way for Functions to get their hands on the Provider's thread pool nor 
receive explicit initialization.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/dlaboss/incubator-quarks parallelBalanced

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-quarks/pull/110.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 #110
    
----
commit 221af1de7922775a9093730e5430c0ea56f8f4ae
Author: Dale LaBossiere <[email protected]>
Date:   2016-05-09T14:37:08Z

    Add load balanced parallel()

commit e901539a694bb4ecaee6073587127edc88d70f6e
Author: Dale LaBossiere <[email protected]>
Date:   2016-05-09T15:15:00Z

    add testParallelBalanced

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to