Patent ID: 7865898

Claim:
A method for reducing execution time of a parallel support vector machine (SVM) application, comprising: partitioning an input data set into chunks of data; distributing the partitioned chunks of data across a plurality of available computing nodes; executing the parallel SVM application on the chunks of data in parallel across the plurality of available computing nodes; computing a mean of completion times for a portion of the plurality of available computing nodes that have completed processing their respective chunks of data; setting a first timeout period equal to a constant factor times the mean of the completion times minus a current elapsed time; determining if the first timeout period has been exceeded before all of the plurality of available computing nodes have finished processing their respective chunks of data; and if so, repartitioning the input data set into chunks of data that are different from the partitioned chunks of data; redistributing the repartitioned chunks of data across some or all of the plurality of available computing nodes; and executing the parallel SVM application on the repartitioned chunks of data in parallel across some or all of the available computing nodes.