Date: Wed, 25 Sep 2002 22:15:48 -0500 (CDT) From: Sean Farley <sean-freebsd@farley.org> To: freebsd-hackers@freebsd.org Subject: Slow I/O responsiveness with UDMA133 Message-ID: <20020925215927.L384-100000@thor.farley.org>
next in thread | raw e-mail | index | archive | help
I have a Soltek 75DRV5 (VIA 8233a) and a Maxtor 6L080L4. The problem I am having is with poor performance with ATA-133. My ATA-33 system beats it. After building a new system, I noticed that it was less responsive when it came to I/O concerning the hard drive. The standard XFree86 source extraction would slow down anything else that tried to access something off of the drive. It could take at least 10-20 seconds for a login attempt from the console to prompt for the password after I entered the user ID. On my old system this was not the case. It would slow down the system, but it would be much more responsive. In both cases the write cache was disabled. I have fiddled with the BIOS without success. I even tried changing the PCI latency on different PCI devices to see if kern/32338 may be effecting me. To imitate the problem and get some numbers as well, I have been trying things out using bonnie++. I ran "bonnie++ -s 256 -d /usr/tmp/bonnie" where /usr/tmp/bonnie was an empty directory. I did not have trouble with my cable being recognized, but I am beginning to wonder whether the order is impacting performance as the hard drive is on the secondary controller. I will be annoyed if that has been the problem. I still need to dig the box out and try this. With write cache enabled it does perform better, but I would like the new computer to at least equal the old system without it enabled. Here are some benchmarks on my computers. I believe the sequential output is the killer. atacontrol does show the new system to be using UDMA133. Both drives are on a controller by themselves. Before I get to the benchmarks, I have a ktrace of ls -lF of /usr/bin during bonnie++. It shows some long times during the listing. ... 410 ls 5.497238 CALL readlink(0xbfbfed20,0xbfbfe91c,0x400) 410 ls 0.096740 NAMI "./mailq" 410 ls 12.262074 RET readlink 21/0x15 ... If I run it again, I can get it to wait a long time on a different call like close(). Are these times normal? For a system giving slower values from bonnie++ than a PIII 450, I would expect even better responsiveness. ---------------------------------------------- New System ---------------------------------------------- Athlon XP 2100 Maxtor (76345MB <MAXTOR 6L080L4> [155114/16/63] at ata1-master UDMA133) 7200 RPM hw.ata.ata_dma: 1 hw.ata.wc: 0 hw.ata.tags: 0 hw.ata.atapi_dma: 0 Bonnie++ test (w/o write cache) ------------------------------- Writing with putc()...done Writing intelligently...done Rewriting...done Reading with getc()...done Reading intelligently...done start 'em...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.02c ------Sequential Output------ -Per Chr- --Block-- -Rewrite- Machine Size K/sec %CP K/sec %CP K/sec %CP System 1 256M 10757 10 10767 3 11188 4 --Sequential Input- --Random- -Per Chr- --Block-- --Seeks-- K/sec %CP K/sec %CP /sec %CP 67468 97 468575 99 12770 29 ------Sequential Create------ -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP 16 9880 17 +++++ +++ +++++ +++ --------Random Create-------- -Create-- --Read--- -Delete-- /sec %CP /sec %CP /sec %CP +++++ +++ +++++ +++ +++++ +++ ---------------------------------------------- Old System ---------------------------------------------- PIII 450 Seagate (27199MB <ST328040A> [55262/16/63] at ata0-master UDMA33) 5400RPM hw.ata.ata_dma: 1 hw.ata.wc: 0 hw.ata.tags: 0 hw.ata.atapi_dma: 0 Bonnie++ test ------------- Writing with putc()...done Writing intelligently...done Rewriting...done Reading with getc()...done Reading intelligently...done start 'em...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.02c ------Sequential Output------ -Per Chr- --Block-- -Rewrite- Machine Size K/sec %CP K/sec %CP K/sec %CP System 2 256M 16246 89 16052 24 7069 14 --Sequential Input- --Random- -Per Chr- --Block-- --Seeks-- K/sec %CP K/sec %CP /sec %CP 14597 94 17455 14 462.2 3 ------Sequential Create------ -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP 16 5081 46 +++++ +++ 13559 95 --------Random Create-------- -Create-- --Read--- -Delete-- /sec %CP /sec %CP /sec %CP 8218 68 +++++ +++ 13176 94 Sean ----------------------- sean-freebsd@farley.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020925215927.L384-100000>