-
Notifications
You must be signed in to change notification settings - Fork 21
Description
Hi,
We obtained a large simulation input that serve as the baseline for itzi optimization and parallelization.
However this workflow was based on itzi_20.5. So first we tried bringing it up to date with itzi-25.4.
[Assertion error]
Building topology for vector map <out_1501_drainage_0011@PERMANENT>...
Registering primitives...
WARNING: Error during execution: Traceback (most recent call last):
File "/usr/local/lib64/python3.13/site-packages/itzi/itzi.py", line 226, in sim_runner_worker
sim_runner.initialize(conf_file).run().finalize()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/local/lib64/python3.13/site-packages/itzi/itzi.py", line 126, in run
self.step()
~~~~~~~~~^^
File "/usr/local/lib64/python3.13/site-packages/itzi/itzi.py", line 143, in step
self.sim.update()
~~~~~~~~~~~~~~~^^
File "/usr/local/lib64/python3.13/site-packages/itzi/simulation.py", line 325, in update
self.drainage_model.step()
~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/local/lib64/python3.13/site-packages/itzi/drainage.py", line 76, in step
assert self._dt > 0.0
^^^^^^^^^^^^^^
AssertionError
We built a fedora42-based containers that ships GRAS_8.4.1, hence python-3.13 is in the traceback.
The singularlity definition was attached for reference.
The assertion error causes the simulation to hang definitely.
[Discrepancy of output.csv]
When examining the _output.csv generated during simulation;
- v20.5
sim_time,avg_timestep,#timesteps,boundary_vol,rain_vol,inf_vol,inflow_vol,losses_vol,drain_net_vol,domain_vol,created_vol,%error
2024-10-03 09:00:00,-,0,0.000,0.000,-0.000,0.000,-0.000,0.000,0.000,0.000,-
2024-10-03 09:10:00,0.100,6001,0.000,2389801.734,-187099.516,0.000,-0.000,-988.888,2439563.850,0.000,0.00%
2024-10-03 09:20:00,0.100,6000,0.000,2389802.283,-162630.654,0.000,-0.000,-4015.601,4661705.691,0.000,0.00%
2024-10-03 09:30:00,0.100,6025,0.000,2389802.283,-145111.838,0.000,-0.000,-8537.149,6896788.395,0.000,0.00%
2024-10-03 09:40:00,0.097,6181,0.000,2389801.734,-132494.456,0.000,-0.000,-12007.708,9140896.083,0.000,0.00%
2024-10-03 09:50:00,0.095,6298,0.000,2389802.283,-123568.487,0.000,-0.000,-16394.237,11389547.028,0.000,0.00%
2024-10-03 10:00:00,0.096,6243,0.000,2389802.008,-117090.836,0.000,-0.000,-26750.413,13634009.057,0.000,0.00%
2024-10-03 10:10:00,0.096,6232,0.000,2389802.008,-112429.002,0.000,-0.000,-43653.120,15866288.347,0.000,0.00%
2024-10-03 10:20:00,0.095,6286,0.000,2389802.283,-109130.343,0.000,-0.000,-62364.468,18083524.899,0.000,0.00%
2024-10-03 10:30:00,0.096,6265,0.000,2389802.008,-106753.065,0.000,-0.000,-80362.847,20285073.757,0.000,0.00%
2024-10-03 10:40:00,0.096,6274,0.000,2389802.558,-105101.018,0.000,-0.000,-99838.942,22469056.089,0.000,0.00%
2024-10-03 10:50:00,0.095,6315,0.000,2389802.283,-103855.511,0.000,-0.000,-134315.080,24619278.786,0.000,0.00%
2024-10-03 11:00:00,0.095,6340,0.000,2389802.008,-102998.672,0.000,-0.000,-177064.386,26499118.947,0.000,0.00%
- v25.4
sim_time,avg_timestep,#timesteps,boundary_vol,rain_vol,inf_vol,inflow_vol,losses_vol,drain_net_vol,domain_vol,created_vol,%error
2024-10-03 09:00:00,-,0,0.000,0.000,-0.000,0.000,-0.000,0.000,0.000,0.000,-
2024-10-03 09:10:00,0.100,6000,0.000,397892.534,-182819.114,0.000,-0.000,-27.240,233498.672,0.000,0.00%
2024-10-03 09:20:00,0.100,6000,0.000,397892.602,-160366.631,0.000,-0.000,-61.763,468967.473,0.000,0.00%
2024-10-03 09:30:00,0.100,6000,0.000,397892.602,-143676.722,0.000,-0.000,-147.116,721627.257,0.000,0.00%
2024-10-03 09:40:00,0.100,6000,0.000,397892.534,-131476.652,0.000,-0.000,-258.082,986760.051,0.000,0.00%
2024-10-03 09:50:00,0.100,6000,0.000,397892.568,-122807.666,0.000,-0.000,-407.417,1260839.613,0.000,0.00%
2024-10-03 10:00:00,0.100,6000,0.000,397892.499,-116479.057,0.000,-0.000,-598.251,1541265.244,0.000,0.00%
2024-10-03 10:10:00,0.100,6000,0.000,397892.568,-111914.075,0.000,-0.000,-808.238,1826177.822,0.000,0.00%
2024-10-03 10:20:00,0.100,6000,0.000,397892.671,-108675.605,0.000,-0.000,-1051.482,2114257.631,0.000,0.00%
2024-10-03 10:30:00,0.100,6000,0.000,397892.568,-106326.619,0.000,-0.000,-1318.839,2404505.513,0.000,0.00%
2024-10-03 10:40:00,0.100,6000,0.000,397892.568,-104692.427,0.000,-0.000,-1547.609,2696246.297,0.000,0.00%
2024-10-03 10:50:00,0.100,6000,0.000,397892.568,-103459.238,0.000,-0.000,-1775.899,2989006.705,0.000,0.00%
(v25.4 misses the timetamp at 11:00:00 due to aforementioned assertion error)
My understand is that the statistical information should be same between two versions.
Or is this discrepancy expected due to version change ?
[Issue with containers/docker]
The assertion error could be due to either:
- A bug in
itzi-25.4that will simply go away after updating toitzi-25.8 - A bug in
python-3.13
- Boostrap from fedora-42
Unfortunately it is not simple as
ERROR: Ignored the following versions that require a different python version: 25.8 Requires-Python >=3.11,<3.13
ERROR: Could not find a version that satisfies the requirement itzi==25.8 (from versions: 16.7, 16.8, 16.9, 17.1, 17.7, 17.8, 17.10, 17.11, 18.2, 20.5, 25.4)
ERROR: No matching distribution found for itzi==25.8
- Singularity container boostraped from official docker image.
$ singularity pull docker://lrntct/itzi:25.8
$ singularity shell itzi_25.8.sif
Singularity> whereis grass
grass: /usr/local/bin/grass /usr/local/grass
Singularity> whereis itzi
itzi:
So GRASS_BIN is picked up. But itzi was not.
- Test server with docker engine (Xeon E7-8890v2)
# docker run -it lrntct/itzi:25.8 bash
# itzi version
Illegal instruction (core dumped)
Sorry for long-winded questions, but we have been running in circle trying to build a container with workable GRASS_8.4 and itzi_25.8.
Regards.