fiftyone
fiftyone copied to clipboard
[FR] Don't reload app view after adding tags
Proposal Summary
When tags are added to a selection of images in the app, the entire view is reloaded. This causes the entire process of adding tags to however many images to take ~1 minute on my machine (and it's a very decent machine). I haven't looked at the app code at all, but I suspect there is some React component that will completely re-render when the tags change? Would it be possible to reload only the components corresponding to the images that actually changed? The current behaviour makes manual tagging of data fairly cumbersome.
I know you're already working on some app performance improvements, so perhaps this issue will be resolved indirectly elsewhere. I'm using the skip and limit options to only look at 500 images at a time and there are 15k images in total, should that be relevant. If I try this without limiting the images at all, the app freezes entirely. I have an 8-core Intel® Core™ i7-8565U CPU and 16GB of RAM, if that's interesting. Thanks!
Motivation
- What is the use case for this feature? Dataset curation
- Why is this use case valuable to support for FiftyOne users in general?
- Why is this use case valuable to support for your project(s) or organization?
- Why is it currently difficult to achieve this use case? (please be as specific as possible about why related FiftyOne features and components are insufficient)
What areas of FiftyOne does this feature affect?
- [x] App: FiftyOne application
- [ ] Core: Core
fiftyonePython library - [ ] Server: FiftyOne server
Details
See summary.
Willingness to contribute
The FiftyOne Community encourages new feature contributions. Would you or another member of your organization be willing to contribute an implementation of this feature?
- [ ] Yes. I can contribute this feature independently.
- [ ] Yes. I would be willing to contribute this feature with guidance from the FiftyOne community.
- [x] No. I cannot contribute this feature at this time.
Thanks @jneeven! Yes, this issue will be resolved by some core performance improvements to App's grid. Stay tuned.
@benjaminpkane do you have any estimate of when to expect these improvements? The reloading and the slowness it causes are causing a bottleneck in our data processing pipeline, so really looking forward to the optimizations 🙌🏼
I am starting this work today or tomorrow. I don't want to give a time estimate, as we are shooting for a holistic solution. But it is concretely being worked on.
Awesome, thanks for the update 👍🏼
@jneeven just wanted to let you know we haven't forgotten about this. Tagging can cause samples to disappear (or appear) and could change the layout. We have to take this into account.
The work will be a part of the next version of the sample grid. I don't have an ETA on this, but soon.
Thanks! I saw your Slack announcement about the grid performance issues with selecting images, that'll already help 🙌🏼 Looking forward to the the rest!
Any progress on this? In particular maintaining the scroll position after refresh, as described in #1500.
Yes! A prototype has been implemented. Waiting on prioritization
Resolved by #4281