diff --git a/compare-btrfs b/compare-btrfs new file mode 100755 index 0000000..459ebdd --- /dev/null +++ b/compare-btrfs @@ -0,0 +1,35 @@ +#!/bin/bash + +BTRFS_EXPRESSIONS=( +write_bw + +# perf list | grep btrfs: | awk '{print $1}' +btrfs:btrfs_transaction_commit +btrfs:btrfs_inode_new +btrfs:btrfs_inode_request +btrfs:btrfs_inode_evict +btrfs:btrfs_get_extent +btrfs:btrfs_ordered_extent_add +btrfs:btrfs_ordered_extent_remove +btrfs:btrfs_ordered_extent_start +btrfs:btrfs_ordered_extent_put +btrfs:__extent_writepage +btrfs:btrfs_writepage_end_io_hook +btrfs:btrfs_sync_file +btrfs:btrfs_sync_fs +btrfs:btrfs_delayed_tree_ref +btrfs:btrfs_delayed_data_ref +btrfs:btrfs_delayed_ref_head +btrfs:btrfs_chunk_alloc +btrfs:btrfs_chunk_free +btrfs:btrfs_cow_block +btrfs:btrfs_reserved_extent_alloc +btrfs:btrfs_reserved_extent_free + +) + +for e in ${BTRFS_EXPRESSIONS[*]} +do + ./compare -g btrfs -e $e "$@" + echo +done diff --git a/compare-ext3 b/compare-ext3 new file mode 100755 index 0000000..1fdde14 --- /dev/null +++ b/compare-ext3 @@ -0,0 +1,64 @@ +#!/bin/bash + +EXT3_EXPRESSIONS=( +write_bw + +# perf list | grep ext3: | awk '{print $1}' +ext3:ext3_free_inode +ext3:ext3_request_inode +ext3:ext3_allocate_inode +ext3:ext3_evict_inode +ext3:ext3_drop_inode +ext3:ext3_mark_inode_dirty +ext3:ext3_write_begin +ext3:ext3_ordered_write_end +ext3:ext3_writeback_write_end +ext3:ext3_journalled_write_end +ext3:ext3_ordered_writepage +ext3:ext3_writeback_writepage +ext3:ext3_journalled_writepage +ext3:ext3_readpage +ext3:ext3_releasepage +ext3:ext3_invalidatepage +ext3:ext3_discard_blocks +ext3:ext3_request_blocks +ext3:ext3_allocate_blocks +ext3:ext3_free_blocks +ext3:ext3_sync_file_enter +ext3:ext3_sync_file_exit +ext3:ext3_sync_fs +ext3:ext3_rsv_window_add +ext3:ext3_discard_reservation +ext3:ext3_alloc_new_reservation +ext3:ext3_reserved +ext3:ext3_forget +ext3:ext3_read_block_bitmap +ext3:ext3_direct_IO_enter +ext3:ext3_direct_IO_exit +ext3:ext3_unlink_enter +ext3:ext3_unlink_exit +ext3:ext3_truncate_enter +ext3:ext3_truncate_exit +ext3:ext3_get_blocks_enter +ext3:ext3_get_blocks_exit +ext3:ext3_load_inode + +# perf list | grep jbd: | awk '{print $1}' +jbd:jbd_checkpoint +jbd:jbd_start_commit +jbd:jbd_commit_locking +jbd:jbd_commit_flushing +jbd:jbd_commit_logging +jbd:jbd_drop_transaction +jbd:jbd_end_commit +jbd:jbd_do_submit_data +jbd:jbd_cleanup_journal_tail +jbd:jbd_update_superblock_end + +) + +for e in ${EXT3_EXPRESSIONS[*]} +do + ./compare -g ext3 -e $e "$@" + echo +done diff --git a/compare-ext4 b/compare-ext4 new file mode 100755 index 0000000..86fbc49 --- /dev/null +++ b/compare-ext4 @@ -0,0 +1,103 @@ +#!/bin/bash + +EXT4_EXPRESSIONS=( +write_bw + +# perf list | grep ext4: | awk '{print $1}' +ext4:ext4_free_inode +ext4:ext4_request_inode +ext4:ext4_allocate_inode +ext4:ext4_evict_inode +ext4:ext4_drop_inode +ext4:ext4_mark_inode_dirty +ext4:ext4_begin_ordered_truncate +ext4:ext4_write_begin +ext4:ext4_da_write_begin +ext4:ext4_ordered_write_end +ext4:ext4_writeback_write_end +ext4:ext4_journalled_write_end +ext4:ext4_da_write_end +ext4:ext4_da_writepages +ext4:ext4_da_write_pages +ext4:ext4_da_writepages_result +ext4:ext4_writepage +ext4:ext4_readpage +ext4:ext4_releasepage +ext4:ext4_invalidatepage +ext4:ext4_discard_blocks +ext4:ext4_mb_new_inode_pa +ext4:ext4_mb_new_group_pa +ext4:ext4_mb_release_inode_pa +ext4:ext4_mb_release_group_pa +ext4:ext4_discard_preallocations +ext4:ext4_mb_discard_preallocations +ext4:ext4_request_blocks +ext4:ext4_allocate_blocks +ext4:ext4_free_blocks +ext4:ext4_sync_file_enter +ext4:ext4_sync_file_exit +ext4:ext4_sync_fs +ext4:ext4_alloc_da_blocks +ext4:ext4_mballoc_alloc +ext4:ext4_mballoc_prealloc +ext4:ext4_mballoc_discard +ext4:ext4_mballoc_free +ext4:ext4_forget +ext4:ext4_da_update_reserve_space +ext4:ext4_da_reserve_space +ext4:ext4_da_release_space +ext4:ext4_mb_bitmap_load +ext4:ext4_mb_buddy_bitmap_load +ext4:ext4_read_block_bitmap_load +ext4:ext4_load_inode_bitmap +ext4:ext4_direct_IO_enter +ext4:ext4_direct_IO_exit +ext4:ext4_fallocate_enter +ext4:ext4_fallocate_exit +ext4:ext4_unlink_enter +ext4:ext4_unlink_exit +ext4:ext4_truncate_enter +ext4:ext4_truncate_exit +ext4:ext4_ext_convert_to_initialized_enter +ext4:ext4_ext_convert_to_initialized_fastpath +ext4:ext4_ext_map_blocks_enter +ext4:ext4_ind_map_blocks_enter +ext4:ext4_ext_map_blocks_exit +ext4:ext4_ind_map_blocks_exit +ext4:ext4_ext_load_extent +ext4:ext4_load_inode +ext4:ext4_journal_start +ext4:ext4_trim_extent +ext4:ext4_trim_all_free +ext4:ext4_ext_handle_uninitialized_extents +ext4:ext4_get_implied_cluster_alloc_exit +ext4:ext4_ext_put_in_cache +ext4:ext4_ext_in_cache +ext4:ext4_find_delalloc_range +ext4:ext4_get_reserved_cluster_alloc +ext4:ext4_ext_show_extent +ext4:ext4_remove_blocks +ext4:ext4_ext_rm_leaf +ext4:ext4_ext_rm_idx +ext4:ext4_ext_remove_space +ext4:ext4_ext_remove_space_done + +# perf list | grep jbd2: | awk '{print $1}' +jbd2:jbd2_checkpoint +jbd2:jbd2_start_commit +jbd2:jbd2_commit_locking +jbd2:jbd2_commit_flushing +jbd2:jbd2_commit_logging +jbd2:jbd2_end_commit +jbd2:jbd2_submit_inode_data +jbd2:jbd2_run_stats +jbd2:jbd2_checkpoint_stats +jbd2:jbd2_cleanup_journal_tail + +) + +for e in ${EXT4_EXPRESSIONS[*]} +do + ./compare -g ext4 -e $e "$@" + echo +done diff --git a/compare-xfs b/compare-xfs new file mode 100755 index 0000000..42145f0 --- /dev/null +++ b/compare-xfs @@ -0,0 +1,291 @@ +#!/bin/bash + + +XFS_EXPRESSIONS=( +write_bw + +# perf list | grep xfs: | awk '{print $1}' +xfs:xfs_attr_list_sf +xfs:xfs_attr_list_sf_all +xfs:xfs_attr_list_leaf +xfs:xfs_attr_list_leaf_end +xfs:xfs_attr_list_full +xfs:xfs_attr_list_add +xfs:xfs_attr_list_wrong_blk +xfs:xfs_attr_list_notfound +xfs:xfs_perag_get +xfs:xfs_perag_get_tag +xfs:xfs_perag_put +xfs:xfs_perag_set_reclaim +xfs:xfs_perag_clear_reclaim +xfs:xfs_attr_list_node_descend +xfs:xfs_iext_insert +xfs:xfs_iext_remove +xfs:xfs_bmap_pre_update +xfs:xfs_bmap_post_update +xfs:xfs_extlist +xfs:xfs_buf_init +xfs:xfs_buf_free +xfs:xfs_buf_hold +xfs:xfs_buf_rele +xfs:xfs_buf_iodone +xfs:xfs_buf_iorequest +xfs:xfs_buf_bawrite +xfs:xfs_buf_lock +xfs:xfs_buf_lock_done +xfs:xfs_buf_trylock +xfs:xfs_buf_unlock +xfs:xfs_buf_iowait +xfs:xfs_buf_iowait_done +xfs:xfs_buf_delwri_queue +xfs:xfs_buf_delwri_dequeue +xfs:xfs_buf_delwri_split +xfs:xfs_buf_get_uncached +xfs:xfs_bdstrat_shut +xfs:xfs_buf_item_relse +xfs:xfs_buf_item_iodone +xfs:xfs_buf_item_iodone_async +xfs:xfs_buf_error_relse +xfs:xfs_trans_read_buf_io +xfs:xfs_trans_read_buf_shut +xfs:xfs_btree_corrupt +xfs:xfs_da_btree_corrupt +xfs:xfs_reset_dqcounts +xfs:xfs_inode_item_push +xfs:xfs_buf_find +xfs:xfs_buf_get +xfs:xfs_buf_read +xfs:xfs_buf_ioerror +xfs:xfs_buf_item_size +xfs:xfs_buf_item_size_stale +xfs:xfs_buf_item_format +xfs:xfs_buf_item_format_stale +xfs:xfs_buf_item_pin +xfs:xfs_buf_item_unpin +xfs:xfs_buf_item_unpin_stale +xfs:xfs_buf_item_trylock +xfs:xfs_buf_item_unlock +xfs:xfs_buf_item_unlock_stale +xfs:xfs_buf_item_committed +xfs:xfs_buf_item_push +xfs:xfs_buf_item_pushbuf +xfs:xfs_trans_get_buf +xfs:xfs_trans_get_buf_recur +xfs:xfs_trans_getsb +xfs:xfs_trans_getsb_recur +xfs:xfs_trans_read_buf +xfs:xfs_trans_read_buf_recur +xfs:xfs_trans_log_buf +xfs:xfs_trans_brelse +xfs:xfs_trans_bjoin +xfs:xfs_trans_bhold +xfs:xfs_trans_bhold_release +xfs:xfs_trans_binval +xfs:xfs_ilock +xfs:xfs_ilock_nowait +xfs:xfs_ilock_demote +xfs:xfs_iunlock +xfs:xfs_iget_skip +xfs:xfs_iget_reclaim +xfs:xfs_iget_reclaim_fail +xfs:xfs_iget_hit +xfs:xfs_iget_miss +xfs:xfs_getattr +xfs:xfs_setattr +xfs:xfs_readlink +xfs:xfs_alloc_file_space +xfs:xfs_free_file_space +xfs:xfs_readdir +xfs:xfs_get_acl +xfs:xfs_vm_bmap +xfs:xfs_file_ioctl +xfs:xfs_file_compat_ioctl +xfs:xfs_ioctl_setattr +xfs:xfs_dir_fsync +xfs:xfs_file_fsync +xfs:xfs_destroy_inode +xfs:xfs_write_inode +xfs:xfs_evict_inode +xfs:xfs_dquot_dqalloc +xfs:xfs_dquot_dqdetach +xfs:xfs_ihold +xfs:xfs_irele +xfs:xfs_inode_pin +xfs:xfs_inode_unpin +xfs:xfs_inode_unpin_nowait +xfs:xfs_remove +xfs:xfs_link +xfs:xfs_lookup +xfs:xfs_create +xfs:xfs_symlink +xfs:xfs_rename +xfs:xfs_dqadjust +xfs:xfs_dqreclaim_want +xfs:xfs_dqreclaim_dirty +xfs:xfs_dqreclaim_unlink +xfs:xfs_dqattach_found +xfs:xfs_dqattach_get +xfs:xfs_dqinit +xfs:xfs_dqreuse +xfs:xfs_dqalloc +xfs:xfs_dqtobp_read +xfs:xfs_dqread +xfs:xfs_dqread_fail +xfs:xfs_dqlookup_found +xfs:xfs_dqlookup_want +xfs:xfs_dqlookup_freelist +xfs:xfs_dqlookup_done +xfs:xfs_dqget_hit +xfs:xfs_dqget_miss +xfs:xfs_dqput +xfs:xfs_dqput_wait +xfs:xfs_dqput_free +xfs:xfs_dqrele +xfs:xfs_dqflush +xfs:xfs_dqflush_force +xfs:xfs_dqflush_done +xfs:xfs_log_done_nonperm +xfs:xfs_log_done_perm +xfs:xfs_log_reserve +xfs:xfs_log_umount_write +xfs:xfs_log_grant_enter +xfs:xfs_log_grant_exit +xfs:xfs_log_grant_error +xfs:xfs_log_grant_sleep1 +xfs:xfs_log_grant_wake1 +xfs:xfs_log_grant_sleep2 +xfs:xfs_log_grant_wake2 +xfs:xfs_log_grant_wake_up +xfs:xfs_log_regrant_write_enter +xfs:xfs_log_regrant_write_exit +xfs:xfs_log_regrant_write_error +xfs:xfs_log_regrant_write_sleep1 +xfs:xfs_log_regrant_write_wake1 +xfs:xfs_log_regrant_write_sleep2 +xfs:xfs_log_regrant_write_wake2 +xfs:xfs_log_regrant_write_wake_up +xfs:xfs_log_regrant_reserve_enter +xfs:xfs_log_regrant_reserve_exit +xfs:xfs_log_regrant_reserve_sub +xfs:xfs_log_ungrant_enter +xfs:xfs_log_ungrant_exit +xfs:xfs_log_ungrant_sub +xfs:xfs_ail_push +xfs:xfs_ail_pushbuf +xfs:xfs_ail_pushbuf_pinned +xfs:xfs_ail_pinned +xfs:xfs_ail_locked +xfs:xfs_file_read +xfs:xfs_file_buffered_write +xfs:xfs_file_direct_write +xfs:xfs_file_splice_read +xfs:xfs_file_splice_write +xfs:xfs_writepage +xfs:xfs_releasepage +xfs:xfs_invalidatepage +xfs:xfs_map_blocks_found +xfs:xfs_map_blocks_alloc +xfs:xfs_get_blocks_found +xfs:xfs_get_blocks_alloc +xfs:xfs_delalloc_enospc +xfs:xfs_unwritten_convert +xfs:xfs_get_blocks_notfound +xfs:xfs_setfilesize +xfs:xfs_itruncate_data_start +xfs:xfs_itruncate_data_end +xfs:xfs_pagecache_inval +xfs:xfs_bunmap +xfs:xfs_alloc_busy +xfs:xfs_alloc_busy_enomem +xfs:xfs_alloc_busy_force +xfs:xfs_alloc_busy_reuse +xfs:xfs_alloc_busy_clear +xfs:xfs_alloc_busy_trim +xfs:xfs_trans_commit_lsn +xfs:xfs_agf +xfs:xfs_free_extent +xfs:xfs_alloc_exact_done +xfs:xfs_alloc_exact_notfound +xfs:xfs_alloc_exact_error +xfs:xfs_alloc_near_nominleft +xfs:xfs_alloc_near_first +xfs:xfs_alloc_near_greater +xfs:xfs_alloc_near_lesser +xfs:xfs_alloc_near_error +xfs:xfs_alloc_near_noentry +xfs:xfs_alloc_near_busy +xfs:xfs_alloc_size_neither +xfs:xfs_alloc_size_noentry +xfs:xfs_alloc_size_nominleft +xfs:xfs_alloc_size_done +xfs:xfs_alloc_size_error +xfs:xfs_alloc_size_busy +xfs:xfs_alloc_small_freelist +xfs:xfs_alloc_small_notenough +xfs:xfs_alloc_small_done +xfs:xfs_alloc_small_error +xfs:xfs_alloc_vextent_badargs +xfs:xfs_alloc_vextent_nofix +xfs:xfs_alloc_vextent_noagbp +xfs:xfs_alloc_vextent_loopfailed +xfs:xfs_alloc_vextent_allfailed +xfs:xfs_dir2_sf_addname +xfs:xfs_dir2_sf_create +xfs:xfs_dir2_sf_lookup +xfs:xfs_dir2_sf_replace +xfs:xfs_dir2_sf_removename +xfs:xfs_dir2_sf_toino4 +xfs:xfs_dir2_sf_toino8 +xfs:xfs_dir2_sf_to_block +xfs:xfs_dir2_block_addname +xfs:xfs_dir2_block_lookup +xfs:xfs_dir2_block_replace +xfs:xfs_dir2_block_removename +xfs:xfs_dir2_block_to_sf +xfs:xfs_dir2_block_to_leaf +xfs:xfs_dir2_leaf_addname +xfs:xfs_dir2_leaf_lookup +xfs:xfs_dir2_leaf_replace +xfs:xfs_dir2_leaf_removename +xfs:xfs_dir2_leaf_to_block +xfs:xfs_dir2_leaf_to_node +xfs:xfs_dir2_node_addname +xfs:xfs_dir2_node_lookup +xfs:xfs_dir2_node_replace +xfs:xfs_dir2_node_removename +xfs:xfs_dir2_node_to_leaf +xfs:xfs_dir2_leafn_add +xfs:xfs_dir2_leafn_remove +xfs:xfs_dir2_grow_inode +xfs:xfs_dir2_shrink_inode +xfs:xfs_dir2_leafn_moveents +xfs:xfs_swap_extent_before +xfs:xfs_swap_extent_after +xfs:xfs_log_recover_item_add +xfs:xfs_log_recover_item_add_cont +xfs:xfs_log_recover_item_reorder_head +xfs:xfs_log_recover_item_reorder_tail +xfs:xfs_log_recover_item_recover +xfs:xfs_log_recover_buf_not_cancel +xfs:xfs_log_recover_buf_cancel +xfs:xfs_log_recover_buf_cancel_add +xfs:xfs_log_recover_buf_cancel_ref_inc +xfs:xfs_log_recover_buf_recover +xfs:xfs_log_recover_buf_inode_buf +xfs:xfs_log_recover_buf_reg_buf +xfs:xfs_log_recover_buf_dquot_buf +xfs:xfs_log_recover_inode_recover +xfs:xfs_log_recover_inode_cancel +xfs:xfs_log_recover_inode_skip +xfs:xfs_discard_extent +xfs:xfs_discard_toosmall +xfs:xfs_discard_exclude +xfs:xfs_discard_busy + +) + +for e in ${XFS_EXPRESSIONS[*]} +do + ./compare -g xfs -e $e "$@" + echo +done