janelia-flyem / gala

Automatic segmentation of electron microscopy volumes
BSD 3-Clause "New" or "Revised" License
75 stars 29 forks source link

Speedup #82

Closed jni closed 8 years ago

jni commented 8 years ago

Numerous improvements in both RAM usage and speed. See the benchmark file in benchmarks/bench_gala.py. Results on master:

Timing results:
---  build RAG 11.09135534
---  build feature caches 1.026385385000001
---  learn flat 1.2623726690000012
---  learn agglo 549.304770173
---  classifier training 1.671047843999986
---  segment test volume 192.32732187400006
Memory results:
---  base RAG 39.989 MB
---  feature caches 0.631 MB
---  training data 1.540 MB
---  classifier training 0.071 MB
---  segment test volume 31.499 MB

Results on this branch:

Timing results:
---  build RAG 0.3949080229999997
---  build feature caches 1.0190566740000002
---  learn flat 6.251308611
---  learn agglo 86.344356213
---  classifier training 0.9445913849999954
---  segment test volume 21.699020593
Memory results:
---  base RAG 28.049 MB
---  feature caches 0.629 MB
---  training data 1.511 MB
---  classifier training 0.071 MB
---  segment test volume 27.612 MB

That's:

And 30% reduction in RAM usage by the RAG.

coveralls commented 8 years ago

Coverage Status

Coverage increased (+1.6%) to 48.883% when pulling a1c5261ae58b24d9d4c6b9434628269e5642536b on jni:speedup into ebc25b77058bc91251a2560c9b8e6652779b08c7 on janelia-flyem:master.