Re:Accelerating Python Libraries with Numba
by tlarkworthy on Tuesday May 14, 2013 @10:46AM
(#5705177)
oh I should also add that the clustering (kmeans) is very fast. The analogous part to the inner loop is "feature_vectors". Which has 2 main cases:
case 1, in the case nothing has been computed it calculates the corner response images at all the different spatial scales (big operations).
case 2, feature_vector just selects data from the corner images for the pixels demanded.
Now my algorithm is sparse so its normally jsut selecting a subset of pixels, although as it calculated the spatial responses of the whole image it doesn't really make any odds to my runtime.
Yeah I use openCV and scikit learn to do the heavy lifting indeed. But then if I used Numba surely that is what you are advocating too?? I tried unrolling the inner kernel a few different ways before settling on the code you have before you. It doesn't compute the feature vector exactly how I would want, BUT ITS really FAST, which for sonar analysis to run on AUV in real time that's essential. I will fit my math to the library to meet my CPU budgets. Anyway I hope you can use this as a benchmark or something even if its implemented in a totally different way than you might do.
feel free to email me tom dot larkworthy <at> gmail
Tom