1. 12 Jan, 2022 1 commit
  2. 25 Nov, 2021 3 commits
  3. 23 Nov, 2021 2 commits
  4. 11 Nov, 2021 1 commit
  5. 10 Nov, 2021 1 commit
  6. 01 Nov, 2021 4 commits
  7. 31 Oct, 2021 3 commits
  8. 29 Oct, 2021 2 commits
  9. 19 Oct, 2021 2 commits
  10. 06 Oct, 2021 2 commits
  11. 05 Oct, 2021 1 commit
  12. 24 Sep, 2021 1 commit
  13. 17 Sep, 2021 1 commit
  14. 08 Sep, 2021 1 commit
  15. 25 Aug, 2021 1 commit
  16. 24 Jun, 2021 2 commits
  17. 16 Jun, 2021 2 commits
    • Paul Ramsey's avatar
      d71872bc
    • Even Rouault's avatar
      SegmentNodeList::getSplitCoordinates(): fix quadratic performance pattern · e615f6ca
      Even Rouault authored
      getSplitCoordinates() calls addEdgeCoordinates() repeatdly, which itself
      calls std::unique() on the whole coordList, thus iterating from the
      start each time, which is a quadratic performance pattern. As
      addEdgeCoordinates() is a private method only called by
      getSplitCoordinates(), move the call to std::unique() to the end of
      getSplitCoordinates() itself.
      
      Issue was detected when observing long runtimes on safe-TestBufferJagged.xml
      
      Before this PR:
      $ /home/even/geos/build_cmake/bin/test_xmltester -v /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test1: buffer(a, 0.35): ok. (11 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test2: buffer(a, 0.75): ok. (155 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test3: buffer(a, 1.01): ok. (209 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test4: buffer(a, 1.1): ok. (210 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test5: buffer(a, 1.5): ok. (310 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test6: buffer(a, 2): ok. (429 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test7: buffer(a, 5): ok. (1326 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test8: buffer(a, 10): ok. (2497 ms)
      
      After:
      $ /home/even/geos/build_cmake/bin/test_xmltester -v /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test1: buffer(a, 0.35): ok. (11 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test2: buffer(a, 0.75): ok. (65 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test3: buffer(a, 1.01): ok. (79 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test4: buffer(a, 1.1): ok. (78 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test5: buffer(a, 1.5): ok. (105 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test6: buffer(a, 2): ok. (133 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test7: buffer(a, 5): ok. (302 ms)
      /home/even/geos/tests/xmltester/tests/misc/safe-TestBufferJagged.xml: case1: test8: buffer(a, 10): ok. (464 ms)
      Files: 1
      Tests: 8
      Failed: 0
      Succeeded: 8
      e615f6ca
  18. 26 Apr, 2021 1 commit
  19. 13 Apr, 2021 1 commit
  20. 08 Apr, 2021 1 commit
  21. 09 Mar, 2021 2 commits
  22. 25 Feb, 2021 1 commit
  23. 22 Feb, 2021 2 commits
  24. 10 Feb, 2021 2 commits