WO2017203320A1 - Batch based first in first out ordered inter-thread communication - Google Patents
Batch based first in first out ordered inter-thread communication Download PDFInfo
- Publication number
- WO2017203320A1 WO2017203320A1 PCT/IB2016/052997 IB2016052997W WO2017203320A1 WO 2017203320 A1 WO2017203320 A1 WO 2017203320A1 IB 2016052997 W IB2016052997 W IB 2016052997W WO 2017203320 A1 WO2017203320 A1 WO 2017203320A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- threads
- queue
- consumer
- producer
- out ordered
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Definitions
- Producer threads pass fixed size objects to consumer threads through an unbounded first in first out ordered queue using wait-free non-blocking algorithm for performing insertion and deletion operations on the queue.
- producer threads pass objects to consumer threads in batches of size n where n is a number from the set of positive integers.
- Producer threads generate fixed size objects and insert them into the unbounded first in first out ordered queue(using wait-free non-blocking algorithm) till we reach a queue size of n elements on which the producer thread which inserted the nth element in the queue will generate a token.
- the scheduler in this case only schedules producer threads along with other threads and not consumer threads for current and subsequent rounds of scheduling till the token gets generated on reaching the queue size of n elements, and thereafter the scheduler only schedules consumer threads along with other threads and not producer threads for current and subsequent rounds of scheduling till the generated token gets absorbed by the consumer thread which dequeued the last remaining element in the queue.
- the scheduler here maintains a table of entries consisting of thread identifier as the key and the value consists of the type of thread, i.e. , producer or consumer, along with the pointer to the token if generated or a null reference if token is not generated, for the given set of producer and consumer thread identifiers containing this thread identifier.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
In this invention we have one or more producer threads which communicate with one or more consumer threads with the help of fixed size objects through an unbounded first in first out queue(wait-free non-blocking algorithm is used to perform insertion and deletion operations on the queue) in batches of size n where n is a number from a set of positive integers.
Description
In this invention we have a set of one or more producer threads which produce fixed size objects and a set of one or more consumer threads which consume these objects. Producer threads pass fixed size objects to consumer threads through an unbounded first in first out ordered queue using wait-free non-blocking algorithm for performing insertion and deletion operations on the queue. Here producer threads pass objects to consumer threads in batches of size n where n is a number from the set of positive integers. Producer threads generate fixed size objects and insert them into the unbounded first in first out ordered queue(using wait-free non-blocking algorithm) till we reach a queue size of n elements on which the producer thread which inserted the nth element in the queue will generate a token. The scheduler in this case only schedules producer threads along with other threads and not consumer threads for current and subsequent rounds of scheduling till the token gets generated on reaching the queue size of n elements, and thereafter the scheduler only schedules consumer threads along with other threads and not producer threads for current and subsequent rounds of scheduling till the generated token gets absorbed by the consumer thread which dequeued the last remaining element in the queue.
The scheduler here maintains a table of entries consisting of thread identifier as the key and the value consists of the type of thread, i.e. , producer or consumer, along with the pointer to the token if generated or a null reference if token is not generated, for the given set of producer and consumer thread identifiers containing this thread identifier.
Claims
Following is the claim for this invention :-
1> The novel technique by which we achieve communication between one or more produce threads and one or more consumer threads with the help of fixed size objects through an unbounded first in first out queue (wait-free non-blocking algorithm is used to perform insertion and deletion operations on the queue) in batches of size n where n is a number from a set of positive integers.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2016/052997 WO2017203320A1 (en) | 2016-05-23 | 2016-05-23 | Batch based first in first out ordered inter-thread communication |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2016/052997 WO2017203320A1 (en) | 2016-05-23 | 2016-05-23 | Batch based first in first out ordered inter-thread communication |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2017203320A1 true WO2017203320A1 (en) | 2017-11-30 |
Family
ID=60411170
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2016/052997 WO2017203320A1 (en) | 2016-05-23 | 2016-05-23 | Batch based first in first out ordered inter-thread communication |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2017203320A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10459778B1 (en) | 2018-07-16 | 2019-10-29 | Microsoft Technology Licensing, Llc | Sending messages between threads |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070169123A1 (en) * | 2005-12-30 | 2007-07-19 | Level 3 Communications, Inc. | Lock-Free Dual Queue with Condition Synchronization and Time-Outs |
-
2016
- 2016-05-23 WO PCT/IB2016/052997 patent/WO2017203320A1/en active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070169123A1 (en) * | 2005-12-30 | 2007-07-19 | Level 3 Communications, Inc. | Lock-Free Dual Queue with Condition Synchronization and Time-Outs |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10459778B1 (en) | 2018-07-16 | 2019-10-29 | Microsoft Technology Licensing, Llc | Sending messages between threads |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Festinger | The significance of difference between means without reference to the frequency distribution function | |
MY192408A (en) | Blockchain-based data processing method and equipment | |
CN106570097B (en) | Sequence generation method and device | |
WO2018039152A3 (en) | Thread ownership of keys for hardware-accelerated cryptography | |
CN104268015A (en) | Implementation method of high-availability timer of embedded equipment and timer | |
Gupta et al. | Robust and maxmin optimization under matroid and knapsack uncertainty sets | |
WO2017203320A1 (en) | Batch based first in first out ordered inter-thread communication | |
Ayyapan et al. | M/M/1 retrial queuing system with loss and feedback under pre-emptive priority service | |
Kishor et al. | Time quantum based improved scheduling algorithm | |
US9894012B2 (en) | Method and system to improve network connection locality on multicore systems | |
Chliapnikov et al. | Regularities in multiplicity distributions for e+ e− annihilation into hadrons | |
Pak et al. | FRFC: fast table building algorithm for recursive flow classification | |
CN112988429B (en) | Data processing method and device, electronic equipment and computer readable storage medium | |
Behera | Experimental analysis of new fair-share scheduling algorithm with weighted time slice for real time systems | |
CN108228240B (en) | Method and device for processing tasks in multi-task queue | |
WO2019171129A1 (en) | Collision-free hash map | |
EP2972847A1 (en) | Fast and scalable concurrent queuing system | |
Ghosh et al. | Control-relevant input excitation for system identification of ill-conditioned n× n systems with n> 2 | |
WO2017203319A1 (en) | Weighted job scheduler | |
Semerikov et al. | Microsatellite loci polymorphism of chloroplast DNA of the pine tree (Pinus sylvestris L.) in Asia and Eastern Europe | |
McGuire et al. | Comparisons of improved round robin algorithms | |
Wan et al. | Primary–secondary bicriteria scheduling on identical machines to minimize the total completion time of all jobs and the maximum T-time of all machines | |
Mostafa et al. | Improving Scheduling Criteria of Preemptive Tasks Scheduled under Round Robin Algorithm using Changeable Time Quantum | |
Chan et al. | Graceful labeling for mushroom trees | |
Ahmady et al. | Application of AdS/QCD to B physics |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16903019 Country of ref document: EP Kind code of ref document: A1 |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 16903019 Country of ref document: EP Kind code of ref document: A1 |