diff options
author | Mario Mulansky <mario.mulansky@gmx.net> | 2015-05-08 11:57:00 +0200 |
---|---|---|
committer | Mario Mulansky <mario.mulansky@gmx.net> | 2015-05-08 11:57:00 +0200 |
commit | 76a4bbcc733bdd24bb61072a341c43a14b7f83d1 (patch) | |
tree | a7612697e0b299f087ea829b120ddffa44347c35 /examples | |
parent | a0262fc04e4b084f4dd270a75938d4ad029783d4 (diff) |
performance improvement for multivar spike sync
dont compute the average profile in the function spike_sync_multi, but rather
compute the overall average distance directly
Diffstat (limited to 'examples')
-rw-r--r-- | examples/performance.py | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/examples/performance.py b/examples/performance.py index 469b5ab..94dae25 100644 --- a/examples/performance.py +++ b/examples/performance.py @@ -6,6 +6,7 @@ from __future__ import print_function import pyspike as spk from datetime import datetime import cProfile +import pstats M = 100 # number of spike trains r = 1.0 # rate of Poisson spike times @@ -22,21 +23,37 @@ t_end = datetime.now() runtime = (t_end-t_start).total_seconds() print("Spike generation runtime: %.3fs" % runtime) +print() print("================ ISI COMPUTATIONS ================") print(" MULTIVARIATE DISTANCE") -cProfile.run('spk.isi_distance_multi(spike_trains)') +cProfile.run('spk.isi_distance_multi(spike_trains)', 'performance.stat') +p = pstats.Stats('performance.stat') +p.strip_dirs().sort_stats('tottime').print_stats(5) + print(" MULTIVARIATE PROFILE") -cProfile.run('spk.isi_profile_multi(spike_trains)') +cProfile.run('spk.isi_profile_multi(spike_trains)', 'performance.stat') +p = pstats.Stats('performance.stat') +p.strip_dirs().sort_stats('tottime').print_stats(5) print("================ SPIKE COMPUTATIONS ================") print(" MULTIVARIATE DISTANCE") -cProfile.run('spk.spike_distance_multi(spike_trains)') +cProfile.run('spk.spike_distance_multi(spike_trains)', 'performance.stat') +p = pstats.Stats('performance.stat') +p.strip_dirs().sort_stats('tottime').print_stats(5) + print(" MULTIVARIATE PROFILE") -cProfile.run('spk.spike_profile_multi(spike_trains)') +cProfile.run('spk.spike_profile_multi(spike_trains)', 'performance.stat') +p = pstats.Stats('performance.stat') +p.strip_dirs().sort_stats('tottime').print_stats(5) print("================ SPIKE-SYNC COMPUTATIONS ================") print(" MULTIVARIATE DISTANCE") -cProfile.run('spk.spike_sync_multi(spike_trains)') +cProfile.run('spk.spike_sync_multi(spike_trains)', 'performance.stat') +p = pstats.Stats('performance.stat') +p.strip_dirs().sort_stats('tottime').print_stats(5) + print(" MULTIVARIATE PROFILE") -cProfile.run('spk.spike_sync_profile_multi(spike_trains)') +cProfile.run('spk.spike_sync_profile_multi(spike_trains)', 'performance.stat') +p = pstats.Stats('performance.stat') +p.strip_dirs().sort_stats('tottime').print_stats(5) |