<div dir="ltr"><div><div><div><div><div><div>Hi Tobias,<br><br>>All the figuring out who is responsible and whether it is already 
managed etc., that looks really expensive to do for each Cell if you 
have a lot of small Cells as in BDV.<br><br></div>There will always be overhead for plugin-based matching. Ideally it shouldn't be more than a couple of hash map lookups. As far as complexity scaling with number of plugins of a given type, that's a general concern which will likely necessitate more indexing support in SciJava eventually. Also the ref manager should be a HandlerService.<br><br></div>The alternative I think is for cells to know that they need a phantom reference that can cache them, and to always construct it when a cell is constructed. Since you have to construct and queue a reference either way, in theory I wouldn't expect compatibility determination to be the performance bottleneck. I have not profiled the performance of the cache service but if doing so did reveal compatibility determination to be a problem, then I would also expect it to be resolved with better caching and indexing.<br><br></div>Anyway, for technical stuff like this it's best we discuss on the mailing list or GitHub.<br><br>If you notice problems while you're looking at the code, it's more efficient for you to commit a fix directly since you have commit rights. If the fix is not clear, then I would open a <a href="https://github.com/scifio/scifio/issues">GitHub issue</a>.<br><br></div>Hope that helps.<br><br></div>Thanks,<br></div>Mark<br><div><div><div><br><br></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 18, 2015 at 11:29 AM, Tobias Pietzsch <span dir="ltr"><<a href="mailto:pietzsch@mpi-cbg.de" target="_blank">pietzsch@mpi-cbg.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">Hi Mark,<div><br></div><div>did you ever benchmark how much time is spent in DefaultRefManagerService.manage()</div><div>All the figuring out who is responsible and whether it is already managed etc., that looks really expensive to do for each Cell if you have a lot of small Cells as in BDV.</div><div><br></div><div>best regards,</div><div>Tobias</div><div><div class="h5"><div><br><div><div>On 18 Sep 2015, at 17:24, Tobias Pietzsch <<a href="mailto:pietzsch@mpi-cbg.de" target="_blank">pietzsch@mpi-cbg.de</a>> wrote:</div><br><blockquote type="cite"><div style="word-wrap:break-word"><div>member variable DefaultRefManagerService.disposed</div><a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/DefaultRefManagerService.java#L75" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/DefaultRefManagerService.java#L75</a><div>is named and documented in the wrong way (should be renamed to “notDisposed” or “running” or similar), or used in the wrong way in</div><div><a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/DefaultRefManagerService.java#L143" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/DefaultRefManagerService.java#L143</a></div><div><a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/DefaultRefManagerService.java#L150" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/DefaultRefManagerService.java#L150</a><br><div><br></div><div><div><div>On 18 Sep 2015, at 14:07, Tobias Pietzsch <<a href="mailto:pietzsch@mpi-cbg.de" target="_blank">pietzsch@mpi-cbg.de</a>> wrote:</div><br><blockquote type="cite"><div style="word-wrap:break-word"><div>Javadoc for class</div><a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/CleaningRef.java#L41" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/CleaningRef.java#L41</a><div>and method</div><div><a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/CleaningRef.java#L49" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/refs/CleaningRef.java#L49</a><div>are contradictory.</div><div><br><div><div>On 17 Sep 2015, at 18:18, Mark Hiner <<a href="mailto:hiner@wisc.edu" target="_blank">hiner@wisc.edu</a>> wrote:</div><br><blockquote type="cite"><div dir="ltr"><div><div><div>Hi Tobi,<br><br></div>I'll be back Monday.<br><br></div>There's are eclipse config files in scifio.git/config but I think maybe they should just be removed in favor of those in imagej/imagej. Either way a code cleanup commit wouldn't hurt.<br><br></div>Feel free to commit any fixes directly if you'd like. A lot of those classes will probably change with a refactoring to rely more on imglib2 classes. Otherwise, I will try to remember next week.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Sep 17, 2015 at 11:02 AM, Tobias Pietzsch <span dir="ltr"><<a href="mailto:pietzsch@mpi-cbg.de" target="_blank">pietzsch@mpi-cbg.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Mark,<br>
<br>
I’m currently digging through SCIFIOCellCache, MapDBCache, etc.<br>
I guess I’ll be bugging you with questions over the next days...<br>
...respectively when you are back from your vacation. Please feel free to postpone answering until after vacation. I’ll just send emails with everything I notice so that I don’t forget. When will you be back?<br>
<br>
Could you please add me as an author of the <a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/img/cell/SCIFIOImgCells.java" rel="noreferrer" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/img/cell/SCIFIOImgCells.java</a> class (because this is basically the same as <a href="https://github.com/bigdataviewer/bigdataviewer-core/blob/master/src/main/java/bdv/img/cache/VolatileImgCells.java" rel="noreferrer" target="_blank">https://github.com/bigdataviewer/bigdataviewer-core/blob/master/src/main/java/bdv/img/cache/VolatileImgCells.java</a> from BDV)?<br>
<br>
Something seems to have gone wrong with auto-formatting the comments here<br>
<a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/img/cell/SCIFIOCell.java#L60-L64" rel="noreferrer" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/img/cell/SCIFIOCell.java#L60-L64</a><br>
and here<br>
<a href="https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/img/cell/SCIFIOCell.java#L69-L71" rel="noreferrer" target="_blank">https://github.com/scifio/scifio/blob/master/src/main/java/io/scif/img/cell/SCIFIOCell.java#L69-L71</a><br>
<br>
Is there an eclipse style file for SCIFIO?<br>
<br>
best regards,<br>
Tobias<br>
</blockquote></div><br></div>
</blockquote></div><br></div></div></div></blockquote></div><br></div></div></div></blockquote></div><br></div></div></div></div></blockquote></div><br></div>