1- """A Streamlit visualization panel for the perf_check .py example script.""" 
1+ """A Streamlit visualization panel for the performance_checker .py example script.""" 
22
33import  statistics 
44import  time 
@@ -51,6 +51,16 @@ def measure_get_value_time(
5151    if  len (st .session_state .refresh_history ) >  10 :
5252        st .session_state .refresh_history .pop (0 )
5353
54+ if  st .session_state .refresh_history :
55+     refresh_history  =  st .session_state .refresh_history 
56+ else :
57+     refresh_history  =  []
58+ 
59+ # Calculate statistics for refresh 
60+ min_refresh_time  =  min (refresh_history ) if  refresh_history  else  0 
61+ max_refresh_time  =  max (refresh_history ) if  refresh_history  else  0 
62+ avg_refresh_time  =  statistics .mean (refresh_history ) if  refresh_history  else  0 
63+ 
5464panel  =  nipanel .get_panel_accessor ()
5565
5666# Measure time to get each value 
@@ -60,16 +70,6 @@ def measure_get_value_time(
6070frequency , frequency_ms  =  measure_get_value_time (panel , "frequency" , 1.0 )
6171unset_value , unset_value_ms  =  measure_get_value_time (panel , "unset_value" , "default" )
6272
63- if  st .session_state .refresh_history :
64-     history  =  st .session_state .refresh_history 
65- else :
66-     history  =  []
67- 
68- # Calculate statistics 
69- min_time  =  min (history ) if  history  else  0 
70- max_time  =  max (history ) if  history  else  0 
71- avg_time  =  statistics .mean (history ) if  history  else  0 
72- 
7373# Prepare data for echarts 
7474data  =  [{"value" : [x , y ]} for  x , y  in  zip (time_points , sine_values )]
7575
@@ -108,9 +108,9 @@ def measure_get_value_time(
108108    st .metric ("Frequency" , f"{ frequency :.2f}  )
109109with  col2 :
110110    st .metric ("Refresh Time" , f"{ time_since_last_refresh :.1f}  )
111-     st .metric ("Min Refresh Time" , f"{ min_time :.1f}  )
112-     st .metric ("Max Refresh Time" , f"{ max_time :.1f}  )
113-     st .metric ("Avg Refresh Time" , f"{ avg_time :.1f}  )
111+     st .metric ("Min Refresh Time" , f"{ min_refresh_time :.1f}  )
112+     st .metric ("Max Refresh Time" , f"{ max_refresh_time :.1f}  )
113+     st .metric ("Avg Refresh Time" , f"{ avg_refresh_time :.1f}  )
114114
115115with  col3 :
116116    st .metric ("get time_points" , f"{ time_points_ms :.1f}  )
0 commit comments