1. A system configured to generate automatically a procedure operative to distributively process a plurality of data sets stored on a plurality of memory modules, comprising: a first database configured to store a code sequence describing an action to be performed by a target system on each of a plurality of data sets stored in a shared memory pool comprising a plurality of memory modules associated respectively with a plurality of data interfaces all belonging to the target system, in which the action per each of the plurality of data sets comprises: (i) fetching the data set from the shared memory pool in the target system, and (ii) processing said data set fetched; and a first compute element outside the target system, having access to said first database, and configured to convert said code sequence into a sequence of executable instructions, in which said sequence of executable instructions, when executed simultaneously by each of a plurality of compute elements of the target system, results in a distributive fetching-and-processing procedure operative, per each of the plurality of compute elements, to: send a plurality of data requests to at least some of the plurality of data interfaces, in which each of the data requests is sent to one of the plurality of data interfaces; receive, as a response to each of the data requests, from the data interface receiving the data request, a reply comprising a specific one of the data sets stored in the memory module associated with the data interface; and process said data sets received, such that: said sending, receiving, and processing, by each of the plurality of compute elements, are done asynchronously with any other of the sending, receiving, processing done by any other of the compute elements, until a first condition is met.