Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

band priority is not optimized in automos #3711

Closed
espeyerer opened this issue Feb 25, 2020 · 12 comments
Closed

band priority is not optimized in automos #3711

espeyerer opened this issue Feb 25, 2020 · 12 comments
Assignees
Labels
enhancement New feature or request Missions Issues which are a priority for missions
Milestone

Comments

@espeyerer
Copy link

ISIS version(s) affected: 3.x and 4.x

Description
Most users use the default "ontop" or "beneath" when making mosaic products with automos. However, there are some cases when band priority is used (i.e. mosaic regions of images such that the emission angle is minimized in the final map product). Using this band option, automos must compare the incoming band to a band in the mosaic. In the current form, this is a slow process and is not optimized. It is actually quicker to compare images in fx and mosaic the output portions later. However, this is not ideal for large datasets and would become a large file management task.

How to reproduce
Compare run times for:
automos priority=ontop ....
automos priority=band ...

Possible Solution
Incorporate optimizations used in other isis functions (i.e. fx) to speed up band comparisons.

Additional context
This issue was discussed with Stuart Sides at the LROC/Diviner team meeting in February 2020.

@jessemapel jessemapel added the Missions Issues which are a priority for missions label Feb 26, 2020
@scsides
Copy link
Contributor

scsides commented Mar 3, 2020

There were no optimizations added when the initial feature was added. Suggest profiling a large run and identify places to concentrate on.

@jlaura

This comment has been minimized.

@jlaura
Copy link
Collaborator

jlaura commented Sep 1, 2020

@victoronline @scsides I missed this in the mission prioritization. Apologies. Is this still an issue that we should add to the mission priority list this sprint?

@scsides
Copy link
Contributor

scsides commented Sep 3, 2020

Seems reasonable. It is likely unnecessarily slow.

@jessemapel
Copy link
Contributor

This is still something we should look into.

@victoronline
Copy link
Contributor

This is still active.

@jessemapel jessemapel added the enhancement New feature or request label Dec 15, 2020
@amystamile-usgs amystamile-usgs self-assigned this Dec 28, 2020
@AustinSanders AustinSanders self-assigned this Dec 29, 2020
@AustinSanders
Copy link
Contributor

We weren't able to address the optimization problem this sprint, but we were able to spend some time digging into it.

Based on some profiler runs, it looks like the majority of the time is spent in ProcessMosaic::BandPriorityWithNoTracking, which contains a set of 3 nested for loops. It looks like Fx uses a BandCalculator to perform its computations, which is where the optimizations are happening.

This issue will likely require a rewrite of the ProcessMosaic::BandPriorityWithNoTracking function to incorporate the cubecalculator.

@amystamile-usgs amystamile-usgs removed their assignment Mar 18, 2021
@AustinSanders AustinSanders removed their assignment May 25, 2021
@scsides scsides self-assigned this Jun 7, 2021
@jlaura
Copy link
Collaborator

jlaura commented Jun 15, 2021

@scsides Was this closed in the last support sprint?

@victoronline
Copy link
Contributor

Hello All. I don't know if this was waiting for me or not. I believe we were looking at using an alternate resource stream for work on this by Stuart for LROC. As far as LROC is concerned, this option has been discussed by LROC and is a viable option.

@victoronline
Copy link
Contributor

Any update on this one? Stuart, have you had a chance to look at this one?

@scsides
Copy link
Contributor

scsides commented Aug 5, 2021 via email

@AustinSanders AustinSanders added this to the 6.1.0 milestone Aug 5, 2021
@AustinSanders AustinSanders modified the milestones: 6.1.0, 6.2.0 Oct 20, 2021
@jlaura jlaura moved this to In Progress in ASC Software Support Nov 11, 2021
@jlaura jlaura moved this from In Progress to Deferred in ASC Software Support Nov 16, 2021
@jlaura jlaura removed the status in ASC Software Support Dec 8, 2021
@jlaura jlaura moved this to Todo in ASC Software Support Dec 8, 2021
@jlaura jlaura moved this from Todo to In Progress in ASC Software Support Jan 28, 2022
@scsides scsides modified the milestones: 6.2.0, 7.0.1 Jan 31, 2022
@jessemapel jessemapel moved this from In Progress to Mergable in ASC Software Support Feb 11, 2022
@jessemapel
Copy link
Contributor

Fixed by #4793

Repository owner moved this from Mergable to Done in ASC Software Support Feb 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Missions Issues which are a priority for missions
Projects
None yet
Development

No branches or pull requests

7 participants