Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • airGR airGR
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 55
    • Issues 55
    • List
    • Boards
    • Service Desk
    • Milestones
  • Redmine
    • Redmine
  • Merge requests 6
    • Merge requests 6
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar

La forge gitlab.irstea.fr sera définitivement arrêtée le 30 juin 2026. Nous vous invitons à migrer vos projets vers la forge INRAE. Vous trouverez plus de détails sur le blog de la forge INRAE.

  • HYCAR-HydroHYCAR-Hydro
  • airGRairGR
  • Issues
  • #176
Closed
Open
Issue created Jun 20, 2023 by Dorchies David@david.dorchiesDeveloper

CreateIniStates: Huge computation time spent on GetFeatModel

The Rstudio profiler on airGRiwrm calibration with ungauged nodes returns this result:

image

We see that on 3.46 sec of calculation, 1.62 sec are spent in CreateIniStates and especially in the call to .GetFeatModel which take a lot of time to run system.file and read.table.

One first quick solution would be to add in Calibration, a copy of model features from RunOptions to InputsModel in order to provide them to CreateIniStates through InputsModel.

If we think of more structured solution, model features could be attached from the beginning to the InputsModel object and propagated to all subsequent objects used in simulation/calibration without the need to call again the expensive .GetFeatModel function. This point of view change substantially the call to airGR functions because we would need to precise IsSD and IsHyst parameters in the CreateInputsModel call. This also would simplify the calls to other Create... functions which would not need these parameters anymore.

@guillaume.thirel, @olivier.delaigue, if you agree with this point of view, this proposed solution needs further investigation in order to avoid breaking changes and take into account any legacy and new call to airGR functions. Maybe in a separated ticket issue ?

Edited Jun 20, 2023 by Dorchies David
Assignee
Assign to
Time tracking