1. 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; determining if a 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 different 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.