Closed JianrongTan closed 2 years ago
Naively I would expect the specific version of pyuvdata to not matter for timings since the only thing that happens during the simulation itself is an index into the data_array. But obviously you felt that too or you wouldn't make this issue :laughing:
I think with some more information about the run environment we might be able to help more. Profiling/timing can be tricky. Are you running these on a machine you control? Were there similar background loads both times? Or was this on a cluster with identical configurations? Also can you consistently re-produce this discrepancy between the pyuvdata versions?
I am running both on HERA clusters. The settings are the same
#PBS -q hera
#PBS -l nodes=4:ppn=4
#PBS -l pmem=2gb,pvmem=12gb
A note: Interestingly these are not identical simulations, I see more sources in the second one.
I think they are very close (15272 vs 15003) and I wouldn't think the running time could be differenced by 67%
yes they are ridiculous close, just being picky. Would you mind providing your setup yaml and links to your beam/config/source list?
I tested more simulations with exactly the same parameters for both environments and found I couldn't stably reproduce the issue.
UVData initialization took 0.050 min
Skymodel setup took 0.000 min
Nbls: 1378
Ntimes: 60
Nfreqs: 101
Nsrcs: 15003
Tasks: 8350680.0
1.00% completed. 0:01:50.626471 elapsed. 3:02:31.994091 remaining.
2.00% completed. 0:03:40.069162 elapsed. 2:59:43.099041 remaining.
3.00% completed. 0:05:29.836409 elapsed. 2:57:44.289263 remaining.
Here it just takes 3 hours instead of 7.5 hours above!
So I think it may be just a too tricky timing problem. And the running time of most simulations I tested scale correctly. I am almost fine with it now :slightly_smiling_face:. Thanks @mkolopanis for looking into this!
@JianrongTan sounds like we should close this issue for now, but if you see simulations slow way down again please let us know!
I found
pyuvsim
somehow ran slower with the newest version ofpyuvdata
. Here I ran two simulations with different versions ofpyuvdata
(2.2.1 vs 2.2.4).For the one with 2.2.1, I have the output
Here we see to finish the whole simulation, we need ~ 4.5 hours.
While the one with 2.2.4
It takes ~7.5 hours!
I am not sure why there is a huge difference between the running time, since the only difference is the version of
pyuvdata
when I generate the conda environments. I wonder if anyone can help on this.