Skip to content

Instantly share code, notes, and snippets.

@rubik
Created April 8, 2012 18:13
Show Gist options
  • Save rubik/2338886 to your computer and use it in GitHub Desktop.
Save rubik/2338886 to your computer and use it in GitHub Desktop.
Kivy multistroke recognition profiles (with cProfile)
1964 function calls in 0.024 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.024 0.024 <string>:1(<module>)
2 0.000 0.000 0.000 0.000 clock.py:121(_hash)
2 0.000 0.000 0.000 0.000 clock.py:135(__init__)
1 0.000 0.000 0.000 0.000 clock.py:159(get_callback)
1 0.000 0.000 0.000 0.000 clock.py:178(release)
3 0.000 0.000 0.010 0.003 clock.py:182(tick)
1 0.000 0.000 0.024 0.024 clock.py:250(tick)
1 0.000 0.000 0.000 0.000 clock.py:307(get_time)
2 0.000 0.000 0.000 0.000 clock.py:326(schedule_once)
1 0.000 0.000 0.000 0.000 clock.py:373(_release_references)
1 0.000 0.000 0.010 0.010 clock.py:387(_process_events)
8 0.000 0.000 0.000 0.000 multistroke.py:1065(_get_db_key)
6 0.000 0.000 0.000 0.000 multistroke.py:1071(get_start_unit_vector)
2 0.000 0.000 0.000 0.000 multistroke.py:1074(get_vector)
1 0.000 0.000 0.000 0.000 multistroke.py:1147(__init__)
8 0.000 0.000 0.004 0.000 multistroke.py:1169(_get_db_key)
6 0.000 0.000 0.004 0.001 multistroke.py:1177(get_start_unit_vector)
2 0.000 0.000 0.000 0.000 multistroke.py:1184(get_protractor_vector)
6 0.000 0.000 0.004 0.001 multistroke.py:1192(get_angle_similarity)
1 0.000 0.000 0.004 0.004 multistroke.py:1201(prepare)
1 0.000 0.000 0.000 0.000 multistroke.py:1249(combine_strokes)
1 0.001 0.001 0.002 0.002 multistroke.py:1254(resample)
1 0.000 0.000 0.000 0.000 multistroke.py:1290(indicative_angle)
2 0.000 0.000 0.001 0.000 multistroke.py:1295(rotate_by)
1 0.000 0.000 0.000 0.000 multistroke.py:1310(scale_dim)
2 0.000 0.000 0.001 0.000 multistroke.py:1329(translate_to)
2 0.000 0.000 0.000 0.000 multistroke.py:1340(vectorize)
2 0.000 0.000 0.000 0.000 multistroke.py:1367(optimal_cosine_distance)
5 0.000 0.000 0.000 0.000 multistroke.py:1424(centroid)
1 0.000 0.000 0.000 0.000 multistroke.py:1438(bounding_box)
1 0.000 0.000 0.000 0.000 multistroke.py:1464(path_length)
94 0.001 0.000 0.001 0.000 multistroke.py:1471(distance)
2 0.000 0.000 0.000 0.000 multistroke.py:1477(start_unit_vector)
6 0.000 0.000 0.000 0.000 multistroke.py:1483(angle_between_unit_vectors)
103 0.000 0.000 0.000 0.000 multistroke.py:187(__init__)
1 0.000 0.000 0.000 0.000 multistroke.py:231(filter)
1 0.000 0.000 0.001 0.001 multistroke.py:435(recognize)
1 0.000 0.000 0.010 0.010 multistroke.py:512(_recognize_tick)
11 0.000 0.000 0.000 0.000 multistroke.py:517(_criteria)
1 0.000 0.000 0.000 0.000 multistroke.py:573(_candidate)
1 0.000 0.000 0.000 0.000 multistroke.py:601(_get_priority)
3 0.000 0.000 0.000 0.000 multistroke.py:610(_get_list)
1 0.000 0.000 0.000 0.000 multistroke.py:619(on_search_start)
1 0.000 0.000 0.000 0.000 multistroke.py:665(__init__)
2 0.000 0.000 0.000 0.000 multistroke.py:712(_add_result)
2 0.000 0.000 0.000 0.000 multistroke.py:728(score_distance)
10 0.000 0.000 0.000 0.000 multistroke.py:742(on_progress)
2 0.000 0.000 0.000 0.000 multistroke.py:745(on_result)
6 0.000 0.000 0.000 0.000 multistroke.py:843(angle_similarity_threshold)
2 0.000 0.000 0.000 0.000 multistroke.py:864(get_distance)
10 0.003 0.000 0.009 0.001 multistroke.py:885(match_candidate)
1 0.000 0.000 0.000 0.000 weakmethod.py:22(__init__)
1 0.000 0.000 0.000 0.000 weakmethod.py:38(__call__)
2 0.000 0.000 0.000 0.000 weakmethod.py:53(is_dead)
7 0.000 0.000 0.000 0.000 {isinstance}
1197 0.002 0.000 0.002 0.000 {len}
8 0.000 0.000 0.000 0.000 {math.acos}
2 0.000 0.000 0.000 0.000 {math.atan2}
2 0.000 0.000 0.000 0.000 {math.atan}
5 0.000 0.000 0.000 0.000 {math.cos}
1 0.000 0.000 0.000 0.000 {math.floor}
6 0.000 0.000 0.000 0.000 {math.radians}
5 0.000 0.000 0.000 0.000 {math.sin}
98 0.000 0.000 0.000 0.000 {math.sqrt}
52 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
161 0.000 0.000 0.000 0.000 {method 'append' of 'list' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
13 0.000 0.000 0.000 0.000 {method 'dispatch' of 'kivy._event.EventDispatcher' objects}
21 0.000 0.000 0.000 0.000 {method 'get' of 'dict' objects}
14 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}
2 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
3 0.000 0.000 0.000 0.000 {method 'register_event_type' of 'kivy._event.EventDispatcher' objects}
1 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}
1 0.000 0.000 0.000 0.000 {min}
12 0.000 0.000 0.000 0.000 {range}
1 0.013 0.013 0.013 0.013 {time.sleep}
2 0.000 0.000 0.000 0.000 {time.time}
2026 function calls in 0.027 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.027 0.027 <string>:1(<module>)
2 0.000 0.000 0.000 0.000 clock.py:121(_hash)
2 0.000 0.000 0.000 0.000 clock.py:135(__init__)
1 0.000 0.000 0.000 0.000 clock.py:159(get_callback)
1 0.000 0.000 0.000 0.000 clock.py:178(release)
3 0.000 0.000 0.010 0.003 clock.py:182(tick)
1 0.000 0.000 0.026 0.026 clock.py:250(tick)
1 0.000 0.000 0.000 0.000 clock.py:307(get_time)
2 0.000 0.000 0.000 0.000 clock.py:326(schedule_once)
1 0.000 0.000 0.000 0.000 clock.py:373(_release_references)
1 0.000 0.000 0.010 0.010 clock.py:387(_process_events)
9 0.000 0.000 0.000 0.000 multistroke.py:1065(_get_db_key)
6 0.000 0.000 0.000 0.000 multistroke.py:1071(get_start_unit_vector)
3 0.000 0.000 0.000 0.000 multistroke.py:1074(get_vector)
1 0.000 0.000 0.000 0.000 multistroke.py:1147(__init__)
9 0.000 0.000 0.004 0.000 multistroke.py:1169(_get_db_key)
6 0.000 0.000 0.004 0.001 multistroke.py:1177(get_start_unit_vector)
3 0.000 0.000 0.000 0.000 multistroke.py:1184(get_protractor_vector)
6 0.000 0.000 0.004 0.001 multistroke.py:1192(get_angle_similarity)
1 0.000 0.000 0.004 0.004 multistroke.py:1201(prepare)
1 0.000 0.000 0.000 0.000 multistroke.py:1249(combine_strokes)
1 0.001 0.001 0.002 0.002 multistroke.py:1254(resample)
1 0.000 0.000 0.000 0.000 multistroke.py:1290(indicative_angle)
2 0.000 0.000 0.001 0.000 multistroke.py:1295(rotate_by)
1 0.000 0.000 0.000 0.000 multistroke.py:1310(scale_dim)
2 0.000 0.000 0.001 0.000 multistroke.py:1329(translate_to)
2 0.000 0.000 0.000 0.000 multistroke.py:1340(vectorize)
3 0.000 0.000 0.000 0.000 multistroke.py:1367(optimal_cosine_distance)
5 0.000 0.000 0.000 0.000 multistroke.py:1424(centroid)
1 0.000 0.000 0.000 0.000 multistroke.py:1438(bounding_box)
1 0.000 0.000 0.001 0.001 multistroke.py:1464(path_length)
112 0.001 0.000 0.001 0.000 multistroke.py:1471(distance)
2 0.000 0.000 0.000 0.000 multistroke.py:1477(start_unit_vector)
6 0.000 0.000 0.000 0.000 multistroke.py:1483(angle_between_unit_vectors)
103 0.000 0.000 0.000 0.000 multistroke.py:187(__init__)
1 0.000 0.000 0.000 0.000 multistroke.py:231(filter)
1 0.000 0.000 0.001 0.001 multistroke.py:435(recognize)
1 0.000 0.000 0.010 0.010 multistroke.py:512(_recognize_tick)
11 0.000 0.000 0.000 0.000 multistroke.py:517(_criteria)
1 0.000 0.000 0.000 0.000 multistroke.py:573(_candidate)
1 0.000 0.000 0.000 0.000 multistroke.py:601(_get_priority)
3 0.000 0.000 0.000 0.000 multistroke.py:610(_get_list)
1 0.000 0.000 0.000 0.000 multistroke.py:619(on_search_start)
1 0.000 0.000 0.000 0.000 multistroke.py:665(__init__)
3 0.000 0.000 0.000 0.000 multistroke.py:712(_add_result)
3 0.000 0.000 0.000 0.000 multistroke.py:728(score_distance)
10 0.000 0.000 0.000 0.000 multistroke.py:742(on_progress)
3 0.000 0.000 0.000 0.000 multistroke.py:745(on_result)
6 0.000 0.000 0.000 0.000 multistroke.py:843(angle_similarity_threshold)
3 0.000 0.000 0.000 0.000 multistroke.py:864(get_distance)
10 0.003 0.000 0.010 0.001 multistroke.py:885(match_candidate)
1 0.000 0.000 0.000 0.000 weakmethod.py:22(__init__)
1 0.000 0.000 0.000 0.000 weakmethod.py:38(__call__)
2 0.000 0.000 0.000 0.000 weakmethod.py:53(is_dead)
7 0.000 0.000 0.000 0.000 {isinstance}
1207 0.002 0.000 0.002 0.000 {len}
9 0.000 0.000 0.000 0.000 {math.acos}
2 0.000 0.000 0.000 0.000 {math.atan2}
3 0.000 0.000 0.000 0.000 {math.atan}
6 0.000 0.000 0.000 0.000 {math.cos}
1 0.000 0.000 0.000 0.000 {math.floor}
6 0.000 0.000 0.000 0.000 {math.radians}
6 0.000 0.000 0.000 0.000 {math.sin}
116 0.000 0.000 0.000 0.000 {math.sqrt}
52 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
161 0.000 0.000 0.000 0.000 {method 'append' of 'list' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
14 0.000 0.000 0.000 0.000 {method 'dispatch' of 'kivy._event.EventDispatcher' objects}
22 0.000 0.000 0.000 0.000 {method 'get' of 'dict' objects}
14 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}
2 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
3 0.000 0.000 0.000 0.000 {method 'register_event_type' of 'kivy._event.EventDispatcher' objects}
1 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}
1 0.000 0.000 0.000 0.000 {min}
13 0.000 0.000 0.000 0.000 {range}
1 0.016 0.016 0.016 0.016 {time.sleep}
2 0.000 0.000 0.000 0.000 {time.time}
2158 function calls in 0.027 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.027 0.027 <string>:1(<module>)
2 0.000 0.000 0.000 0.000 clock.py:121(_hash)
2 0.000 0.000 0.000 0.000 clock.py:135(__init__)
1 0.000 0.000 0.000 0.000 clock.py:159(get_callback)
1 0.000 0.000 0.000 0.000 clock.py:178(release)
3 0.000 0.000 0.010 0.003 clock.py:182(tick)
1 0.000 0.000 0.026 0.026 clock.py:250(tick)
1 0.000 0.000 0.000 0.000 clock.py:307(get_time)
2 0.000 0.000 0.000 0.000 clock.py:326(schedule_once)
1 0.000 0.000 0.000 0.000 clock.py:373(_release_references)
1 0.000 0.000 0.010 0.010 clock.py:387(_process_events)
28 0.000 0.000 0.000 0.000 multistroke.py:1065(_get_db_key)
24 0.000 0.000 0.000 0.000 multistroke.py:1071(get_start_unit_vector)
4 0.000 0.000 0.000 0.000 multistroke.py:1074(get_vector)
1 0.000 0.000 0.000 0.000 multistroke.py:1147(__init__)
28 0.000 0.000 0.004 0.000 multistroke.py:1169(_get_db_key)
24 0.000 0.000 0.004 0.000 multistroke.py:1177(get_start_unit_vector)
4 0.000 0.000 0.000 0.000 multistroke.py:1184(get_protractor_vector)
24 0.000 0.000 0.005 0.000 multistroke.py:1192(get_angle_similarity)
1 0.000 0.000 0.004 0.004 multistroke.py:1201(prepare)
1 0.000 0.000 0.000 0.000 multistroke.py:1249(combine_strokes)
1 0.000 0.000 0.002 0.002 multistroke.py:1254(resample)
1 0.000 0.000 0.000 0.000 multistroke.py:1290(indicative_angle)
2 0.000 0.000 0.001 0.000 multistroke.py:1295(rotate_by)
1 0.000 0.000 0.000 0.000 multistroke.py:1310(scale_dim)
2 0.000 0.000 0.001 0.000 multistroke.py:1329(translate_to)
2 0.000 0.000 0.000 0.000 multistroke.py:1340(vectorize)
4 0.000 0.000 0.000 0.000 multistroke.py:1367(optimal_cosine_distance)
5 0.000 0.000 0.000 0.000 multistroke.py:1424(centroid)
1 0.000 0.000 0.000 0.000 multistroke.py:1438(bounding_box)
1 0.000 0.000 0.000 0.000 multistroke.py:1464(path_length)
82 0.000 0.000 0.001 0.000 multistroke.py:1471(distance)
2 0.000 0.000 0.000 0.000 multistroke.py:1477(start_unit_vector)
24 0.000 0.000 0.000 0.000 multistroke.py:1483(angle_between_unit_vectors)
103 0.000 0.000 0.000 0.000 multistroke.py:187(__init__)
1 0.000 0.000 0.000 0.000 multistroke.py:231(filter)
1 0.000 0.000 0.001 0.001 multistroke.py:435(recognize)
1 0.000 0.000 0.010 0.010 multistroke.py:512(_recognize_tick)
11 0.000 0.000 0.000 0.000 multistroke.py:517(_criteria)
1 0.000 0.000 0.000 0.000 multistroke.py:573(_candidate)
1 0.000 0.000 0.000 0.000 multistroke.py:601(_get_priority)
3 0.000 0.000 0.000 0.000 multistroke.py:610(_get_list)
1 0.000 0.000 0.000 0.000 multistroke.py:619(on_search_start)
1 0.000 0.000 0.000 0.000 multistroke.py:665(__init__)
2 0.000 0.000 0.000 0.000 multistroke.py:712(_add_result)
2 0.000 0.000 0.000 0.000 multistroke.py:728(score_distance)
10 0.000 0.000 0.000 0.000 multistroke.py:742(on_progress)
2 0.000 0.000 0.000 0.000 multistroke.py:745(on_result)
24 0.000 0.000 0.000 0.000 multistroke.py:843(angle_similarity_threshold)
4 0.000 0.000 0.000 0.000 multistroke.py:864(get_distance)
10 0.003 0.000 0.010 0.001 multistroke.py:885(match_candidate)
1 0.000 0.000 0.000 0.000 weakmethod.py:22(__init__)
1 0.000 0.000 0.000 0.000 weakmethod.py:38(__call__)
2 0.000 0.000 0.000 0.000 weakmethod.py:53(is_dead)
7 0.000 0.000 0.000 0.000 {isinstance}
1193 0.002 0.000 0.002 0.000 {len}
28 0.000 0.000 0.000 0.000 {math.acos}
2 0.000 0.000 0.000 0.000 {math.atan2}
4 0.000 0.000 0.000 0.000 {math.atan}
7 0.000 0.000 0.000 0.000 {math.cos}
1 0.000 0.000 0.000 0.000 {math.floor}
24 0.000 0.000 0.000 0.000 {math.radians}
7 0.000 0.000 0.000 0.000 {math.sin}
86 0.000 0.000 0.000 0.000 {math.sqrt}
52 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
161 0.000 0.000 0.000 0.000 {method 'append' of 'list' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
13 0.000 0.000 0.000 0.000 {method 'dispatch' of 'kivy._event.EventDispatcher' objects}
59 0.000 0.000 0.000 0.000 {method 'get' of 'dict' objects}
14 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}
2 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
3 0.000 0.000 0.000 0.000 {method 'register_event_type' of 'kivy._event.EventDispatcher' objects}
1 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}
1 0.000 0.000 0.000 0.000 {min}
14 0.000 0.000 0.000 0.000 {range}
1 0.016 0.016 0.016 0.016 {time.sleep}
2 0.000 0.000 0.000 0.000 {time.time}
4382 function calls in 0.038 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.038 0.038 <string>:1(<module>)
2 0.000 0.000 0.000 0.000 clock.py:121(_hash)
2 0.000 0.000 0.000 0.000 clock.py:135(__init__)
1 0.000 0.000 0.000 0.000 clock.py:159(get_callback)
1 0.000 0.000 0.000 0.000 clock.py:178(release)
3 0.000 0.000 0.022 0.007 clock.py:182(tick)
1 0.000 0.000 0.037 0.037 clock.py:250(tick)
1 0.000 0.000 0.000 0.000 clock.py:307(get_time)
2 0.000 0.000 0.000 0.000 clock.py:326(schedule_once)
1 0.000 0.000 0.000 0.000 clock.py:373(_release_references)
1 0.000 0.000 0.022 0.022 clock.py:387(_process_events)
198 0.001 0.000 0.001 0.000 multistroke.py:1065(_get_db_key)
144 0.001 0.000 0.001 0.000 multistroke.py:1071(get_start_unit_vector)
54 0.000 0.000 0.000 0.000 multistroke.py:1074(get_vector)
1 0.000 0.000 0.000 0.000 multistroke.py:1147(__init__)
198 0.001 0.000 0.006 0.000 multistroke.py:1169(_get_db_key)
144 0.001 0.000 0.006 0.000 multistroke.py:1177(get_start_unit_vector)
54 0.000 0.000 0.000 0.000 multistroke.py:1184(get_protractor_vector)
144 0.002 0.000 0.010 0.000 multistroke.py:1192(get_angle_similarity)
1 0.000 0.000 0.005 0.005 multistroke.py:1201(prepare)
1 0.000 0.000 0.000 0.000 multistroke.py:1249(combine_strokes)
1 0.001 0.001 0.003 0.003 multistroke.py:1254(resample)
1 0.000 0.000 0.000 0.000 multistroke.py:1290(indicative_angle)
2 0.000 0.000 0.001 0.000 multistroke.py:1295(rotate_by)
1 0.000 0.000 0.000 0.000 multistroke.py:1310(scale_dim)
2 0.000 0.000 0.001 0.000 multistroke.py:1329(translate_to)
2 0.000 0.000 0.000 0.000 multistroke.py:1340(vectorize)
54 0.003 0.000 0.003 0.000 multistroke.py:1367(optimal_cosine_distance)
5 0.000 0.000 0.000 0.000 multistroke.py:1424(centroid)
1 0.000 0.000 0.000 0.000 multistroke.py:1438(bounding_box)
1 0.000 0.000 0.001 0.001 multistroke.py:1464(path_length)
181 0.001 0.000 0.001 0.000 multistroke.py:1471(distance)
2 0.000 0.000 0.000 0.000 multistroke.py:1477(start_unit_vector)
144 0.001 0.000 0.001 0.000 multistroke.py:1483(angle_between_unit_vectors)
104 0.000 0.000 0.000 0.000 multistroke.py:187(__init__)
1 0.000 0.000 0.000 0.000 multistroke.py:231(filter)
1 0.000 0.000 0.001 0.001 multistroke.py:435(recognize)
1 0.000 0.000 0.022 0.022 multistroke.py:512(_recognize_tick)
11 0.000 0.000 0.000 0.000 multistroke.py:517(_criteria)
1 0.000 0.000 0.000 0.000 multistroke.py:573(_candidate)
1 0.000 0.000 0.000 0.000 multistroke.py:601(_get_priority)
3 0.000 0.000 0.000 0.000 multistroke.py:610(_get_list)
1 0.000 0.000 0.000 0.000 multistroke.py:619(on_search_start)
1 0.000 0.000 0.000 0.000 multistroke.py:665(__init__)
3 0.000 0.000 0.000 0.000 multistroke.py:712(_add_result)
3 0.000 0.000 0.000 0.000 multistroke.py:728(score_distance)
10 0.000 0.000 0.000 0.000 multistroke.py:742(on_progress)
3 0.000 0.000 0.000 0.000 multistroke.py:745(on_result)
144 0.001 0.000 0.001 0.000 multistroke.py:843(angle_similarity_threshold)
54 0.001 0.000 0.005 0.000 multistroke.py:864(get_distance)
10 0.004 0.000 0.022 0.002 multistroke.py:885(match_candidate)
1 0.000 0.000 0.000 0.000 weakmethod.py:22(__init__)
1 0.000 0.000 0.000 0.000 weakmethod.py:38(__call__)
2 0.000 0.000 0.000 0.000 weakmethod.py:53(is_dead)
7 0.000 0.000 0.000 0.000 {isinstance}
1293 0.002 0.000 0.002 0.000 {len}
198 0.000 0.000 0.000 0.000 {math.acos}
2 0.000 0.000 0.000 0.000 {math.atan2}
54 0.000 0.000 0.000 0.000 {math.atan}
57 0.000 0.000 0.000 0.000 {math.cos}
1 0.000 0.000 0.000 0.000 {math.floor}
144 0.000 0.000 0.000 0.000 {math.radians}
57 0.000 0.000 0.000 0.000 {math.sin}
185 0.000 0.000 0.000 0.000 {math.sqrt}
52 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
161 0.000 0.000 0.000 0.000 {method 'append' of 'list' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
14 0.000 0.000 0.000 0.000 {method 'dispatch' of 'kivy._event.EventDispatcher' objects}
349 0.001 0.000 0.001 0.000 {method 'get' of 'dict' objects}
15 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}
2 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
3 0.000 0.000 0.000 0.000 {method 'register_event_type' of 'kivy._event.EventDispatcher' objects}
1 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}
1 0.000 0.000 0.000 0.000 {min}
64 0.000 0.000 0.000 0.000 {range}
1 0.015 0.015 0.015 0.015 {time.sleep}
2 0.000 0.000 0.000 0.000 {time.time}
1991 function calls in 0.030 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.030 0.030 <string>:1(<module>)
2 0.000 0.000 0.000 0.000 clock.py:121(_hash)
2 0.000 0.000 0.000 0.000 clock.py:135(__init__)
1 0.000 0.000 0.000 0.000 clock.py:159(get_callback)
1 0.000 0.000 0.000 0.000 clock.py:178(release)
3 0.000 0.000 0.014 0.005 clock.py:182(tick)
1 0.000 0.000 0.030 0.030 clock.py:250(tick)
1 0.000 0.000 0.000 0.000 clock.py:307(get_time)
2 0.000 0.000 0.000 0.000 clock.py:326(schedule_once)
1 0.000 0.000 0.000 0.000 clock.py:373(_release_references)
1 0.000 0.000 0.014 0.014 clock.py:387(_process_events)
9 0.000 0.000 0.000 0.000 multistroke.py:1065(_get_db_key)
6 0.000 0.000 0.000 0.000 multistroke.py:1071(get_start_unit_vector)
3 0.000 0.000 0.000 0.000 multistroke.py:1074(get_vector)
1 0.000 0.000 0.000 0.000 multistroke.py:1147(__init__)
9 0.000 0.000 0.008 0.001 multistroke.py:1169(_get_db_key)
6 0.000 0.000 0.008 0.001 multistroke.py:1177(get_start_unit_vector)
3 0.000 0.000 0.000 0.000 multistroke.py:1184(get_protractor_vector)
6 0.000 0.000 0.009 0.001 multistroke.py:1192(get_angle_similarity)
1 0.000 0.000 0.008 0.008 multistroke.py:1201(prepare)
1 0.000 0.000 0.000 0.000 multistroke.py:1249(combine_strokes)
1 0.001 0.001 0.002 0.002 multistroke.py:1254(resample)
1 0.000 0.000 0.000 0.000 multistroke.py:1290(indicative_angle)
2 0.005 0.002 0.005 0.002 multistroke.py:1295(rotate_by)
1 0.000 0.000 0.000 0.000 multistroke.py:1310(scale_dim)
2 0.000 0.000 0.001 0.000 multistroke.py:1329(translate_to)
2 0.000 0.000 0.000 0.000 multistroke.py:1340(vectorize)
3 0.000 0.000 0.000 0.000 multistroke.py:1367(optimal_cosine_distance)
5 0.000 0.000 0.000 0.000 multistroke.py:1424(centroid)
1 0.000 0.000 0.000 0.000 multistroke.py:1438(bounding_box)
1 0.000 0.000 0.000 0.000 multistroke.py:1464(path_length)
98 0.001 0.000 0.001 0.000 multistroke.py:1471(distance)
2 0.000 0.000 0.000 0.000 multistroke.py:1477(start_unit_vector)
6 0.000 0.000 0.000 0.000 multistroke.py:1483(angle_between_unit_vectors)
103 0.000 0.000 0.000 0.000 multistroke.py:187(__init__)
1 0.000 0.000 0.000 0.000 multistroke.py:231(filter)
1 0.000 0.000 0.001 0.001 multistroke.py:435(recognize)
1 0.000 0.000 0.014 0.014 multistroke.py:512(_recognize_tick)
11 0.000 0.000 0.000 0.000 multistroke.py:517(_criteria)
1 0.000 0.000 0.000 0.000 multistroke.py:573(_candidate)
1 0.000 0.000 0.000 0.000 multistroke.py:601(_get_priority)
3 0.000 0.000 0.000 0.000 multistroke.py:610(_get_list)
1 0.000 0.000 0.000 0.000 multistroke.py:619(on_search_start)
1 0.000 0.000 0.000 0.000 multistroke.py:665(__init__)
3 0.000 0.000 0.000 0.000 multistroke.py:712(_add_result)
3 0.000 0.000 0.000 0.000 multistroke.py:728(score_distance)
10 0.000 0.000 0.000 0.000 multistroke.py:742(on_progress)
3 0.000 0.000 0.000 0.000 multistroke.py:745(on_result)
6 0.000 0.000 0.000 0.000 multistroke.py:843(angle_similarity_threshold)
3 0.000 0.000 0.000 0.000 multistroke.py:864(get_distance)
10 0.003 0.000 0.013 0.001 multistroke.py:885(match_candidate)
1 0.000 0.000 0.000 0.000 weakmethod.py:22(__init__)
1 0.000 0.000 0.000 0.000 weakmethod.py:38(__call__)
2 0.000 0.000 0.000 0.000 weakmethod.py:53(is_dead)
7 0.000 0.000 0.000 0.000 {isinstance}
1200 0.002 0.000 0.002 0.000 {len}
9 0.000 0.000 0.000 0.000 {math.acos}
2 0.000 0.000 0.000 0.000 {math.atan2}
3 0.000 0.000 0.000 0.000 {math.atan}
6 0.000 0.000 0.000 0.000 {math.cos}
1 0.000 0.000 0.000 0.000 {math.floor}
6 0.000 0.000 0.000 0.000 {math.radians}
6 0.000 0.000 0.000 0.000 {math.sin}
102 0.000 0.000 0.000 0.000 {math.sqrt}
52 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
161 0.000 0.000 0.000 0.000 {method 'append' of 'list' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
14 0.000 0.000 0.000 0.000 {method 'dispatch' of 'kivy._event.EventDispatcher' objects}
22 0.000 0.000 0.000 0.000 {method 'get' of 'dict' objects}
14 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}
2 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
3 0.000 0.000 0.000 0.000 {method 'register_event_type' of 'kivy._event.EventDispatcher' objects}
1 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}
1 0.000 0.000 0.000 0.000 {min}
13 0.000 0.000 0.000 0.000 {range}
1 0.016 0.016 0.016 0.016 {time.sleep}
2 0.000 0.000 0.000 0.000 {time.time}
1956 function calls in 0.025 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.025 0.025 <string>:1(<module>)
2 0.000 0.000 0.000 0.000 clock.py:121(_hash)
2 0.000 0.000 0.000 0.000 clock.py:135(__init__)
1 0.000 0.000 0.000 0.000 clock.py:159(get_callback)
1 0.000 0.000 0.000 0.000 clock.py:178(release)
3 0.000 0.000 0.008 0.003 clock.py:182(tick)
1 0.000 0.000 0.024 0.024 clock.py:250(tick)
1 0.000 0.000 0.000 0.000 clock.py:307(get_time)
2 0.000 0.000 0.000 0.000 clock.py:326(schedule_once)
1 0.000 0.000 0.000 0.000 clock.py:373(_release_references)
1 0.000 0.000 0.009 0.009 clock.py:387(_process_events)
9 0.000 0.000 0.000 0.000 multistroke.py:1065(_get_db_key)
6 0.000 0.000 0.000 0.000 multistroke.py:1071(get_start_unit_vector)
3 0.000 0.000 0.000 0.000 multistroke.py:1074(get_vector)
1 0.000 0.000 0.000 0.000 multistroke.py:1147(__init__)
9 0.000 0.000 0.004 0.000 multistroke.py:1169(_get_db_key)
6 0.000 0.000 0.004 0.001 multistroke.py:1177(get_start_unit_vector)
3 0.000 0.000 0.000 0.000 multistroke.py:1184(get_protractor_vector)
6 0.000 0.000 0.004 0.001 multistroke.py:1192(get_angle_similarity)
1 0.000 0.000 0.004 0.004 multistroke.py:1201(prepare)
1 0.000 0.000 0.000 0.000 multistroke.py:1249(combine_strokes)
1 0.001 0.001 0.002 0.002 multistroke.py:1254(resample)
1 0.000 0.000 0.000 0.000 multistroke.py:1290(indicative_angle)
2 0.000 0.000 0.001 0.000 multistroke.py:1295(rotate_by)
1 0.000 0.000 0.000 0.000 multistroke.py:1310(scale_dim)
2 0.000 0.000 0.001 0.000 multistroke.py:1329(translate_to)
2 0.000 0.000 0.000 0.000 multistroke.py:1340(vectorize)
3 0.000 0.000 0.000 0.000 multistroke.py:1367(optimal_cosine_distance)
5 0.000 0.000 0.000 0.000 multistroke.py:1424(centroid)
1 0.000 0.000 0.000 0.000 multistroke.py:1438(bounding_box)
1 0.000 0.000 0.000 0.000 multistroke.py:1464(path_length)
84 0.001 0.000 0.001 0.000 multistroke.py:1471(distance)
2 0.000 0.000 0.000 0.000 multistroke.py:1477(start_unit_vector)
6 0.000 0.000 0.000 0.000 multistroke.py:1483(angle_between_unit_vectors)
103 0.000 0.000 0.000 0.000 multistroke.py:187(__init__)
1 0.000 0.000 0.000 0.000 multistroke.py:231(filter)
1 0.000 0.000 0.001 0.001 multistroke.py:435(recognize)
1 0.000 0.000 0.008 0.008 multistroke.py:512(_recognize_tick)
11 0.000 0.000 0.000 0.000 multistroke.py:517(_criteria)
1 0.000 0.000 0.000 0.000 multistroke.py:573(_candidate)
1 0.000 0.000 0.000 0.000 multistroke.py:601(_get_priority)
3 0.000 0.000 0.000 0.000 multistroke.py:610(_get_list)
1 0.000 0.000 0.000 0.000 multistroke.py:619(on_search_start)
1 0.000 0.000 0.000 0.000 multistroke.py:665(__init__)
3 0.000 0.000 0.000 0.000 multistroke.py:712(_add_result)
3 0.000 0.000 0.000 0.000 multistroke.py:728(score_distance)
10 0.000 0.000 0.000 0.000 multistroke.py:742(on_progress)
3 0.000 0.000 0.000 0.000 multistroke.py:745(on_result)
6 0.000 0.000 0.000 0.000 multistroke.py:843(angle_similarity_threshold)
3 0.000 0.000 0.000 0.000 multistroke.py:864(get_distance)
10 0.002 0.000 0.008 0.001 multistroke.py:885(match_candidate)
1 0.000 0.000 0.000 0.000 weakmethod.py:22(__init__)
1 0.000 0.000 0.000 0.000 weakmethod.py:38(__call__)
2 0.000 0.000 0.000 0.000 weakmethod.py:53(is_dead)
7 0.000 0.000 0.000 0.000 {isinstance}
1193 0.002 0.000 0.002 0.000 {len}
9 0.000 0.000 0.000 0.000 {math.acos}
2 0.000 0.000 0.000 0.000 {math.atan2}
3 0.000 0.000 0.000 0.000 {math.atan}
6 0.000 0.000 0.000 0.000 {math.cos}
1 0.000 0.000 0.000 0.000 {math.floor}
6 0.000 0.000 0.000 0.000 {math.radians}
6 0.000 0.000 0.000 0.000 {math.sin}
88 0.000 0.000 0.000 0.000 {math.sqrt}
52 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
161 0.000 0.000 0.000 0.000 {method 'append' of 'list' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
14 0.000 0.000 0.000 0.000 {method 'dispatch' of 'kivy._event.EventDispatcher' objects}
22 0.000 0.000 0.000 0.000 {method 'get' of 'dict' objects}
14 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}
2 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
3 0.000 0.000 0.000 0.000 {method 'register_event_type' of 'kivy._event.EventDispatcher' objects}
1 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}
1 0.000 0.000 0.000 0.000 {min}
13 0.000 0.000 0.000 0.000 {range}
1 0.016 0.016 0.016 0.016 {time.sleep}
2 0.000 0.000 0.000 0.000 {time.time}
1969 function calls in 0.026 seconds
Ordered by: standard name
ncalls tottime percall cumtime percall filename:lineno(function)
1 0.000 0.000 0.026 0.026 <string>:1(<module>)
2 0.000 0.000 0.000 0.000 clock.py:121(_hash)
2 0.000 0.000 0.000 0.000 clock.py:135(__init__)
1 0.000 0.000 0.000 0.000 clock.py:159(get_callback)
1 0.000 0.000 0.000 0.000 clock.py:178(release)
3 0.000 0.000 0.010 0.003 clock.py:182(tick)
1 0.000 0.000 0.025 0.025 clock.py:250(tick)
1 0.000 0.000 0.000 0.000 clock.py:307(get_time)
2 0.000 0.000 0.000 0.000 clock.py:326(schedule_once)
1 0.000 0.000 0.000 0.000 clock.py:373(_release_references)
1 0.000 0.000 0.010 0.010 clock.py:387(_process_events)
8 0.000 0.000 0.000 0.000 multistroke.py:1065(_get_db_key)
6 0.000 0.000 0.000 0.000 multistroke.py:1071(get_start_unit_vector)
2 0.000 0.000 0.000 0.000 multistroke.py:1074(get_vector)
1 0.000 0.000 0.000 0.000 multistroke.py:1147(__init__)
8 0.000 0.000 0.004 0.000 multistroke.py:1169(_get_db_key)
6 0.000 0.000 0.004 0.001 multistroke.py:1177(get_start_unit_vector)
2 0.000 0.000 0.000 0.000 multistroke.py:1184(get_protractor_vector)
6 0.000 0.000 0.004 0.001 multistroke.py:1192(get_angle_similarity)
1 0.000 0.000 0.004 0.004 multistroke.py:1201(prepare)
1 0.000 0.000 0.000 0.000 multistroke.py:1249(combine_strokes)
1 0.001 0.001 0.002 0.002 multistroke.py:1254(resample)
1 0.000 0.000 0.000 0.000 multistroke.py:1290(indicative_angle)
2 0.000 0.000 0.001 0.000 multistroke.py:1295(rotate_by)
1 0.000 0.000 0.000 0.000 multistroke.py:1310(scale_dim)
2 0.000 0.000 0.001 0.000 multistroke.py:1329(translate_to)
2 0.000 0.000 0.000 0.000 multistroke.py:1340(vectorize)
2 0.000 0.000 0.000 0.000 multistroke.py:1367(optimal_cosine_distance)
5 0.000 0.000 0.000 0.000 multistroke.py:1424(centroid)
1 0.000 0.000 0.000 0.000 multistroke.py:1438(bounding_box)
1 0.000 0.000 0.000 0.000 multistroke.py:1464(path_length)
96 0.001 0.000 0.001 0.000 multistroke.py:1471(distance)
2 0.000 0.000 0.000 0.000 multistroke.py:1477(start_unit_vector)
6 0.000 0.000 0.000 0.000 multistroke.py:1483(angle_between_unit_vectors)
103 0.000 0.000 0.000 0.000 multistroke.py:187(__init__)
1 0.000 0.000 0.000 0.000 multistroke.py:231(filter)
1 0.000 0.000 0.001 0.001 multistroke.py:435(recognize)
1 0.000 0.000 0.010 0.010 multistroke.py:512(_recognize_tick)
11 0.000 0.000 0.000 0.000 multistroke.py:517(_criteria)
1 0.000 0.000 0.000 0.000 multistroke.py:573(_candidate)
1 0.000 0.000 0.000 0.000 multistroke.py:601(_get_priority)
3 0.000 0.000 0.000 0.000 multistroke.py:610(_get_list)
1 0.000 0.000 0.000 0.000 multistroke.py:619(on_search_start)
1 0.000 0.000 0.000 0.000 multistroke.py:665(__init__)
2 0.000 0.000 0.000 0.000 multistroke.py:712(_add_result)
2 0.000 0.000 0.000 0.000 multistroke.py:728(score_distance)
10 0.000 0.000 0.000 0.000 multistroke.py:742(on_progress)
2 0.000 0.000 0.000 0.000 multistroke.py:745(on_result)
6 0.000 0.000 0.000 0.000 multistroke.py:843(angle_similarity_threshold)
2 0.000 0.000 0.000 0.000 multistroke.py:864(get_distance)
10 0.003 0.000 0.009 0.001 multistroke.py:885(match_candidate)
1 0.000 0.000 0.000 0.000 weakmethod.py:22(__init__)
1 0.000 0.000 0.000 0.000 weakmethod.py:38(__call__)
2 0.000 0.000 0.000 0.000 weakmethod.py:53(is_dead)
7 0.000 0.000 0.000 0.000 {isinstance}
1198 0.002 0.000 0.002 0.000 {len}
8 0.000 0.000 0.000 0.000 {math.acos}
2 0.000 0.000 0.000 0.000 {math.atan2}
2 0.000 0.000 0.000 0.000 {math.atan}
5 0.000 0.000 0.000 0.000 {math.cos}
1 0.000 0.000 0.000 0.000 {math.floor}
6 0.000 0.000 0.000 0.000 {math.radians}
5 0.000 0.000 0.000 0.000 {math.sin}
100 0.000 0.000 0.000 0.000 {math.sqrt}
52 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
161 0.000 0.000 0.000 0.000 {method 'append' of 'list' objects}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
13 0.000 0.000 0.000 0.000 {method 'dispatch' of 'kivy._event.EventDispatcher' objects}
21 0.000 0.000 0.000 0.000 {method 'get' of 'dict' objects}
14 0.000 0.000 0.000 0.000 {method 'insert' of 'list' objects}
2 0.000 0.000 0.000 0.000 {method 'keys' of 'dict' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
3 0.000 0.000 0.000 0.000 {method 'register_event_type' of 'kivy._event.EventDispatcher' objects}
1 0.000 0.000 0.000 0.000 {method 'remove' of 'list' objects}
1 0.000 0.000 0.000 0.000 {min}
12 0.000 0.000 0.000 0.000 {range}
1 0.016 0.016 0.016 0.016 {time.sleep}
2 0.000 0.000 0.000 0.000 {time.time}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment