Patent EP-3557413-A1 (EP)
Inventor: RIAZ KARIM
IPC: G06F9/48
Filed: 2018-04-20
Abstract: An instruction processing system for processing instructions (50) received from a remotely located instructing system (12A), wherein each instruction comprises a plurality of tasks, a confidence level parameter (66) associated with each task and a maximum number of iterations parameter (68), each task requiring a plurality of instances of the task to be processed in order to make a determination of confidence in the results of the processing the task, is described. The instruction processing system included an iteration allocation system (10) for processing the instruction (50) which uses a remotely located pool of distributed data processors (16A, 16B, 16C) operatively coupled to the iteration allocation system (10) for processing an instance of at least one of the plurality of tasks. The iteration allocation system comprises: a multi-part instruction handler (30) arranged to divide the received instruction into the plurality of tasks and to forward each task to an iteration creation system (32) for processing each task separately; the iteration creation system (32) for processing a received task to create a plurality of task iteration instruction records (80) each representing an instance of the task, a selective access queuing system (34) for temporarily holding all task iteration instruction records (80) and selectively providing one of the task iteration instruction records (80) to a requesting processor (16A; 16B; 16C) of the pool of distributed data processors (16A, 16B, 16C); a results processing system (40) for processing received results of task iteration instruction records processed by the pool of distributed data processors (16A, 16B, 16C), wherein the results processing system (40) comprises: a task results receipt processor (230) for receiving the results of a processed task iteration instruction record (80) and storing the results in a results database (42); an agreement verification processor (232) arranged to: determine a current confidence level value associated with the degree of agreement between all of the results of received task iteration instruction records (80) relating to the same task; compare the current confidence level value with the confidence level parameter (66) of that task; change a task status parameter of the associated task to 'completed' and store the same in the results database (42) if the current confidence level meets the value of the required confidence level parameter (66); change a task status parameter of the associated task to 'failed' and store the same in the results database (42) if the current confidence level does not meet the value of the required confidence level parameter (66) and the maximum number of iterations (68) for the associated task have been carried out; and generate an new iteration instruction for the creation of a new task iteration record if the current confidence level does not meet the value of the required confidence level parameter (66) and the maximum number of iterations (68) for the associated task has not been carried out; a supplementary task iteration generation processor (236) for generating new task iteration records (80), the supplementary task iteration generation processor (236) being responsive to receiving the new iteration instruction from the agreement verification processor (232), to create the new task iteration record and pass the new task iteration record (80) to the selective access queuing system (34); and a results request handler (44) configured to receive requests from an instruction generation source (12A, 12B, 12C) for the results of a particular processed instruction, retrieve the results of a processed instructions and provide the results to the instruction generation source.