Personal tools
You are here: Home For Developers LANDIS-II Iteration 9

Iteration 9

This iteration will focus on comparing the performance of Landis-II v1.0 alpha-1 release with Landis 3.7, as well as preparing for the team meeting on April 1.

  • Phase: Construction
  • Dates: March 14 - April 1, 2005

Tasks to be Completed

Core Framework

  • Main module
    • Add CellLength parameter to scenario file.
  • Raster-IO module
    • Complete transition from v1 of interfaces (single library) to v2 (multiple drivers), for example, remove ILibrary interface.
    • Design and code the Manager class to load and manage various raster drivers.
    • Modify other modules in core and existing plug-ins to use the new Manager class.
    • Develop naming conventions for metadata so they are portable among drivers.

Raster Drivers

  • Erdas74
    • Update the code to work with v2 of raster-IO interfaces (Barry).

Plug-in Components

  • Age-only Succession
    • Add new parameter to initialization file that allows user to select the seeding algorithm (no dispersal, universal dispersal, Ward seed dispersal).
  • Max Species Age (time permitting)
    • Add new parameter to initialization file to allow user to select which species have maps generated for them (currently all species do).
    • Add new parameter to allow user to specify a template for the filenames for maps (currently, hard-wired in).

Documentation

  • Requirements
    • Update use-cases documentation based on last review meeting.
    • Integrate use-case documentation into requirements document.
    • Distribute requirements document to team members for review.

Miscellaneous

  • Deployment
    • Package up alpha-1 release (core and plug-ins) for Rob.
  • Performance Testing
    • Setup age-only succession run for Landis 3.7 on our model server.
    • Collect timing data for this run.
    • Write script utilites to convert some of Landis 3.7 input files into Landis-II input files.
    • Setup age-only succession for for Landis-II on our model server.
    • Run and collect timing information for this run.
  • Team Meeting (April 1)
    • Prepare presentations (scientific and technical perspectives).
    • Investigate time to do a proof-of-concept for GUI window form with a text-editing area using a parser for one of the input files (e.g., scenario, species, ecoregions).

Assessment

+ Summary

The emphasis of this iteration was preparation for the team meeting and performance testing. The team meeting was regarded as an overall success. Performance testing was less successful. During the initial testing, a problem with using the memory management features of C# was encountered. In short, the garbage collector was running too frequently. The issue is imminently fixable but will require more time than was available before the team meeting. Alterations to the landscape module that will address the memory management issue and allow us to finish performance testing is the first priority for iteration 10.

+ Hits and Misses

  • Miss Cell length not added to scenario input file.
  • Miss The Manager class for Raster I/O not completed as planned.
  • Hit Erdas 74 modified to work with v2 of Raster IO interfaces.
  • Miss Age-only succession not modified to allow user selection of seeding algorithm.
  • Hit Output: Max_Spp_Age completed, including species selection and naming template.
  • Big Hit All the planned documentation was completed and distributed to team members.
  • Hit L-II packaged for distribution, including an installer.
  • Hit/Miss Performance testing nearly completed. However, memory management issues (above) prevented final completion.
  • Big Hit Team meeting. The team meeting met all of our objectives.

+ Lessons Learned

The memory management issue was an unfortunate surprise. Automated memory management may be a great tool for eliminating unused objects, but the performance downside is poorly advertised. As more people use C#, these issues will likely be addressed more honestly in the documentation. Nevertheless, our lost time (~1 week) is more an irritation than a barrier.

Document Actions