Cellprofiler: Deprecate cellprofiler.analysis and cellprofiler.worker

Created on 25 Oct 2016  路  5Comments  路  Source: CellProfiler/CellProfiler

cellprofiler.analysis and cellprofiler.worker are complicated modules with complicated histories. While useful, they make needed changes like distributed or concurrent use difficult. Likewise, Celery, et al., have made the implementation of a boutique queue implementation unnecessary. The removal of these two modules will also contribute to a thread-safe future.

Enhancement

All 5 comments

Thanks for the description! Given these aren't user-facing modules, I've no idea what they do. What, if any, functionality do we lose here? It sounds like it was part of distributing jobs to multiple cores on a given computer, is that right? And if so, the thread safety branch was seeing speed improvements by ditching that already. LMK if I'm following this properly.

They are Python modules, not CellProfiler modules. We really need to change this. 馃

But, yes, this is the feature that distributed images to separate cores to be processed concurrently. However, this feature was only available from the graphical user interface (i.e. it isn鈥檛 available from the command line interface) so the usefulness was limited. Finally, this was part of the thread safety branch. We decided to break that branch up into separate pull requests so it鈥檚 easier to review.

This is required for parallelizing CellProfiler鈥檚 core image processing and analysis algorithms and enabling out-of-core processing (needed for tissue analysis).

And its removal will enable us to implement a distributed solution for concurrency (e.g. using Celery to send images to RabbitMQ to be processed and analyzed).

@0x00b1 Was this ever implemented? It sounds pretty good!

Was this page helpful?
0 / 5 - 0 ratings