Re: [git patches] IDE update

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jens Axboe wrote:
On Tue, Jul 05 2005, Ondrej Zary wrote:

Jens Axboe wrote:

On Tue, 2005-07-05 at 15:02 +0200, Ondrej Zary wrote:


Ok, looks alright for both. Your machine is quite slow, perhaps that is
showing the slower performance. Can you try and make HZ 100 in 2.6 and
test again? 2.6.13-recent has it as a config option, otherwise edit
include/asm/param.h appropriately.


I forgot to write that my 2.6.12 kernel is already compiled with HZ 100 (it makes the system more responsive). I've just tried 2.6.8.1 with HZ 1000 and there is no difference in HDD performance comparing to 2.6.12.


OK, interesting. You could try and boot with profile=2 and do

# readprofile -r
# dd if=/dev/hda of=/dev/null bs=128k # readprofile > prof_output

for each kernel and post it here, so we can see if anything sticks out.


Here are the profiles (used dd with count=4096) from 2.4.26 and 2.6.12 (nothing from 2.6.8.1 because I don't have the .map file anymore).


Looks interesting, 2.6 spends oodles of times copying to user space.
Lets check if raw reads perform ok, please try and time this app in 2.4
and 2.6 as well.

# gcc -Wall -O2 -o oread oread.c
# time ./oread /dev/hda

oread is faster than dd, but still not as fast as 2.4. In 2.6.12, HDD led is blinking, in 2.4 it's solid on during the read.

2.6.12:
root@pentium:/home/rainbow# time ./oread /dev/hda

real    0m25.082s
user    0m0.000s
sys     0m0.680s

2.4.26:
root@pentium:/home/rainbow# time ./oread /dev/hda

real    0m23.513s
user    0m0.000s
sys     0m2.360s

--
Ondrej Zary
  2016 default_idle                              25.2000
     1 system_call                                0.0156
     2 handle_IRQ_event                           0.0179
     1 schedule                                   0.0012
     1 __run_task_queue                           0.0104
     4 follow_page                                0.0312
     3 get_user_pages                             0.0063
     4 mark_dirty_kiobuf                          0.0357
     1 handle_mm_fault                            0.0048
     2 generic_file_direct_IO                     0.0026
     1 lru_cache_add                              0.0089
     2 init_buffer                                0.0625
    12 set_bh_page                                0.1071
     3 create_buffers                             0.0134
    30 generic_direct_IO                          0.0457
    17 brw_kiovec                                 0.0186
    11 max_block                                  0.0764
     9 blkdev_get_block                           0.1406
     2 blkdev_direct_IO                           0.0417
     1 write_profile                              0.0208
     2 generic_unplug_device                      0.0312
    93 __make_request                             0.0524
    25 generic_make_request                       0.0781
    20 submit_bh                                  0.0781
     5 ide_inb                                    0.3125
    12 ide_outb                                   0.7500
     1 ide_outl                                   0.0625
     1 ide_wait_stat                              0.0030
     4 ide_execute_command                        0.0312
     2 ide_do_request                             0.0050
     4 ide_get_queue                              0.0625
     2 ide_intr                                   0.0069
     2 ide_dma_intr                               0.0104
    10 ide_build_sglist                           0.0160
     1 ide_build_dmatable                         0.0024
     1 __ide_dma_read                             0.0042
     1 __constant_c_and_count_memset              0.0069
     1 __ide_do_rw_disk                           0.0007
    42 idedisk_end_request                        0.2188
     4 __rdtsc_delay                              0.1250
     0 *unknown*
  2356 total                                      0.0013
     1 sched_clock                                0.0057
     3 cond_resched_lock                          0.0312
     2 write_profile                              0.0312
     1 __wake_up_bit                              0.0208
     2 __generic_file_aio_read                    0.0038
     1 generic_file_read                          0.0052
     1 mempool_alloc                              0.0037
     1 set_page_dirty                             0.0125
     3 set_page_dirty_lock                        0.0625
     4 __follow_page                              0.0227
     7 get_user_pages                             0.0072
     2 do_wp_page                                 0.0025
     8 __bio_add_page                             0.0227
     5 bio_add_page                               0.1562
     1 bio_set_map_data                           0.0208
     1 update_atime                               0.0057
     1 dio_get_page                               0.0156
     1 dio_bio_submit                             0.0069
     2 dio_bio_complete                           0.0096
     5 submit_page_section                        0.0164
     1 dio_zero_block                             0.0078
    13 do_direct_IO                               0.0150
     2 direct_io_worker                           0.0014
     2 __copy_to_user_ll                          0.0312
  2428 acpi_processor_idle                        4.0000
     4 blk_rq_map_sg                              0.0114
    10 __make_request                             0.0086
     1 generic_make_request                       0.0022
     1 as_set_request                             0.0089
     4 ide_end_request                            0.0278
     6 ide_do_request                             0.0072
     1 ide_intr                                   0.0026
     5 ide_outb                                   0.3125
     1 ide_execute_command                        0.0063
     2 ide_build_sglist                           0.0139
     5 schedule                                   0.0033
     1 io_schedule                                0.0312
     0 *unknown*
  2539 total                                      0.0012

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]
  Powered by Linux