Before revision: Perhaps surprisingly, it is possible to predict how long an algorithm will take to run on  previously unseen input data , using machine learning techniques to build a model of the algorithm's runtime as a function of domain-specific problem features.
After revision: Perhaps surprisingly, it is possible to predict how long an algorithm will take to run on previously unseen input data , using machine learning techniques to build a model of the algorithm's runtime as a function of problem-specific instance features.