Systems and methods for efficiently implementing functional commands in a data processing system
First Claim
1. A system configured to perform efficiently a first processing task in conjunction with each of a plurality of data sets, comprising:
- a first code sequence comprising (i) a plurality of commands, and (ii) a specific command comprising a description of a first processing task, in which said description is expressed in a form of a lambda expression or a mathematical expression, and in which the first processing task is to be performed in conjunction with each of a plurality of data sets;
a first compute element in a form of a first core of a central processing unit (CPU), having access to the code sequence and configured to;
(i) identify automatically, by inspecting the specific command within the first code sequence, that the first processing task is to be performed in conjunction with each of said plurality of data sets, and (ii) according to said identification, convert, specifically, said description, into a first sequence of executable instructions constituting an efficient implementation of said first processing task, in which only the description of the first processing task is used as an input in said conversion and such that the specific command itself does not play a role in the conversion; and
a second compute element in a form of a second core of the CPU or in a form of a core of another CPU, having access to at least the plurality of commands, and configured to;
follow the plurality of commands, until the specific command is reached; and
theninitiate a plurality of processing events, in which each of the processing events comprises executing an instance of the first sequence of executable instructions in conjunction with one of the data sets, thereby resulting in performing efficiently the first processing task in conjunction with each of the plurality of data sets.
3 Assignments
0 Petitions
Accused Products
Abstract
Various systems and methods to perform efficiently a first processing task in conjunction with a plurality of data sets. A first code sequence comprises a plurality of general commands, and a specific command including a description of a first data processing task to be performed in conjunction with the data sets. The general commands are received and processed in a standard manner. The specific command is identified automatically by its nature, and the description within the specific command is then converted into a first sequence of executable instructions executable by a plurality of compute elements holding the plurality of data sets. The ultimate result is an efficient implementation of the first processing task. In some embodiments, the implementation of the first processing task is assisted by a pre-defined procedure that allocates the data sets to the compute elements and shares instances of executable instructions with the compute elements.
-
Citations
25 Claims
-
1. A system configured to perform efficiently a first processing task in conjunction with each of a plurality of data sets, comprising:
-
a first code sequence comprising (i) a plurality of commands, and (ii) a specific command comprising a description of a first processing task, in which said description is expressed in a form of a lambda expression or a mathematical expression, and in which the first processing task is to be performed in conjunction with each of a plurality of data sets; a first compute element in a form of a first core of a central processing unit (CPU), having access to the code sequence and configured to;
(i) identify automatically, by inspecting the specific command within the first code sequence, that the first processing task is to be performed in conjunction with each of said plurality of data sets, and (ii) according to said identification, convert, specifically, said description, into a first sequence of executable instructions constituting an efficient implementation of said first processing task, in which only the description of the first processing task is used as an input in said conversion and such that the specific command itself does not play a role in the conversion; anda second compute element in a form of a second core of the CPU or in a form of a core of another CPU, having access to at least the plurality of commands, and configured to; follow the plurality of commands, until the specific command is reached; and
theninitiate a plurality of processing events, in which each of the processing events comprises executing an instance of the first sequence of executable instructions in conjunction with one of the data sets, thereby resulting in performing efficiently the first processing task in conjunction with each of the plurality of data sets. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for performing efficiently and distributively a first processing task in conjunction with each of a plurality of data sets, comprising:
-
receiving, in a distributed processing system comprising a plurality of compute elements and an additional compute element, a first code sequence comprising (i) a plurality of commands and (ii) a specific command comprising a description of a first processing task, in which said description is expressed in a form of a lambda expression or a mathematical expression, and in which the first processing task is to be performed in conjunction with each of a plurality of data sets stored in said distributed processing system; obtaining a first sequence of executable instructions converted from said description of the first processing task, in which only the description of the first processing task is used as an input in said conversion and such that the specific command itself does not play a role in the conversion, and in which said first sequence of executable instructions is operative to be effectively executed by each of the plurality of compute elements thereby implementing effectively the first processing task; following, by the additional compute element, the plurality of commands, until the specific command is reached; initiating, by the additional compute element, a procedure associated with the distributed processing system, in which said procedure is operative to (i) allocate the plurality of data sets to the plurality of compute elements, and (ii) share instances of the first sequence of executable instructions with the plurality of compute elements; and activating, by each of the plurality of compute elements, the respective instance of the first sequence of executable instructions in conjunction with the data set allocated to the compute element, thereby performing efficiently and distributively the first processing task in conjunction with each of the plurality of data sets. - View Dependent Claims (20, 21, 22, 23, 24, 25)
-
Specification