bgribble/mfp

Box-selection and group drag can be painfully slow

Closed this issue · 3 comments

In some cases, not sure when exactly, box-selecting and dragging a network of processors can be painfully slow and jerky. Even moving the selection with arrow keys is very high-latency.

It's not just load -- sometimes within a patch one subset of processors will be very slow, and another copy-pasted network of the same processors will be no lag at all.

For one thing, box-selection with a lot of elements on the screen drags in itself, since it's computing a lot of box-overlaps. I am 100% certain that there are efficiency tricks to this, including rate limiting the box checks (so there may be a delay after stopping motion while the selection still changes).

Some simple instrumentation convinced me that it's not the box-overlap checks that's causing the perceived slowness. It's somewhere else. Not sure where.

I've convinced myself that this isn't really a major issue. When there are a lot of boxes on the screen (say, 100 or so processors) a box-select can get jerky, but it's not all that bad. Definitely I need to fix #98, and I'll have a look at the speed when I do that For now, closing this ticket.