@@ -193,11 +193,11 @@ def tuple_of_secondary_keys(params: BMParams) -> Tuple:
193193 return tuple (secondaryKeys )
194194
195195
196- def plot_all_results (params : BMParams , resultSets : ResultSets , path , include_benchmarks : str , exclude_benchmarks : str , label : str , subselection : str , system_info : str ) -> None :
196+ def plot_all_results (params : BMParams , xaxisparam : Dict , result_sets : ResultSets , path , include_benchmarks : str , exclude_benchmarks : str , label : str , value_size_title : str , system_info : str ) -> None :
197197 indexKeys = tuple_of_secondary_keys (params )
198- for indexTuple , resultSet in resultSets .items ():
199- plot_result_set (indexKeys , indexTuple , resultSet ,
200- path , include_benchmarks , exclude_benchmarks , label , subselection , system_info )
198+ for indexTuple , resultSet in result_sets .items ():
199+ plot_result_set (xaxisparam , indexKeys , indexTuple , resultSet ,
200+ path , include_benchmarks , exclude_benchmarks , label , value_size_title , system_info )
201201
202202
203203def plot_result_axis_errorbars (ax , resultSet : ResultSet ) -> None :
@@ -256,7 +256,7 @@ def plot_result_axis_bars(ax, resultSet: ResultSet) -> None:
256256 bmIndex = bmIndex + 1
257257
258258
259- def plot_result_set (indexKeys : Tuple , indexTuple : Tuple , resultSet : ResultSet , path : pathlib .Path , include_benchmarks : str , exclude_benchmarks : str , label : str , subselection : str , system_info : str ):
259+ def plot_result_set (xaxisparam : Dict , indexKeys : Tuple , indexTuple : Tuple , resultSet : ResultSet , path : pathlib .Path , include_benchmarks : str , exclude_benchmarks : str , label : str , value_size_title : str , system_info : str ):
260260 # Determine how many colors we need
261261 num_benchmarks = len (resultSet )
262262
@@ -274,9 +274,9 @@ def plot_result_set(indexKeys: Tuple, indexTuple: Tuple, resultSet: ResultSet, p
274274 plot_result_axis_bars (ax , resultSet )
275275
276276 plt .suptitle (system_info )
277- title = f'{ str (indexKeys )} ={ str (indexTuple )} include={ include_benchmarks } exclude={ exclude_benchmarks } subselection ="{ subselection } "'
277+ title = f'{ str (indexKeys )} ={ str (indexTuple )} include={ include_benchmarks } exclude={ exclude_benchmarks } Value Size ="{ value_size_title } "'
278278 plt .title (title )
279- plt .xlabel ("# Operations" )
279+ plt .xlabel (extract_parameter_name ( xaxisparam ) )
280280 plt .ylabel ("t (ns)" )
281281 plt .legend (loc = 'upper left' , bbox_to_anchor = (1 , 1 ))
282282 plt .grid (visible = 'True' , which = 'both' )
@@ -322,7 +322,7 @@ def filter_for_benchmarks(dataframe: DataFrame, include_benchmarks, exclude_benc
322322
323323def filter_for_range (dataframe : DataFrame , xaxisparam : Dict ) -> DataFrame :
324324
325- param_name = required ( 'name' , xaxisparam )
325+ param_name = extract_parameter_name ( xaxisparam )
326326 xmin = optional ('min' , xaxisparam , lambda x : int (x ))
327327 xmax = optional ('max' , xaxisparam , lambda x : int (x ))
328328 if xmax is None and xmin is None :
@@ -340,6 +340,14 @@ def filter_for_range(dataframe: DataFrame, xaxisparam: Dict) -> DataFrame:
340340 lambda x : int (x ) >= xmin and int (x ) <= xmax )]
341341
342342
343+ def extract_parameter_name (xaxisparam ):
344+ return required ('name' , xaxisparam )
345+
346+
347+ def default_if_none (optional_string , default_value : str ) -> str :
348+ return default_value if optional_string is None else optional_string
349+
350+
343351def process_some_plots (path : pathlib .Path , plot : Dict ) -> None :
344352
345353 xaxisparam = required ('xaxisparam' , plot )
@@ -348,7 +356,7 @@ def process_some_plots(path: pathlib.Path, plot: Dict) -> None:
348356 include_benchmarks = optional ('include_patterns' , plot )
349357 exclude_benchmarks = optional ('exclude_patterns' , plot )
350358 label = required ('label' , plot )
351- subselection = optional ('subselection ' , plot )
359+ value_size_title = default_if_none ( optional ('valueSizeTitle ' , plot ), "All" )
352360
353361 # Check for system_info.json in the path
354362 system_info = None
@@ -388,8 +396,8 @@ def process_some_plots(path: pathlib.Path, plot: Dict) -> None:
388396 params : BMParams = split_params (
389397 extract_params (dataframe ), primary_param_name )
390398 resultSets = extract_results_per_param (dataframe , params )
391- plot_all_results (params , resultSets , path ,
392- include_benchmarks , exclude_benchmarks , label , subselection , system_info )
399+ plot_all_results (params , xaxisparam , resultSets , path ,
400+ include_benchmarks , exclude_benchmarks , label , value_size_title , system_info )
393401
394402
395403def process_benchmarks (config : Dict ) -> None :
0 commit comments