KIO directory listing - CPU slows down SSD

Frank Reininghaus frank78ac at googlemail.com
Mon Jun 2 21:39:09 UTC 2014


Hi,

2014-06-02 20:54 GMT+02:00 Mark Gaiser:
> On Mon, Jun 2, 2014 at 6:42 PM, Aaron J. Seigo wrote:
>> On Thursday, May 29, 2014 16:32:28 Mark Gaiser wrote:
>>> dolphin on a massive folder. In fact, those that use kio::listdir for
>>> listing folders only have interfaces that become usable when all
>>> entries are fetched.
>>
>> assuming these UIs receive maintenance over the next years, this pattern is
>> likely to fade away. instant feedback and incremental listing is a current
>> reality.
>>
>> you know what would be very nice (but rather complex to achieve...)? for the
>> client side of a KIO listing to say "i only want the first N items anyways,
>> i'll let you know when i can handle more..." and for sorting to be optionally
>> done on the slave side.
>
> That would be very nice since you would cut IPC communication
> massively (depending on the folder) to just those that you see which
> would result in even insanely large folders to be presented to the
> user near instantly.
>
> But don't you just move logic to the slave that way? And lose
> flexibility in the apps using the slave (like dolphin? Oh and
> complicating kio "a bit" to pass a sorting and/or grouping style.
> Right now it's not really difficult to add a completely new sort order
> in dolphin, but that becomes very difficult when you want to let the
> slave do the sorting.

Yes, such an approach would indeed require additional complexity in
KIO and the slaves and would sacrifice flexibility.

Therefore, it might be questionable if this is really the way to go -
I didn't really mean that this should be implemented when I said that
I had also thought about this approach in my reply to Aaron.
Sometimes, I just dream and think about things that we could do if we
had infinite resources ;-)

I've seen users complain that loading huge folders is much faster in,
e.g., Windows Explorer than in Dolphin (that was some time ago though,
we might have caught up a bit in the mean time). Compared to us,
Microsoft's and Apple's resources are, to a good approximation,
infinite, so I always imagined that they would use every conceivable
trick to make their file managers faster.

> Now imagine you actually have this feature implemented and dolphin (or
> Accretion) adds a new sorting way that isn't in the slave Then you're
> back to square one and perhaps even slower then you are right now.
>
> Also, for a slave to give you the n items in a sorted way requires the
> slave to fetch _all_ items to do the sorting.

Yes, but the slave will only have to fetch the file names for all
items (provided that we sort by name), nothing else.

Cheers,
Frank


More information about the Kde-frameworks-devel mailing list