GoalsFind automatically the best parameters for SNAP, considering hardware and a processing chain. Background and strategic fitCurrently, the GPF works by processing single tiles instead of entire images allowing processing of data larger than the available RAM by using tiled processing within their own threads. However, its tile cache memory and the Java VM’s heap space can be exhausted if it is not properly configured for large data volumes specifically for the user's computer system. Tile sizes and tile cache sizes are static values defined in a configuration file. Maximum heap space is a VM setting. Most users are unaware how to properly set and adjust these settings, this will be done by the Smart Configurator. Assumptions- The predefined graph needs to compute fast enough to run a "reasonable" combination of parameters in an "acceptable" time.
Use CasesUse Case 1, installationThe administrator starts the installer up to the smart configurator page [The administrator chooses to launch the smart configurator] - The smart configurator computes default optimum parameters
- The smart configurator displays HMI showing these parameters
- The administrator checks and changes some values and clicks “Ok”
[The administrator chooses NOT to launch the smart configurator] - The smart configurator computes default optimum parameters in the background
The installer proposes to launch the Toolbox Use Case 2, from SNAPThe radiometry expert starts the Toolbox, then the Smart Configurator The Smart Configurator displays the parameters values The radiometry expert chooses the “land” processing graph The radiometry expert adds and remove values for possible cache size, tile size or number of threads The radiometry expert starts the bechmark The Smart Configurator computes all combinations for the "land" processing graph and displays the fastest parameters The radiometry expert changes some settings The radiometry expert clicks - [Ok] The new settings are applied, the Smart Configurator exits
- [Reset] Actual settings are restored
- [Cancel] Actual settings are restored, the Smart Configurator exits
User interaction and designThe smart configurator has two tabszones - The System tab zone for hardware dependant settings (Global settings)
- The Processing tab zone for processing dependant settings
Three main actions are possible: - Ok: set up the settings and quit
- Apply: set up the settings and keep the SmartConfigurator Opened
- Cancel: quit without applying changed settings
- Help: display help for the smart configurator
Image RemovedImage Added For System settings - Compute update values from the detected hardware. Modified fields are highlighted.
- Reset revert all System fields to the saved values
Image Removed For Processing settings - The processing graph tests is chosen between all available graph on the Proc. graph combo box
- Compute is performing running the chosen processing graph with all combination of "benchmark" values, and sets up values witch gave the shortest time. Modified values are highlighted.
- Reset revert all processing fields to the saved values
Not Doing- Local parameters will not be computed from a database. This option was considered and presented to the developer forum since running benchmarks for a combination of parameters will take a very long time, but it was rejected since such a database was considered to hard do build as we can't estimate optimum parameters for all hardware types.
- Collecting user information to know on which hardware is ran the toolbox would be interesting, at least to compute optimum default parameters.
|