Closed s-mandra closed 4 years ago
See #265.
With the improvements in #265, loading time has been reduced from ~11s
--> ~3s
. This improvement is mainly given by avoiding the creation/copy of temporary objects:
./src/qflex.x -c config/circuits/rochester_53_20_0_pABC.txt \
-g config/grid/rochester_53.txt \
-o config/ordering/rochester_53.txt \
-v 1 -t 1 -m 5GB
Maximum allowed memory: 5 GB
Time spent making contraction ordering: 0.000626667s
Time spent creating 3D grid of tensors from file: 0.014222552s
Time spent allocating scratch space for 2D grid: 0.008419234s
[Mon Jan 27 15:32:38 2020] Memory usage: 45.21 MB (Peak: 45.21 MB)
[Mon Jan 27 15:32:39 2020] Memory usage: 212.93 MB (Peak: 212.93 MB)
[Mon Jan 27 15:32:40 2020] Memory usage: 309.1 MB (Peak: 309.1 MB)
[Mon Jan 27 15:32:41 2020] Memory usage: 389.02 MB (Peak: 389.02 MB)
Time spent creating 2D grid of tensors from 3D one: 3.564721787s
Allocating 2.41 GB for this simulation.
[Mon Jan 27 15:32:42 2020] Memory usage: 1.12 GB (Peak: 1.12 GB)
[Mon Jan 27 15:32:43 2020] Memory usage: 2.68 GB (Peak: 2.68 GB)
[Mon Jan 27 15:32:44 2020] Memory usage: 2.76 GB (Peak: 2.76 GB)
[Mon Jan 27 15:32:45 2020] Memory usage: 2.77 GB (Peak: 2.77 GB)
[Mon Jan 27 15:32:46 2020] Memory usage: 2.78 GB (Peak: 2.78 GB)
[Mon Jan 27 15:32:47 2020] Memory usage: 2.78 GB (Peak: 2.78 GB)
[Mon Jan 27 15:32:48 2020] Memory usage: 2.78 GB (Peak: 2.78 GB)
[Mon Jan 27 15:32:49 2020] Memory usage: 2.78 GB (Peak: 2.78 GB)
Total time: 11.281375501s
[Mon Jan 27 15:32:50 2020] Memory usage: 531.12 MB (Peak: 2.78 GB)
00000000000000000000000000000000000000000000000000000 --> 00000000000000000000000000000000000000000000000000000: 3.3514e-09 9.21908e-09
At the moment, creating the initial set of tensors (while reading the circuit) has a comparable time with the actual contraction for large circuits:
We should definitely improve that part.