Ethereal-dev: [Ethereal-dev] Ethereal performance results compared to official 0.9.16 release
Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.
From: Biot Olivier <Olivier.Biot@xxxxxxxxxxx>
Date: Wed, 10 Dec 2003 11:17:18 +0100
Hi list, I've been running new performance tests and have been collecting profiling data on both the official 0.9.16 release and the CVS snapshot of 09:00 GMT today. Methodology: same as earlier (netbench capture, same colorfilters when applicable). Read file, filter on "frame", reset filter etc (so the file gets read once, filtered 5 times and reset 4 times). All tests have been run on my P3 laptop @ 650 MHz (512 MB RAM). Performance =========== 1. Official 0.9.16 release -------------------------- 1.1 No colorfilters 1st read / Filter on "frame" / reset filter (seconds): 22 / 21 / 20 1.2 Colorfilters 1st read / Filter on "frame" / reset filter (seconds): 23 / 25 / 23 2. Current CVS snapshot (with PCRE support) ------------------------------------------- 1.1 No colorfilters 1st read / Filter on "frame" / reset filter (seconds): 7 / 11 / 7 1.2 Colorfilters 1st read / Filter on "frame" / reset filter (seconds): 13 / 13 / 13 Conclusion: If no color filters are applied, current Ethereal runs 2 to 3 times faster than 0.9.16. If my color filters are applied, current Ethereal runs about twice as fast as 0.9.16. Congratulations to all who helped in improving the performance of Ethereal! Top-20 entries from gprof ========================= 1 No colorfilters ----------------- 1.1 Official 0.9.16 release --------------------------- Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 38.78 20.74 20.74 compare_proto_id 3.83 22.79 2.05 17312017 0.00 0.00 alloc_field_info 2.37 24.06 1.27 17312238 0.00 0.00 fvalue_new 2.34 25.31 1.25 32149226 0.00 0.00 proto_registrar_get_nth 2.24 26.51 1.20 15662527 0.00 0.00 proto_tree_add_pi 2.17 27.67 1.16 17312017 0.00 0.00 proto_tree_add_node 1.76 28.61 0.94 proto_tree_free_node 1.68 29.51 0.90 213660 0.00 0.00 dissect_tcp 1.53 30.33 0.82 7371967 0.00 0.00 proto_tree_add_uint 1.40 31.08 0.75 12375307 0.00 0.00 proto_tree_set_uint 1.27 31.76 0.68 17312046 0.00 0.00 fvalue_free 1.27 32.44 0.68 13050790 0.00 0.00 compute_offset_length 1.22 33.09 0.65 17312017 0.00 0.00 tvb_get_ds_tvb 1.10 33.68 0.59 14981 0.00 0.00 proto_register_field_init 1.05 34.24 0.56 10866980 0.00 0.00 check_offset_length_no_exception 1.03 34.79 0.55 17312017 0.00 0.00 free_node_field_info 0.99 35.32 0.53 1709280 0.00 0.00 ip_to_str_buf 0.95 35.83 0.51 13229976 0.00 0.00 fvalue_set_integer 0.92 36.32 0.49 4356890 0.00 0.00 proto_tree_add_boolean 0.86 36.78 0.46 3159740 0.00 0.00 check_col 1.2 Current CVS snapshot (with PCRE support) -------------------------------------------- Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 4.62 0.84 0.84 8659434 0.00 0.00 alloc_field_info 4.34 1.63 0.79 12041360 0.00 0.00 compute_offset_length 3.63 2.29 0.66 106840 0.00 0.00 proto_tree_traverse_in_order 3.41 2.91 0.62 10235605 0.00 0.00 check_offset_length_no_exception 3.41 3.53 0.62 8659434 0.00 0.00 proto_tree_add_node 3.08 4.09 0.56 7975949 0.00 0.00 proto_tree_add_pi 3.08 4.65 0.56 15211 0.00 0.00 proto_register_field_init 3.02 5.20 0.55 8766274 0.00 0.00 proto_tree_free_node 2.97 5.74 0.54 4462392 0.00 0.00 proto_tree_add_uint 2.36 6.17 0.43 213660 0.00 0.00 dissect_tcp 2.09 6.55 0.38 8659434 0.00 0.00 fvalue_init 1.87 6.89 0.34 427320 0.00 0.00 in_cksum 1.65 7.19 0.30 9511990 0.00 0.00 ensure_contiguous_no_exception 1.65 7.49 0.30 6190819 0.00 0.00 proto_tree_set_uint 1.65 7.79 0.30 213660 0.00 0.00 dissect_ip 1.43 8.05 0.26 9411140 0.00 0.00 ensure_contiguous 1.37 8.30 0.25 6618208 0.00 0.00 fvalue_set_integer 1.26 8.53 0.23 3181870 0.00 0.00 proto_tree_add_boolean 1.15 8.74 0.21 1282000 0.00 0.00 ip_to_str_buf 1.10 8.94 0.20 427280 0.00 0.00 col_set_addr 2 Colorfilters -------------- 2.1 Official 0.9.16 release --------------------------- Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 36.70 21.85 21.85 compare_proto_id 3.26 23.79 1.94 17312017 0.00 0.00 alloc_field_info 2.18 25.09 1.30 32149226 0.00 0.00 proto_registrar_get_nth 2.17 26.38 1.29 15662527 0.00 0.00 proto_tree_add_pi 2.12 27.64 1.26 17312017 0.00 0.00 proto_tree_add_node 2.08 28.88 1.24 17312241 0.00 0.00 fvalue_new 2.03 30.09 1.21 2556780 0.00 0.00 dfvm_apply 1.44 30.95 0.86 213660 0.00 0.00 dissect_tcp 1.43 31.80 0.85 proto_tree_free_node 1.38 32.62 0.82 7371967 0.00 0.00 proto_tree_add_uint 1.36 33.43 0.81 17312046 0.00 0.00 fvalue_free 1.34 34.23 0.80 13050790 0.00 0.00 compute_offset_length 1.28 34.99 0.76 10866980 0.00 0.00 check_offset_length_no_exception 1.21 35.71 0.72 12375307 0.00 0.00 proto_tree_set_uint 1.11 36.37 0.66 17312017 0.00 0.00 free_node_field_info 1.01 36.97 0.60 17312017 0.00 0.00 tvb_get_ds_tvb 0.99 37.56 0.59 14981 0.00 0.00 proto_register_field_init 0.97 38.14 0.58 427320 0.00 0.00 in_cksum 0.87 38.66 0.52 213660 0.00 0.00 dissect_ip 0.82 39.15 0.49 13229976 0.00 0.00 fvalue_set_integer 2.2 Current CVS snapshot (with PCRE support) -------------------------------------------- Each sample counts as 0.01 seconds. % cumulative self self total time seconds seconds calls s/call s/call name 4.97 1.51 1.51 17312017 0.00 0.00 alloc_field_info 4.08 2.75 1.24 17312017 0.00 0.00 proto_tree_add_node 4.04 3.98 1.23 2556780 0.00 0.00 dfvm_apply 3.78 5.13 1.15 15662527 0.00 0.00 proto_tree_add_pi 3.68 6.25 1.12 17525677 0.00 0.00 proto_tree_free_node 3.58 7.34 1.09 213660 0.00 0.00 proto_tree_traverse_in_order 3.52 8.41 1.07 7371967 0.00 0.00 proto_tree_add_uint 3.32 9.42 1.01 17312017 0.00 0.00 fvalue_init 2.40 10.15 0.73 13050790 0.00 0.00 compute_offset_length 2.40 10.88 0.73 12375307 0.00 0.00 proto_tree_set_uint 2.30 11.58 0.70 213660 0.00 0.00 dissect_tcp 2.01 12.19 0.61 10866980 0.00 0.00 check_offset_length_no_exception 1.78 12.73 0.54 15211 0.00 0.00 proto_register_field_init 1.51 13.19 0.46 13229976 0.00 0.00 fvalue_set_integer 1.48 13.64 0.45 4356890 0.00 0.00 proto_tree_add_boolean 1.45 14.08 0.44 106820 0.00 0.00 dfilter_prime_proto_tree 1.28 14.47 0.39 213660 0.00 0.00 dissect_ip 1.25 14.85 0.38 427320 0.00 0.00 in_cksum 1.18 15.21 0.36 10131330 0.00 0.00 ensure_contiguous_no_exception 1.02 15.52 0.31 1709280 0.00 0.00 ip_to_str_buf Regards, Olivier
- Prev by Date: [Ethereal-dev] IGAP dissector
- Next by Date: [Ethereal-dev] Problem with building on Windows
- Previous by thread: Re: [Ethereal-dev] IGAP dissector
- Next by thread: [Ethereal-dev] Problem with building on Windows
- Index(es):