lkml.org 
[lkml]   [2004]   [Aug]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [patchset] Lockfree fd lookup 0 of 5
    On Tue, Aug 03, 2004 at 02:53:17PM +0530, Ravikiran G Thirumalai wrote:
    > > ...
    > > How about this for comparison? That's just a dumb "convert to rwlock"
    > > patch; we can be smarter in e.g. close_on_exec handling, but that's a
    > > separate story.
    > >
    >
    > I ran tiobench on this patch and here is the comparison:
    >
    >
    > Kernel Seqread Randread Seqwrite Randwrite
    > --------------------------------------------------------------------------
    > 2.6.7 410.33 234.15 254.39 189.36
    > rwlocks-viro 401.84 232.69 254.09 194.62
    > refcount (kref) 455.72 281.75 272.87 230.10
    >
    > All of this was 2.6.7 based. Nos are througput rates in mega bytes per sec.
    > Test was on ramfs, 48 threads doing 100 MB of io per thread averaged over
    > 8 runs. This was on a 4 way PIII xeon.

    Just adding. This was with premption off and here are the oprofile
    profiles for the above runs;

    Thanks,
    Kiran

    1. Vanilla 2.6.7
    =================
    CPU: PIII, speed 699.726 MHz (estimated)
    Counted CPU_CLK_UNHALTED events (clocks processor is not halted) with a unit mask of 0x00 (No unit mask) count 100000
    samples % symbol name
    31816 18.7302 __copy_to_user_ll
    30421 17.9089 simple_prepare_write
    13270 7.8121 __copy_from_user_ll
    11514 6.7783 fget_light
    8388 4.9380 mark_offset_tsc
    5352 3.1507 sysenter_past_esp
    5047 2.9712 default_idle
    3723 2.1917 do_gettimeofday
    2991 1.7608 increment_tail
    2884 1.6978 generic_file_aio_write_nolock
    2147 1.2639 do_generic_mapping_read
    1922 1.1315 current_kernel_time
    1800 1.0597 find_vma
    1691 0.9955 get_offset_tsc
    1683 0.9908 __pagevec_lru_add
    1537 0.9048 add_event_entry
    1511 0.8895 profile_hook
    1413 0.8318 activate_page
    1411 0.8307 find_lock_page
    1342 0.7900 lookup_dcookie
    1318 0.7759 sync_buffer
    1289 0.7588 dnotify_parent
    1248 0.7347 apic_timer_interrupt
    1244 0.7323 find_get_page
    1203 0.7082 .text.lock.file_table
    1135 0.6682 release_pages
    1067 0.6281 __set_page_dirty_buffers
    1032 0.6075 scheduler_tick
    1027 0.6046 radix_tree_lookup
    920 0.5416 generic_file_write

    2. rwlocks-2.6.7
    =================
    CPU: PIII, speed 699.717 MHz (estimated)
    Counted CPU_CLK_UNHALTED events (clocks processor is not halted) with a unit mask of 0x00 (No unit mask) count 100000
    samples % symbol name
    32276 18.9282 __copy_to_user_ll
    29917 17.5448 simple_prepare_write
    13168 7.7224 fget_light
    13167 7.7218 __copy_from_user_ll
    8505 4.9877 mark_offset_tsc
    5237 3.0712 sysenter_past_esp
    5199 3.0489 default_idle
    3697 2.1681 do_gettimeofday
    3090 1.8121 generic_file_aio_write_nolock
    2739 1.6063 increment_tail
    1977 1.1594 current_kernel_time
    1956 1.1471 do_generic_mapping_read
    1845 1.0820 find_vma
    1764 1.0345 get_offset_tsc
    1717 1.0069 __pagevec_lru_add
    1598 0.9371 add_event_entry
    1511 0.8861 profile_hook
    1478 0.8668 activate_page
    1390 0.8152 sync_buffer
    1350 0.7917 find_lock_page
    1336 0.7835 lookup_dcookie
    1307 0.7665 apic_timer_interrupt
    1240 0.7272 release_pages
    1239 0.7266 dnotify_parent
    1223 0.7172 find_get_page
    1173 0.6879 __set_page_dirty_buffers
    999 0.5859 scheduler_tick

    3. rcu refcounting -2.6.7
    =========================
    CPU: PIII, speed 699.717 MHz (estimated)
    Counted CPU_CLK_UNHALTED events (clocks processor is not halted) with a unit mask of 0x00 (No unit mask) count 100000
    samples % symbol name
    31391 19.8978 __copy_to_user_ll
    29672 18.8082 simple_prepare_write
    13330 8.4495 __copy_from_user_ll
    8076 5.1191 mark_offset_tsc
    5323 3.3741 sysenter_past_esp
    5071 3.2144 default_idle
    3682 2.3339 do_gettimeofday
    2890 1.8319 increment_tail
    2789 1.7679 generic_file_aio_write_nolock
    1997 1.2658 do_generic_mapping_read
    1993 1.2633 fget_light
    1873 1.1872 __pagevec_lru_add
    1826 1.1574 find_vma
    1808 1.1460 profile_hook
    1797 1.1391 current_kernel_time
    1738 1.1017 get_offset_tsc
    1439 0.9121 add_event_entry
    1354 0.8583 sync_buffer
    1346 0.8532 lookup_dcookie
    1285 0.8145 dnotify_parent
    1267 0.8031 apic_timer_interrupt
    1260 0.7987 activate_page
    1178 0.7467 find_get_page
    1173 0.7435 find_lock_page
    1125 0.7131 release_pages
    1034 0.6554 scheduler_tick
    986 0.6250 __set_page_dirty_buffers
    939 0.5952 sched_clock

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 14:04    [W:0.032 / U:30.608 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site