Abstract:
A device comprises a non-transitory memory storage comprising instructions, a network interface, and one or more processors in communication with the memory storage and the network interface. The one or more processors execute the instructions to receive, via the network interface, a write request from a client device; send, via the network interface, the received write request to a set of follower devices; receive, via the network interface, a first acknowledgment from a majority of the follower devices of the set of follower devices that the write request was processed; send, via the network interface, the received write request to a set of peer devices; receive, via the network interface, second acknowledgments from a majority of the set of peer devices that the write request was processed; and send an acknowledgment of the write request to the client device in response to the receipt of the first acknowledgments and the second acknowledgments.
Abstract:
System and method embodiments are provided for creating data structure for parallel programming. A method for creating data structures for parallel programming includes forming, by one or more processors, one or more data structures, each data structure comprising one or more global containers and a plurality of local containers. Each of the global containers is accessible by all of a plurality of threads in a multi-thread parallel processing environment. Each of the plurality of local containers is accessible only by a corresponding one of the plurality of threads. A global container is split into a second plurality of local containers when items are going to be processed in parallel and two or more local containers are merged into a single global container when a parallel process reaches a synchronization point.
Abstract:
A method for operating a multithread processing system is provided, including assigning, by a controller, a subset of a plurality of tasks to a plurality of threads during a time N, collecting, by the controller, data during the time N concerning the operation of the plurality of threads, analyzing, by the controller, the data to determine at least one condition concerning the operation of the plurality of threads during the time N, and adjusting, by the controller, a number of the plurality of threads available in time N+1 in accordance with the at least one condition.
Abstract:
A device comprises a non-transitory memory storage comprising instructions, a network interface, and one or more processors in communication with the memory storage and the network interface. The one or more processors execute the instructions to receive, via the network interface, a write request from a client device; send, via the network interface, the received write request to a set of follower devices; receive, via the network interface, a first acknowledgment from a majority of the follower devices of the set of follower devices that the write request was processed; send, via the network interface, the received write request to a set of peer devices; receive, via the network interface, second acknowledgments from a majority of the set of peer devices that the write request was processed; and send an acknowledgment of the write request to the client device in response to the receipt of the first acknowledgments and the second acknowledgments.
Abstract:
A method for region guided and change tolerant fast shortest path determination and graph preprocessing for network management and control. In an embodiment, a method includes partitioning, by a network component, a plurality of network nodes into a plurality of regions, each network node belonging to one of the regions; identifying, by the network component, border nodes for each region, each border node in a region connecting to at least one border node in a connecting region; determining, by the network component, intervals between regions according to the border nodes, each interval comprising a minimum distance and a maximum distance between two regions; determining, by the network component, a path from a source node to a target node according to the intervals.
Abstract:
Methods and systems that facilitate efficient and effective adaptive execution mode selection are described. The adaptive execution mode selection is performed in part on-the-fly and changes to an execution mode (e.g., sequential, parallel, etc.) for a program task can be made. An intelligent adaptive selection can be made between a variety execution modes. The adaptive execution mode selection can also include selecting parameters associated with the execution modes. A controller receives historical information associated with execution mode selection, engages in training regarding execution mode selection, and adaptively selects an execution mode on-the-fly. The training can use an approach similar to an artificial neural network in which automated guided machine learning approach establishes correspondences between execution modes and task/input feature definitions based upon historical information. An adaptive selection is performed on-the-fly based on an initial trial run.
Abstract:
System and method embodiments are provided for creating data structure for parallel programming. A method for creating data structures for parallel programming includes forming, by one or more processors, one or more data structures, each data structure comprising one or more global containers and a plurality of local containers. Each of the global containers is accessible by all of a plurality of threads in a multi-thread parallel processing environment. Each of the plurality of local containers is accessible only by a corresponding one of the plurality of threads. A global container is split into a second plurality of local containers when items are going to be processed in parallel and two or more local containers are merged into a single global container when a parallel process reaches a synchronization point.
Abstract:
A method for operating a multithread processing system is provided, including assigning, by a controller, a subset of a plurality of tasks to a plurality of threads during a time N, collecting, by the controller, data during the time N concerning the operation of the plurality of threads, analyzing, by the controller, the data to determine at least one condition concerning the operation of the plurality of threads during the time N, and adjusting, by the controller, a number of the plurality of threads available in time N+1 in accordance with the at least one condition.
Abstract:
A method for region guided and change tolerant fast shortest path determination and graph preprocessing for network management and control. In an embodiment, a method includes partitioning, by a network component, a plurality of network nodes into a plurality of regions, each network node belonging to one of the regions; identifying, by the network component, border nodes for each region, each border node in a region connecting to at least one border node in a connecting region; determining, by the network component, intervals between regions according to the border nodes, each interval comprising a minimum distance and a maximum distance between two regions; determining, by the network component, a path from a source node to a target node according to the intervals.