summaryrefslogtreecommitdiff
path: root/examples/performance.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/performance.py')
-rw-r--r--examples/performance.py29
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)