Opened 17 years ago
Closed 17 years ago
#154 closed defect (fixed)
quantity.get_vertex_values is slow
Reported by: | anonymous | Owned by: | ole |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Efficiency and optimisation | Version: | |
Severity: | major | Keywords: | |
Cc: |
Description (last modified by ole)
Profiling of okushiri (yieldstep=0.05, finaltime=2) gave the following runtimes:
store_vertex_values_uniquely(True): 138.3s
store_vertex_values_uniquely(False): 505.6s
No storing: 28.2s
Profiling revealed that quantity.get_vertex_values is the culprit.
I suggest rewriting some of it in C and perhaps always use mean as the reduction operator. We don't really need any other.
This problem is worst in simulations with frequents storing.
Change History (7)
comment:1 Changed 17 years ago by ole
- Description modified (diff)
comment:2 Changed 17 years ago by ole
- Description modified (diff)
comment:3 Changed 17 years ago by ole
- Description modified (diff)
comment:4 Changed 17 years ago by ole
comment:5 Changed 17 years ago by ole
This was fixed in changeset:4471 with a new datastructure and a C-extension. Still need to refactor build_vertexlist in general mesh to get rid of the old structure.
comment:6 Changed 17 years ago by ole
Timings in the benchmark was reduced from 505s to 35s by this change.
comment:7 Changed 17 years ago by ole
- Resolution set to fixed
- Status changed from new to closed
Closed by changeset:4478
The timing for store_vertex_values_uniquely(True)
were changed from 138.3s to 75s in changeset:4460