developer (#13) - TSP throughput & parallelzation (#80) - Message List

TSP throughput & parallelzation

Hello,

has anybody tested the throughput of TSP algorithm against other products?

Do you know if it is possible to parallelize several TSP calculations at the same time, when you have a powerful server with several CPUs, instead of queueing them?

Congratulation for the project,

Miguel

  • Message #314

    I don't think you can parallelize it, 'cause how can you run several queries within one PostgreSQL instance? Or do you mean you can install few instances?

    • Message #316

      Hi, I'm a coworker of Miguel. Well, in fact he is my employer :P

      He means that we want to parallelize several requests of the TSP in a Java development through a JDBC connection, thus we can run several requests to the same postgresql server.

      For instance in Oracle you cannot parallize the TSP calculation because the network object is not thread safe (different threads can not modify the network object on the same time) but we don't know how it's resolved that in pgRouting at this time.

      Cheers. Jorge

      • Message #317

        Ah, I see!

        Well, it is thread-safe, you can use it the way you like. Actually, we are doing quite similar thing with shorteat path functions and Java-based web service.

        • Message #320

          Thanks Daniel,

          (just to be sure of) May I assume that we can launch parallel queries (through different JDBC connections) so that each of them is able to instance a different TSP calculation?

          Is it also possible to make any modification to the network "in-memory", so that every parallel query can make modifications to the network, and use it for a TSP?

          Maybe it's a special case we have: We want to calculate routes with TSP with a street cartography, but we have the requirement to use adresses based on street/number, no just nodes at the intersections. What we were doing now with Oracle was to geocodificate the adresses to points (made by us, no database capability needing ), insert those nodes in the network loaded in memory (so that the network nodes are not growing for every route calculation) and launch TSP.

          Or maybe, we should look for an alternate way to clean nodes periodically (???)

          I haven't given much details, but we want to migrate a solution we have, to use 100% FOSSGIS, and at the moment we still have Oracle as a component (and very expensive, BTW)

          Thank you very much for your support.

          Miguel Montesinos

          • Message #321

            (Lookin around) Daniel? Where is he? Can you see him?

            pgRouting load the network by request, so it is impossible to keep the network data "in-memory" and of course it is impossible to modify it. And that's why it is thread-safe.

            We have pgGeocoder - geocoding solution for US/Canadian addresses. It is still in the early development stage, but it is used by MapMobility? - Canadian maps provider. If you are interested, we can provide some consultation and come out with complete solution.