Skip to content

Instantly share code, notes, and snippets.

@immerrr
Last active August 29, 2015 13:56
Show Gist options
  • Save immerrr/8981303 to your computer and use it in GitHub Desktop.
Save immerrr/8981303 to your computer and use it in GitHub Desktop.
pydata/pandas #6341 benchmark results
```
-------------------------------------------------------------------------------
Test name | head[ms] | base[ms] | ratio |
-------------------------------------------------------------------------------
series_getitem_slice | 2.9786 | 5.7360 | 0.5193 |
stats_rank_average | 27.0567 | 29.3260 | 0.9226 |
frame_get_dtype_counts | 0.1136 | 0.1224 | 0.9286 |
frame_xs_row | 0.0560 | 0.0587 | 0.9540 |
frame_xs_col | 0.0360 | 0.0377 | 0.9557 |
frame_getitem_single_column | 35.6120 | 37.2477 | 0.9561 |
frame_getitem_single_column2 | 34.3836 | 35.7103 | 0.9628 |
dataframe_resample_mean_numpy | 2.3324 | 2.4117 | 0.9671 |
series_constructor_ndarray | 0.0213 | 0.0220 | 0.9675 |
frame_nonunique_unequal | 0.0106 | 0.0110 | 0.9710 |
datamatrix_getitem_scalar | 0.0110 | 0.0114 | 0.9720 |
dataframe_getitem_scalar | 0.0113 | 0.0116 | 0.9726 |
eval_frame_add_one_thread | 9.8827 | 10.1573 | 0.9730 |
packers_write_pickle | 4.1463 | 4.2557 | 0.9743 |
ctor_index_array_string | 0.0250 | 0.0257 | 0.9752 |
packers_read_pickle | 0.6903 | 0.7073 | 0.9760 |
timeseries_add_irregular | 20.3273 | 20.8189 | 0.9764 |
timeseries_large_lookup_value | 0.0310 | 0.0316 | 0.9799 |
frame_drop_dup_na_inplace | 2.9147 | 2.9730 | 0.9804 |
groupby_frame_apply | 75.6013 | 77.1123 | 0.9804 |
panel_from_dict_two_different_indexes | 52.8904 | 53.8947 | 0.9814 |
timeseries_timestamp_tzinfo_cons | 0.0170 | 0.0173 | 0.9817 |
frame_apply_ref_by_name | 15.7433 | 16.0100 | 0.9833 |
reindex_daterange_backfill | 1.4527 | 1.4770 | 0.9835 |
datetimeindex_add_offset | 0.2040 | 0.2073 | 0.9839 |
reindex_fillna_backfill | 0.6813 | 0.6917 | 0.9851 |
eval_frame_mult_one_thread | 10.0507 | 10.2010 | 0.9853 |
frame_iloc_big | 0.2937 | 0.2979 | 0.9859 |
frame_assign_timeseries_index | 0.6830 | 0.6924 | 0.9865 |
frame_from_series | 0.0753 | 0.0764 | 0.9865 |
groupby_apply_dict_return | 42.9320 | 43.4883 | 0.9872 |
groupby_frame_apply_overhead | 15.3780 | 15.5760 | 0.9873 |
groupby_indices | 8.4850 | 8.5900 | 0.9878 |
concat_series_axis1 | 109.3513 | 110.6913 | 0.9879 |
read_csv_infer_datetime_format_custom | 11.7240 | 11.8670 | 0.9880 |
stat_ops_level_series_sum | 3.0810 | 3.1177 | 0.9882 |
groupby_first | 3.8960 | 3.9410 | 0.9886 |
series_ctor_from_dict | 3.1077 | 3.1430 | 0.9888 |
frame_mask_bools | 18.1599 | 18.3637 | 0.9889 |
groupby_multi_python | 146.8297 | 148.4656 | 0.9890 |
frame_mult_st | 4.0256 | 4.0690 | 0.9893 |
series_align_irregular_string | 70.7936 | 71.5490 | 0.9894 |
timeseries_period_downsample_mean | 12.6113 | 12.7457 | 0.9895 |
frame_to_csv | 140.0317 | 141.4907 | 0.9897 |
groupby_frame_cython_many_columns | 3.3113 | 3.3456 | 0.9897 |
dataframe_resample_max_numpy | 1.8290 | 1.8469 | 0.9903 |
frame_iteritems | 43.9487 | 44.3707 | 0.9905 |
stat_ops_frame_mean_int_axis_1 | 6.7257 | 6.7897 | 0.9906 |
stat_ops_level_frame_sum | 3.9176 | 3.9546 | 0.9906 |
timeseries_to_datetime_iso8601 | 4.8934 | 4.9370 | 0.9912 |
frame_fancy_lookup_all | 21.1620 | 21.3504 | 0.9912 |
frame_apply_pass_thru | 7.3560 | 7.4207 | 0.9913 |
frame_to_csv2 | 114.7896 | 115.7617 | 0.9916 |
frame_to_html_mixed | 333.9419 | 336.7563 | 0.9916 |
frame_ctor_list_of_dict | 84.5166 | 85.2193 | 0.9918 |
frame_iloc_dups | 0.3719 | 0.3750 | 0.9919 |
frame_iteritems_cached | 0.8390 | 0.8457 | 0.9921 |
dataframe_resample_max_string | 1.7784 | 1.7924 | 0.9922 |
packers_write_json | 26.5433 | 26.7457 | 0.9924 |
packers_write_pack | 2.5183 | 2.5373 | 0.9925 |
stats_rank_average_int | 23.1463 | 23.3196 | 0.9926 |
panel_from_dict_equiv_indexes | 35.0090 | 35.2710 | 0.9926 |
write_csv_standard | 44.1510 | 44.4760 | 0.9927 |
datetime_index_union | 0.0867 | 0.0873 | 0.9927 |
dataframe_resample_mean_string | 2.3140 | 2.3300 | 0.9931 |
frame_add_no_ne | 3.8657 | 3.8920 | 0.9932 |
stat_ops_frame_sum_int_axis_0 | 6.1236 | 6.1647 | 0.9933 |
groupby_series_simple_cython | 8.5347 | 8.5903 | 0.9935 |
join_dataframe_index_single_key_bigger_sort | 18.6419 | 18.7523 | 0.9941 |
concat_small_frames | 20.1607 | 20.2787 | 0.9942 |
frame_html_repr_trunc_mi | 56.0934 | 56.4193 | 0.9942 |
frame_html_repr_trunc_si | 44.0050 | 44.2530 | 0.9944 |
frame_constructor_ndarray | 0.0617 | 0.0620 | 0.9949 |
frame_mult_no_ne | 3.8713 | 3.8903 | 0.9951 |
append_frame_single_mixed | 0.6313 | 0.6344 | 0.9952 |
timeseries_asof_nan | 7.8597 | 7.8973 | 0.9952 |
eval_frame_add_all_threads | 10.1287 | 10.1763 | 0.9953 |
join_dataframe_integer_key | 2.0544 | 2.0637 | 0.9955 |
datetime_index_intersection | 0.3073 | 0.3087 | 0.9956 |
frame_reindex_both_axes_ix | 38.4877 | 38.6534 | 0.9957 |
groupby_transform | 242.4953 | 243.5247 | 0.9958 |
lib_fast_zip_fillna | 12.3660 | 12.4156 | 0.9960 |
frame_ctor_nested_dict_int64 | 93.6994 | 94.0720 | 0.9960 |
groupby_last_float32 | 3.9330 | 3.9486 | 0.9961 |
sort_level_one | 5.2700 | 5.2896 | 0.9963 |
dataframe_resample_min_string | 1.8140 | 1.8207 | 0.9963 |
lib_fast_zip | 8.7481 | 8.7803 | 0.9963 |
indexing_dataframe_boolean_st | 7.8247 | 7.8533 | 0.9963 |
groupby_multi_cython | 23.7803 | 23.8673 | 0.9964 |
stat_ops_frame_sum_float_axis_1 | 5.6530 | 5.6736 | 0.9964 |
strings_repeat | 5.5680 | 5.5884 | 0.9964 |
index_int64_union | 79.8519 | 80.1316 | 0.9965 |
frame_apply_lambda_mean | 6.8599 | 6.8837 | 0.9965 |
eval_frame_add_python | 12.9493 | 12.9940 | 0.9966 |
strings_contains_many | 6.5130 | 6.5333 | 0.9969 |
timeseries_1min_5min_ohlc | 0.7153 | 0.7173 | 0.9972 |
datetimeindex_unique | 0.1167 | 0.1170 | 0.9973 |
frame_reindex_axis1 | 588.2236 | 589.7124 | 0.9975 |
frame_dropna_axis0_all | 88.8057 | 89.0187 | 0.9976 |
stats_rank2d_axis0_average | 23.0263 | 23.0814 | 0.9976 |
index_int64_intersection | 25.5127 | 25.5733 | 0.9976 |
frame_drop_dup_inplace | 3.1767 | 3.1840 | 0.9977 |
join_dataframe_index_single_key_bigger | 10.3920 | 10.4156 | 0.9977 |
dti_reset_index_tz | 14.0033 | 14.0344 | 0.9978 |
frame_loc_dups | 0.8653 | 0.8670 | 0.9981 |
panel_from_dict_same_index | 34.9433 | 35.0073 | 0.9982 |
frame_apply_np_mean | 7.4673 | 7.4800 | 0.9983 |
eval_frame_and_python_one_thread | 52.4227 | 52.5110 | 0.9983 |
reindex_daterange_pad | 1.3737 | 1.3760 | 0.9983 |
strings_contains_few_noregex | 2.6253 | 2.6294 | 0.9985 |
stat_ops_frame_sum_int_axis_1 | 6.1670 | 6.1760 | 0.9985 |
eval_frame_mult_python_one_thread | 13.0157 | 13.0340 | 0.9986 |
groupby_first_float32 | 3.9124 | 3.9174 | 0.9987 |
timeseries_timestamp_downsample_mean | 4.7553 | 4.7614 | 0.9987 |
frame_insert_100_columns_begin | 25.9343 | 25.9637 | 0.9989 |
frame_multi_and | 40.0240 | 40.0686 | 0.9989 |
datetimeindex_normalize | 2.6684 | 2.6713 | 0.9989 |
stats_rolling_mean | 1.2337 | 1.2350 | 0.9989 |
series_timestamp_compare | 3.3350 | 3.3383 | 0.9990 |
frame_dropna_axis1_any | 180.2580 | 180.4323 | 0.9990 |
frame_fillna_inplace | 12.3306 | 12.3420 | 0.9991 |
groupby_multi_different_numpy_functions | 19.2637 | 19.2796 | 0.9992 |
frame_insert_500_columns_end | 126.8850 | 126.9794 | 0.9993 |
frame_apply_axis_1 | 114.3907 | 114.4727 | 0.9993 |
frame_dropna_axis1_all | 321.5824 | 321.7920 | 0.9993 |
strings_count | 7.6530 | 7.6577 | 0.9994 |
series_value_counts_int64 | 2.3023 | 2.3037 | 0.9994 |
strings_pad | 4.3486 | 4.3511 | 0.9994 |
timeseries_infer_freq | 7.8137 | 7.8177 | 0.9995 |
replace_replacena | 4.7237 | 4.7260 | 0.9995 |
strings_strip | 4.1530 | 4.1547 | 0.9996 |
stats_corr_spearman | 92.1123 | 92.1487 | 0.9996 |
frame_sort_index_by_columns | 46.1940 | 46.2110 | 0.9996 |
strings_title | 3.8124 | 3.8137 | 0.9997 |
series_align_int64_index | 28.8726 | 28.8777 | 0.9998 |
frame_nonunique_equal | 6.4573 | 6.4584 | 0.9998 |
read_table_multiple_date_baseline | 92.3007 | 92.3123 | 0.9999 |
frame_object_equal | 6.4607 | 6.4613 | 0.9999 |
frame_dropna_axis0_any | 60.4530 | 60.4583 | 0.9999 |
dtindex_from_series_ctor | 0.0164 | 0.0164 | 1.0000 |
strings_join_split | 41.0670 | 41.0666 | 1.0000 |
groupby_multi_different_functions | 19.3456 | 19.3450 | 1.0000 |
packers_write_json_date_index | 34.6394 | 34.6344 | 1.0001 |
eval_frame_chained_cmp_python_one_thread | 28.2013 | 28.1967 | 1.0002 |
frame_ctor_nested_dict | 79.2740 | 79.2596 | 1.0002 |
frame_mask_floats | 5.9067 | 5.9053 | 1.0002 |
timeseries_to_datetime_YYYYMMDD | 10.6680 | 10.6650 | 1.0003 |
replace_fillna | 4.6360 | 4.6346 | 1.0003 |
reindex_fillna_pad | 0.6803 | 0.6800 | 1.0005 |
sparse_series_to_frame | 145.2444 | 145.1751 | 1.0005 |
frame_repr_wide | 20.5379 | 20.5250 | 1.0006 |
packers_read_csv | 46.1164 | 46.0860 | 1.0007 |
frame_float_equal | 12.4327 | 12.4240 | 1.0007 |
timeseries_sort_index | 23.1767 | 23.1601 | 1.0007 |
frame_multi_and_st | 39.8760 | 39.8467 | 1.0007 |
frame_apply_user_func | 172.0440 | 171.9031 | 1.0008 |
groupby_sum_booleans | 1.2543 | 1.2533 | 1.0008 |
index_datetime_union | 13.8957 | 13.8834 | 1.0009 |
merge_2intkey_nosort | 20.6393 | 20.6197 | 1.0009 |
read_csv_vb | 21.1667 | 21.1461 | 1.0010 |
strings_findall | 9.9073 | 9.8973 | 1.0010 |
groupby_pivot_table | 29.7057 | 29.6724 | 1.0011 |
strings_len | 2.6063 | 2.6033 | 1.0012 |
timestamp_ops_diff1 | 7.7670 | 7.7573 | 1.0012 |
indexing_panel_subset | 1.1846 | 1.1830 | 1.0013 |
strings_startswith | 4.0474 | 4.0417 | 1.0014 |
strings_rstrip | 3.8673 | 3.8617 | 1.0015 |
strings_contains_few | 6.2660 | 6.2567 | 1.0015 |
packers_read_json | 58.1273 | 58.0407 | 1.0015 |
strings_endswith | 4.0563 | 4.0497 | 1.0016 |
timeseries_asof_single | 0.0410 | 0.0409 | 1.0019 |
strings_center | 4.3463 | 4.3376 | 1.0020 |
strings_slice | 2.9874 | 2.9809 | 1.0022 |
frame_isnull | 3.8910 | 3.8823 | 1.0022 |
frame_fillna_many_columns_pad | 15.4727 | 15.4377 | 1.0023 |
stat_ops_level_frame_sum_multiple | 9.4250 | 9.4036 | 1.0023 |
sparse_frame_constructor | 13.6089 | 13.5776 | 1.0023 |
eval_frame_chained_cmp_one_thread | 26.5326 | 26.4707 | 1.0023 |
join_dataframe_index_multi | 25.7090 | 25.6476 | 1.0024 |
strings_match | 7.1704 | 7.1526 | 1.0025 |
eval_frame_and_all_threads | 33.9220 | 33.8333 | 1.0026 |
read_csv_standard | 11.8113 | 11.7787 | 1.0028 |
reindex_frame_level_align | 0.7040 | 0.7020 | 1.0028 |
groupby_frame_singlekey_integer | 2.5870 | 2.5797 | 1.0028 |
unstack_sparse_keyspace | 1.9573 | 1.9516 | 1.0029 |
frame_boolean_row_select | 0.3243 | 0.3234 | 1.0029 |
strings_cat | 1.0017 | 0.9987 | 1.0030 |
strings_lstrip | 3.8633 | 3.8517 | 1.0030 |
groupby_frame_median | 7.4204 | 7.3967 | 1.0032 |
series_value_counts_strings | 8.5227 | 8.4950 | 1.0033 |
frame_add_st | 4.0600 | 4.0467 | 1.0033 |
frame_reindex_axis0 | 98.9697 | 98.6396 | 1.0033 |
panel_from_dict_all_different_indexes | 69.7823 | 69.5346 | 1.0036 |
frame_to_string_floats | 43.4867 | 43.3307 | 1.0036 |
stat_ops_frame_mean_int_axis_0 | 6.1757 | 6.1520 | 1.0038 |
join_dataframe_integer_2key | 5.9433 | 5.9199 | 1.0039 |
reindex_frame_level_reindex | 0.6704 | 0.6677 | 1.0040 |
reshape_stack_simple | 4.5167 | 4.4983 | 1.0041 |
reindex_fillna_pad_float32 | 0.5604 | 0.5581 | 1.0041 |
stats_rank2d_axis1_average | 13.2610 | 13.2053 | 1.0042 |
read_csv_thou_vb | 18.1243 | 18.0473 | 1.0043 |
stat_ops_series_std | 1.1770 | 1.1720 | 1.0043 |
reshape_unstack_simple | 3.6656 | 3.6494 | 1.0044 |
frame_drop_duplicates_na | 18.9800 | 18.8920 | 1.0047 |
strings_extract | 50.3980 | 50.1640 | 1.0047 |
frame_repr_tall | 29.7143 | 29.5744 | 1.0047 |
timestamp_ops_diff2 | 21.7887 | 21.6860 | 1.0047 |
match_strings | 0.7717 | 0.7680 | 1.0048 |
groupby_multi_series_op | 22.4353 | 22.3277 | 1.0048 |
index_datetime_intersection | 13.8203 | 13.7537 | 1.0048 |
timeseries_slice_minutely | 0.0653 | 0.0650 | 1.0049 |
frame_to_csv_date_formatting | 19.5306 | 19.4350 | 1.0049 |
strings_upper | 3.5543 | 3.5350 | 1.0055 |
groupby_last | 4.0181 | 3.9940 | 1.0060 |
merge_2intkey_sort | 44.1356 | 43.8633 | 1.0062 |
stat_ops_level_series_sum_multiple | 8.6327 | 8.5793 | 1.0062 |
eval_frame_add_python_one_thread | 13.1463 | 13.0650 | 1.0062 |
read_csv_infer_datetime_format_iso8601 | 2.1567 | 2.1434 | 1.0062 |
indexing_dataframe_boolean | 8.9210 | 8.8627 | 1.0066 |
series_align_left_monotonic | 13.1797 | 13.0934 | 1.0066 |
read_table_multiple_date | 206.6470 | 205.2437 | 1.0068 |
frame_dtypes | 0.2923 | 0.2903 | 1.0068 |
dti_reset_index | 0.2857 | 0.2836 | 1.0073 |
reindex_multiindex | 2.2100 | 2.1934 | 1.0076 |
sort_level_zero | 5.2826 | 5.2423 | 1.0077 |
frame_drop_duplicates | 18.9234 | 18.7747 | 1.0079 |
datetimeindex_infer_dst | 3.7790 | 3.7480 | 1.0083 |
melt_dataframe | 2.3561 | 2.3367 | 1.0083 |
timestamp_series_compare | 3.3673 | 3.3390 | 1.0085 |
read_parse_dates_iso8601 | 1.5690 | 1.5554 | 1.0087 |
frame_multi_and_no_ne | 94.7594 | 93.9360 | 1.0088 |
frame_get_numeric_data | 0.1090 | 0.1080 | 1.0088 |
frame_reindex_both_axes | 38.5050 | 38.1670 | 1.0089 |
indexing_dataframe_boolean_rows_object | 0.7383 | 0.7317 | 1.0090 |
series_drop_duplicates_int | 0.8204 | 0.8130 | 1.0091 |
timeseries_asof | 8.8686 | 8.7837 | 1.0097 |
read_csv_comment2 | 17.5269 | 17.3531 | 1.0100 |
dataframe_reindex | 0.4250 | 0.4203 | 1.0112 |
packers_read_json_date_index | 57.3120 | 56.6664 | 1.0114 |
timeseries_1min_5min_mean | 0.6754 | 0.6677 | 1.0115 |
index_from_series_ctor | 0.0273 | 0.0270 | 1.0118 |
period_setitem | 150.2803 | 148.4903 | 1.0121 |
strings_lower | 3.7933 | 3.7476 | 1.0122 |
frame_fancy_lookup | 4.5454 | 4.4901 | 1.0123 |
query_datetime_series | 47.8490 | 47.2627 | 1.0124 |
read_csv_infer_datetime_format_ymd | 2.5944 | 2.5623 | 1.0125 |
dataframe_resample_min_numpy | 1.8206 | 1.7977 | 1.0128 |
stat_ops_frame_mean_float_axis_1 | 6.2096 | 6.1290 | 1.0131 |
reindex_fillna_backfill_float32 | 0.5637 | 0.5563 | 1.0133 |
frame_mult | 4.1280 | 4.0737 | 1.0133 |
frame_add | 4.1296 | 4.0747 | 1.0135 |
indexing_dataframe_boolean_rows | 0.4887 | 0.4820 | 1.0138 |
groupby_multi_size | 27.6090 | 27.1960 | 1.0152 |
stat_ops_frame_mean_float_axis_0 | 5.7967 | 5.6960 | 1.0177 |
indexing_dataframe_boolean_no_ne | 75.7960 | 74.3556 | 1.0194 |
series_drop_duplicates_string | 0.5784 | 0.5670 | 1.0200 |
eval_frame_mult_all_threads | 10.1800 | 9.9793 | 1.0201 |
strings_contains_many_noregex | 2.7893 | 2.7250 | 1.0236 |
reshape_pivot_time_series | 164.8297 | 161.0006 | 1.0238 |
append_frame_single_homogenous | 0.2873 | 0.2793 | 1.0284 |
stat_ops_frame_sum_float_axis_0 | 5.8256 | 5.6633 | 1.0287 |
strings_replace | 19.4569 | 18.8760 | 1.0308 |
packers_write_csv | 663.5473 | 641.1184 | 1.0350 |
frame_reindex_columns | 0.4044 | 0.3893 | 1.0386 |
strings_get | 3.4781 | 3.3403 | 1.0412 |
query_datetime_index | 56.6237 | 54.3350 | 1.0421 |
frame_reindex_upcast | 10.9173 | 10.4129 | 1.0484 |
groupby_simple_compress_timing | 36.7193 | 35.0137 | 1.0487 |
frame_to_csv_mixed | 353.2503 | 334.8434 | 1.0550 |
series_string_vector_slice | 206.7950 | 193.0497 | 1.0712 |
join_dataframe_index_single_key_small | 10.5716 | 9.7837 | 1.0805 |
packers_read_pack | 2.6340 | 2.3851 | 1.1044 |
-------------------------------------------------------------------------------
Test name | head[ms] | base[ms] | ratio |
-------------------------------------------------------------------------------
Ratio < 1.0 means the target commit is faster then the baseline.
Seed used: 1234
Target [3b43e2b] : PERF: pd.Index.is_all_dates doesn't require full-scan inference
Base [87b4308] : Merge pull request #6308 from bwignall/assert_6175_7
CLN: Convert last of assert_(x == y) to assertEqual
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment