WO2017203320A1 - Batch based first in first out ordered inter-thread communication - Google Patents

Batch based first in first out ordered inter-thread communication Download PDF

Info

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
Application number
PCT/IB2016/052997
Other languages
French (fr)
Inventor
Pratik Sharma
Original Assignee
Pratik Sharma
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pratik Sharma filed Critical Pratik Sharma
Priority to PCT/IB2016/052997 priority Critical patent/WO2017203320A1/en
Publication of WO2017203320A1 publication Critical patent/WO2017203320A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

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.
PCT/IB2016/052997 2016-05-23 2016-05-23 Batch based first in first out ordered inter-thread communication WO2017203320A1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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