-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 The current PNS_LINE_PLACER::GetModifiedNets() always returns the net being routed, even if it hasn't changed since the last FixRouting() call. This leads to unnecessary rebuilds of the ratsnest, which can take several hundred milliseconds on large boards.
My patch (on launchpad at https://code.launchpad.net/~azonenberg/kicad/performance-patches) adds a dirty flag to PNS_PLACEMENT_ALGO, currently only used by PNS_LINE_PLACER, that indicates whether the placer has had any changes made to it since the last time routing was committed. On my current design, this reduces the UI hang after drawing a ground track from ~700 ms to ~350 ms. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQIcBAEBAgAGBQJWvX6PAAoJEDRhermzHH18kucP/AjKoZzS+yMtyIByA3hvhgqq mCzE9bPkwnahfxsyawQIIE4wf8dvRYSeSA/c9fRol5nFrWWHiF7AjJB/n7AeJkTy /TdqF5fL2T/AtxnDeT1YdJ88aVtudy2DQjtNIQOU61LWs702NZucGwnMp4C8DNR2 oF3eR1/oDeL7o1DYj3A8HW97d7ZFmsIStSN3vnbkGLWeD2JPXReYw9kmFgevyXwK V7OUCpuOclWzDhLcGGYzjttBSIydnD3rHvCWpRTcGnNfbV/5/UKDCrcBkxVKEN1j Kx6R20neu8/6fMDFFR+Q8cJTYmg74aZNNc1GVvQPJLOGbL6cXgHRUIchnwFJuNUc 9dmd4trNRghPODBpK9ZEr02/l354UB0hTctE18YAc6Fl8qLMT2fUbQHCxndFYs1P 8VSz2o6w/6KI/I9xkaYJwwseXrYcT2XmRCbnj/cHaw+UhxIymUQtyZHep8awvzSd s6OPEErSsZNw6/TyMG07MW8qoUmBNvlp8LPAHl84ZAtmkGMbCAzoDIcyaLn/0zPN YR+k+YE6wI2Kl3x5r2KsOt+PbdGrQ5MugeAC6jEtAMvzWbnpw6IplbFDvor4bGB+ qFoa+BoEBJRB9DRdu4ACCpsW5NyvS17VO5qL6b0QFi9yJONZCve7poYA1asYZMUz suto/8qc5ob8qnrkMVU2 =FFf5 -----END PGP SIGNATURE----- _______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : kicad-developers@lists.launchpad.net Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp