I am working on a basic decision making algorithm, i.e. based on the time of a parallel loop iteration, a decision is made to either increase or decrease the amount of threads assigned to a process. My initial approach was to take the average time of ten iterations and compare it to the previous (average) time, every 5secs. This approach failed... left by itself it would always drive the thread count down to 1.
So i've turned to unsupervised learning, using clustering as a way to decide if time x, should be classified into either: increase, stick with, or decrease the amount of threads to assign.
Based on the data type i am classifying, I believe K-means is a good starting point for unsupervised learning? I am on the right track here...