EXPLOITING PARALLELISM IN EXPONENTIAL SMOOTHING OF LARGE-SCALE DISCRETE DATASETS
First Claim
1. A system comprising:
- one or more processors corresponding to a plurality of processing entities, wherein the plurality of processing entities comprises at least one master entity and at least a first and second worker entities;
one or more memory segments being concurrently accessible by at least some of the plurality of processing entities, wherein a series of data values is received into the one or more memory segments and divided into a plurality of portions of data values; and
the plurality of processing entities configurable to process the plurality of portions of data values in the one or more memory segments for the first worker entity and the second worker entity to calculate a first state value by the first worker entity and a second state value by the second worker entity to perform a smoothing function, andwherein the second state value does not depend on the first state value such that the first worker entity is operable in parallel with the second worker entity to determine results of the smoothing function.
1 Assignment
0 Petitions
Accused Products
Abstract
A system, and computer program product for large-scale data transformations. Embodiments include a smoothing engine within an R environment to configure at least one master task and at least two worker tasks. A chunk calculator receives a series of data values and divides the series of data values into portions of data values which are in turn assigned as workloads to at least two worker tasks. The worker tasks serve to calculate a first state value of a first one of the portions of data values, and calculate a second state value of a second one of the portions of data values. The workloads are selected such that calculating a second state value does not depend on the first state value. The results of the workload calculations are used to calculate a smoothing factor used to predict a trend.
9 Citations
20 Claims
-
1. A system comprising:
-
one or more processors corresponding to a plurality of processing entities, wherein the plurality of processing entities comprises at least one master entity and at least a first and second worker entities; one or more memory segments being concurrently accessible by at least some of the plurality of processing entities, wherein a series of data values is received into the one or more memory segments and divided into a plurality of portions of data values; and the plurality of processing entities configurable to process the plurality of portions of data values in the one or more memory segments for the first worker entity and the second worker entity to calculate a first state value by the first worker entity and a second state value by the second worker entity to perform a smoothing function, and wherein the second state value does not depend on the first state value such that the first worker entity is operable in parallel with the second worker entity to determine results of the smoothing function. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method comprising:
-
configuring one or more processors corresponding to a plurality of processing entities, wherein the plurality of processing entities comprises at least one master entity and at least a first and second worker entities; populating one or more memory segments being concurrently accessible by at least some of the plurality of processing entities, wherein a series of data values is received into the one or more memory segments and divided into a plurality of portions of data values; and invoking at least some of the plurality of processing entities to process the plurality of portions of data values in the one or more memory segments for the first worker entity and the second worker entity to calculate a first state value by the first worker entity and a second state value by the second worker entity to perform a smoothing function, and wherein the second state value does not depend on the first state value such that the first worker entity is operable in parallel with the second worker entity to determine results of the smoothing function. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A computer program product, embodied in a non-transitory computer readable medium, the computer readable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a process, the computer program product comprising:
-
program code for configuring one or more processors corresponding to a plurality of processing entities, wherein the plurality of processing entities comprises at least one master entity and at least a first and second worker entities; program code for populating one or more memory segments being concurrently accessible by at least some of the plurality of processing entities, wherein a series of data values is received into the one or more memory segments and divided into a plurality of portions of data values; and program code for invoking at least some of the plurality of processing entities to process the plurality of portions of data values in the one or more memory segments for the first worker entity and the second worker entity to calculate a first state value by the first worker entity and a second state value by the second worker entity to perform a smoothing function, and wherein the second state value does not depend on the first state value such that the first worker entity is operable in parallel with the second worker entity to determine results of the smoothing function. - View Dependent Claims (20)
-
Specification