
I've got the RML example for the new query and it is in the miliseconds range.
Would it be possible for you to also run the RTL example on your setup? It will not be in milliseconds range, but we would have a more accurate starting point to compare.
Also, is it possible to see what the RML solution looks like?
Here is the RML solution. I have annotated the source more heavily than normal to explain what is going on. It runs in 16-30 ms on my setup. It gains speed by using Cartesian coordinates rather than polar coordinates, and also outputs to a std::stringstream during the timing loop because otherwise writing to the terminal completely swamps the results. Nevertheless I don't consider any of this as cheating - this is how RML would be used in a real application. It's not designed for complex numerical computation - leave that to C++ I say. The geographic test is actually quite an interesting case for RML because it shows off how one would create tables of user C++ classes (as opposed to just rows). It is also extremely fast to add or delete cities from this data structure. I would feel extremely confident in an insert/run/update/rerun test. Calum