How to improve the performance of "Hard Disk" - VxWorks

This is a discussion on How to improve the performance of "Hard Disk" - VxWorks ; Now ,I am testing the accessing speed of the Hard Disk on a PC, I use Tornado2.2 for X86. The PC is a cerlorn 1.7GHz machine. Hard disk is 7200. Accroding to the Tornado's help, I have finished two works: ...

+ Reply to Thread
Results 1 to 8 of 8

Thread: How to improve the performance of "Hard Disk"

  1. How to improve the performance of "Hard Disk"


    Now ,I am testing the accessing speed of the Hard Disk on a PC, I
    use Tornado2.2 for X86.
    The PC is a cerlorn 1.7GHz machine. Hard disk is 7200.

    Accroding to the Tornado's help, I have finished two works:
    first. I established a "dosFS" file system on the disk,then
    read/write a file
    send. I established a "rawFS" file system , then read/write a
    file .

    Both on these two file system, the "write" speed is about 4MB/s ,
    the "read" speed is about 3.5MB/s. This is far slow form the Hard
    Disk's performance. Why? How to improve it ?


  2. Re: How to improve the performance of "Hard Disk"

    heartofdra@gmail.com wrote:
    > Now ,I am testing the accessing speed of the Hard Disk on a PC, I
    > use Tornado2.2 for X86.
    > The PC is a cerlorn 1.7GHz machine. Hard disk is 7200.
    >
    > Accroding to the Tornado's help, I have finished two works:
    > first. I established a "dosFS" file system on the disk,then
    > read/write a file
    > send. I established a "rawFS" file system , then read/write a
    > file .
    >
    > Both on these two file system, the "write" speed is about 4MB/s ,
    > the "read" speed is about 3.5MB/s. This is far slow form the Hard
    > Disk's performance. Why? How to improve it ?
    >


    I suspect perhaps that DMA is not enabled but there are probably other
    factors as well.

    The fact remains that 'out of the box' vxWorks IO performance (ATA, USB,
    etc) is very slow. There are various tweaks you can try (using fwrite,
    not using fwrite, changing cache size, enabling DMA) that will slow down
    and speed up the out of box performance but you will never approach the
    speed of other operating systems.

    I suggest that you open a ticket though when you open the ticket, Wind
    River will tell you that you are the only customer that has ever noticed
    so there must be something wrong with you, your target or your code.

    Actually, given that you are using an old version of vxWorks, what will
    actually happen is they will tell you to updated because that will
    surely solve it...Of course it won't.... That goodness you are paying
    for support.

    Signed,

    A fairly loyal vxWorks user who has been frustrated for years by issues
    such as this








  3. Re: How to improve the performance of "Hard Disk"

    On Jun 1, 4:27 am, Jeffrey Creem wrote:
    > heartof...@gmail.com wrote:
    > > Now ,I am testing the accessing speed of the HardDiskon a PC, I
    > > use Tornado2.2 for X86.
    > > The PC is a cerlorn 1.7GHz machine. Harddiskis 7200.

    >
    > > Accroding to the Tornado's help, I have finished two works:
    > > first. I established a "dosFS" file system on thedisk,then
    > > read/write a file
    > > send. I established a "rawFS" file system , then read/write a
    > > file .

    >
    > > Both on these two file system, the "write" speed is about 4MB/s ,
    > > the "read" speed is about 3.5MB/s. This is farslowform the Hard
    > >Disk'sperformance. Why? How to improve it ?

    >
    > I suspect perhaps that DMA is not enabled but there are probably other
    > factors as well.
    >
    > The fact remains that 'out of the box' vxWorksIOperformance (ATA, USB,
    > etc) is veryslow. There are various tweaks you can try (using fwrite,
    > not using fwrite, changing cache size, enabling DMA) that willslowdown
    > and speed up the out of box performance but you will never approach the
    > speed of other operating systems.
    >
    > I suggest that you open a ticket though when you open the ticket, Wind
    > River will tell you that you are the only customer that has ever noticed
    > so there must be something wrong with you, your target or your code.
    >
    > Actually, given that you are using an old version of vxWorks, what will
    > actually happen is they will tell you to updated because that will
    > surely solve it...Of course it won't.... That goodness you are paying
    > for support.
    >
    > Signed,
    >
    > A fairly loyal vxWorks user who has been frustrated for years by issues
    > such as this


    As an added data point, I can attest to similar experiences, on all
    counts. The worst part of this whole experience is that when asked
    point blank what constitutes expected disk throughput performance,
    they ignore the question.

    In my case, I have a slower hard drive, so my problem is even more
    acute (I'm lucky if I can manage 3 MBps in contrived situations). I
    only wish this had been noticed earlier on in the project, so that we
    could look at other solutions.

    Please follow up with your further experiences, especially if you
    discover any remedies.

    Thanks,
    Jason Marshall


  4. Re: How to improve the performance of "Hard Disk"

    Also, it is very strange that the vxWorks "cavil about" the disk.

    When I used a old hard disk-------- a WD 6GB hard disk , none of
    the file system can't be established.
    but when I triede on a Seagate 160GB hard disk, the tail runs well.









    On 6 1 , 3 33 , "heartof...@gmail.com" wrote:
    > Now ,I am testing the accessing speed of the Hard Disk on a PC, I
    > use Tornado2.2 for X86.
    > The PC is a cerlorn 1.7GHz machine. Hard disk is 7200.
    >
    > Accroding to the Tornado's help, I have finished two works:
    > first. I established a "dosFS" file system on the disk,then
    > read/write a file
    > send. I established a "rawFS" file system , then read/write a
    > file .
    >
    > Both on these two file system, the "write" speed is about 4MB/s ,
    > the "read" speed is about 3.5MB/s. This is far slow form the Hard
    > Disk's performance. Why? How to improve it ?




  5. Re: How to improve the performance of "Hard Disk"

    On Jun 12, 6:25 pm, "heartof...@gmail.com"
    wrote:
    > Also, it is very strange that the vxWorks "cavil about" the disk.
    >
    > When I used a old hard disk-------- a WD 6GB hard disk , none of
    > the file system can't be established.
    > but when I triede on a Seagate 160GB hard disk, the tail runs well.
    >
    > On 6 1 , 3 33 , "heartof...@gmail.com" wrote:
    >
    > > Now ,I am testing the accessing speed of the Hard Disk on a PC, I
    > > use Tornado2.2 for X86.
    > > The PC is a cerlorn 1.7GHz machine. Hard disk is 7200.

    >
    > > Accroding to the Tornado's help, I have finished two works:
    > > first. I established a "dosFS" file system on the disk,then
    > > read/write a file
    > > send. I established a "rawFS" file system , then read/write a
    > > file .

    >
    > > Both on these two file system, the "write" speed is about 4MB/s ,
    > > the "read" speed is about 3.5MB/s. This is far slow form the Hard
    > > Disk's performance. Why? How to improve it ?


    If you don't have dcache enabled, that can help a bit with disk
    contention if nothing else. And in the Tornado versions, there's a
    function for tuning the dcache (dcacheDevTune or something to that
    effect) that might help you out if you're using a big disk cache. The
    built-in tuning parameters seem targeted to very modest cache sizes.
    For big memory and large disks, there seems to be not enough write-
    behind, and insufficient slots in the lookup table.

    There appear to be some patches in the 6.X series that makes some
    improvements to throughput, but that probably doesn't help you too
    much (and it's not helping me very much either).

    -Jason


  6. Re: How to improve the performance of "Hard Disk"

    I find this below in "ataDrv.c" , my tornado is 2.2 for X86 . I think
    this is the trouble


    DMA transfer is not supported in this release. If ATA_PIO_AUTO or
    ATA_DMA_AUTO
    is specified, the driver automatically chooses the maximum mode
    supported by the
    device. If ATA_PIO_MULTI or ATA_DMA_MULTI is specified, and the
    device does
    not support it, the driver automatically chooses single sector or word
    mode.
    If ATA_BITS_32 is specified, the driver uses 32-bit transfer mode
    regardless of
    the capability of the drive.






    On 6 1 , 3 33 , "heartof...@gmail.com" wrote:
    > Now ,I am testing the accessing speed of the Hard Disk on a PC, I
    > use Tornado2.2 for X86.
    > The PC is a cerlorn 1.7GHz machine. Hard disk is 7200.
    >
    > Accroding to the Tornado's help, I have finished two works:
    > first. I established a "dosFS" file system on the disk,then
    > read/write a file
    > send. I established a "rawFS" file system , then read/write a
    > file .
    >
    > Both on these two file system, the "write" speed is about 4MB/s ,
    > the "read" speed is about 3.5MB/s. This is far slow form the Hard
    > Disk's performance. Why? How to improve it ?




  7. Re: How to improve the performance of "Hard Disk"

    That would be a problem. And it looks like VxWorks 6.X only supports
    DMA on motherboard with a PIIX4 controller, which is why my Pentium-M
    system claims to do UDMA, but the numbers look more like PIO mode 1.

    You're using a Celeron-based system, so you might luck out, if you're
    at liberty to upgrade.

    On Jun 15, 1:44 am, "heartof...@gmail.com"
    wrote:
    > I find this below in "ataDrv.c" , my tornado is 2.2 for X86 . I think
    > this is the trouble
    >
    > DMA transfer is not supported in this release. If ATA_PIO_AUTO or
    > ATA_DMA_AUTO
    > is specified, the driver automatically chooses the maximum mode
    > supported by the
    > device. If ATA_PIO_MULTI or ATA_DMA_MULTI is specified, and the
    > device does
    > not support it, the driver automatically chooses single sector or word
    > mode.
    > If ATA_BITS_32 is specified, the driver uses 32-bit transfer mode
    > regardless of
    > the capability of the drive.
    >
    > On 6 1 , 3 33 , "heartof...@gmail.com" wrote:
    >
    > > Now ,I am testing the accessing speed of the Hard Disk on a PC, I
    > > use Tornado2.2 for X86.
    > > The PC is a cerlorn 1.7GHz machine. Hard disk is 7200.

    >
    > > Accroding to the Tornado's help, I have finished two works:
    > > first. I established a "dosFS" file system on the disk,then
    > > read/write a file
    > > send. I established a "rawFS" file system , then read/write a
    > > file .

    >
    > > Both on these two file system, the "write" speed is about 4MB/s ,
    > > the "read" speed is about 3.5MB/s. This is far slow form the Hard
    > > Disk's performance. Why? How to improve it ?



  8. Re: How to improve the performance of "Hard Disk"

    Oops, that should read, "PIIX4, ICH2 and ICH3". But taking a closer
    look at http://en.wikipedia.org/wiki/List_of_Intel_chipsets, it looks
    like you're probably still in the same boat as I am, since your
    Celeron is Pentium 4 based.

    -Jason

    On Jun 15, 9:48 am, Jason wrote:
    > That would be a problem. And it looks like VxWorks 6.X only supports
    > DMA on motherboard with a PIIX4 controller, which is why my Pentium-M
    > system claims to do UDMA, but the numbers look more like PIO mode 1.
    >
    > You're using a Celeron-based system, so you might luck out, if you're
    > at liberty to upgrade.
    >
    > On Jun 15, 1:44 am, "heartof...@gmail.com"
    > wrote:
    >
    > > I find this below in "ataDrv.c" , my tornado is 2.2 for X86 . I think
    > > this is the trouble

    >
    > > DMA transfer is not supported in this release. If ATA_PIO_AUTO or
    > > ATA_DMA_AUTO
    > > is specified, the driver automatically chooses the maximum mode
    > > supported by the
    > > device. If ATA_PIO_MULTI or ATA_DMA_MULTI is specified, and the
    > > device does
    > > not support it, the driver automatically chooses single sector or word
    > > mode.
    > > If ATA_BITS_32 is specified, the driver uses 32-bit transfer mode
    > > regardless of
    > > the capability of the drive.

    >
    > > On 6 1 , 3 33 , "heartof...@gmail.com" wrote:

    >
    > > > Now ,I am testing the accessing speed of the Hard Disk on a PC, I
    > > > use Tornado2.2 for X86.
    > > > The PC is a cerlorn 1.7GHz machine. Hard disk is 7200.

    >
    > > > Accroding to the Tornado's help, I have finished two works:
    > > > first. I established a "dosFS" file system on the disk,then
    > > > read/write a file
    > > > send. I established a "rawFS" file system , then read/write a
    > > > file .

    >
    > > > Both on these two file system, the "write" speed is about 4MB/s ,
    > > > the "read" speed is about 3.5MB/s. This is far slow form the Hard
    > > > Disk's performance. Why? How to improve it ?




+ Reply to Thread