nForce3 /usbstorage : deadly slow
I have a problem with my debian system on my Asus K8N board, which is nForce3 250 based:whenever i plug in a USB2.0-enabled storage device (in my case recently a 1GB Creative Muvo TX SE), the kernel recognizes it as USB-2.0 device, the ehci_hcd module gets loaded, usbview and all other sources tell me that it is a 480MB/s device : Speed: 480Mb/s (high) USB Version: 2.00But: I never even reach a transfer rate of 800kB/s (which would only be 1/600 of the maximum thinkable speed). Instead, it writes files with about 200 kB/s, until after a few seconds, the transfer rate collapses to 80kB/s, which is not only bad but ugly. On the same machine, booted with an i386 2.6-kernel from CDROM (Knoppix 4.0.1), the device is only recognized as USB1.1 full speed device, but still transfers a lot faster than under debian/amd64.I examined my loaded modules and wasn't able to make out any chipset-specific modules, only some i2c-nforce modules (lsmod output attached), are there any modules I have to load /unload to make it work or do You have any other suggestion? Thanks,Marcus Müller Module Size Used by nls_iso8859_1 5568 1 nls_cp437 7296 1 vfat 13440 1 fat51824 1 vfat sd_mod 17880 2 vmnet 30552 7 vmmon 181944 0 binfmt_misc12176 1 thermal15308 0 fan 5384 0 button 7840 0 processor 24600 1 thermal ac 5704 0 battery10760 0 lp 12864 0 ipv6 252256 17 reiserfs 226352 3 dm_mod 53800 0 nvram 8392 0 i2c_dev10720 0 msr 3976 0 nvidia 4856084 18 aes27112 0 cryptoloop 4288 0 loop 15760 1 cryptoloop it87 24356 0 hwmon_vid 3008 1 it87 i2c_isa 5952 1 it87 ide_generic 1600 0 [permanent] usb_storage80128 1 usbhid 34720 0 snd_intel8x0 34536 1 snd_ac97_codec102012 1 snd_intel8x0 snd_ac97_bus2880 1 snd_ac97_codec analog 10784 0 snd_pcm_oss51296 0 snd_mixer_oss 17472 1 snd_pcm_oss psmouse39308 0 i2c_nforce2 7808 0 serio_raw 7748 0 ide_cd 40224 1 cdrom 36280 1 ide_cd gameport 15824 1 analog snd_mpu401 9440 0 snd_mpu401_uart 7872 1 snd_mpu401 snd_pcm89932 3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss i2c_core 23064 4 i2c_dev,it87,i2c_isa,i2c_nforce2 shpchp 45120 0 pci_hotplug11716 1 shpchp forcedeth 23876 0 ehci_hcd 30344 0 ohci_hcd 19716 0 parport_pc 36592 1 parport38860 2 lp,parport_pc snd_rawmidi26400 1 snd_mpu401_uart snd_seq_device 9744 1 snd_rawmidi snd_timer 23944 1 snd_pcm snd_page_alloc 11344 2 snd_intel8x0,snd_pcm snd57984 12 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_mpu401,snd_mpu401_uart,snd_pcm,snd_rawmidi,snd_seq_device,snd_timer soundcore 10720 1 snd pcspkr 3784 0 floppy 65664 0 ext3 128272 4 jbd54184 1 ext3 mbcache 9352 1 ext3 ide_disk 16256 9 sata_nv10628 0 libata 60760 1 sata_nv scsi_mod 144856 3 sd_mod,usb_storage,libata amd74xx15280 0 [permanent] generic 5636 0 [permanent] ide_core 139160 6 ide_generic,usb_storage,ide_cd,ide_disk,amd74xx,generic evdev 10944 0
Re: nForce3 /usbstorage : deadly slow
Dear Marcus, could you send also the lines in /var/log/messages related to the hardware detection of the usb storage and to the device associated to it? Something similar to: ... May 11 09:25:49 xxx kernel: usb 4-1.1: new high speed USB device using ehci_hcd and address 5 May 11 09:25:49 xxx kernel: Initializing USB Mass Storage driver... May 11 09:25:49 xxx kernel: scsi0 : SCSI emulation for USB Mass Storage devices May 11 09:25:49 xxx kernel: usbcore: registered new driver usb-storage May 11 09:25:49 xxx kernel: USB Mass Storage support registered. May 11 09:25:54 xxx kernel: sda: assuming drive cache: write through May 11 09:25:54 xxx kernel: sda: assuming drive cache: write through May 11 09:25:54 xxx kernel: sda: sda1 ... Ciao Leonardo Marcus Müller wrote: I have a problem with my debian system on my Asus K8N board, which is nForce3 250 based: whenever i plug in a USB2.0-enabled storage device (in my case recently a 1GB Creative Muvo TX SE), the kernel recognizes it as USB-2.0 device, the ehci_hcd module gets loaded, usbview and all other sources tell me that it is a 480MB/s device : Speed: 480Mb/s (high) USB Version: 2.00 But: I never even reach a transfer rate of 800kB/s (which would only be 1/600 of the maximum thinkable speed). Instead, it writes files with about 200 kB/s, until after a few seconds, the transfer rate collapses to 80kB/s, which is not only bad but ugly. On the same machine, booted with an i386 2.6-kernel from CDROM (Knoppix 4.0.1), the device is only recognized as USB1.1 full speed device, but still transfers a lot faster than under debian/amd64. I examined my loaded modules and wasn't able to make out any chipset-specific modules, only some i2c-nforce modules (lsmod output attached), are there any modules I have to load /unload to make it work or do You have any other suggestion? Thanks, Marcus Müller Module Size Used by nls_iso8859_1 5568 1 nls_cp437 7296 1 vfat 13440 1 fat51824 1 vfat sd_mod 17880 2 vmnet 30552 7 vmmon 181944 0 binfmt_misc12176 1 thermal15308 0 fan 5384 0 button 7840 0 processor 24600 1 thermal ac 5704 0 battery10760 0 lp 12864 0 ipv6 252256 17 reiserfs 226352 3 dm_mod 53800 0 nvram 8392 0 i2c_dev10720 0 msr 3976 0 nvidia 4856084 18 aes27112 0 cryptoloop 4288 0 loop 15760 1 cryptoloop it87 24356 0 hwmon_vid 3008 1 it87 i2c_isa 5952 1 it87 ide_generic 1600 0 [permanent] usb_storage80128 1 usbhid 34720 0 snd_intel8x0 34536 1 snd_ac97_codec102012 1 snd_intel8x0 snd_ac97_bus2880 1 snd_ac97_codec analog 10784 0 snd_pcm_oss51296 0 snd_mixer_oss 17472 1 snd_pcm_oss psmouse39308 0 i2c_nforce2 7808 0 serio_raw 7748 0 ide_cd 40224 1 cdrom 36280 1 ide_cd gameport 15824 1 analog snd_mpu401 9440 0 snd_mpu401_uart 7872 1 snd_mpu401 snd_pcm89932 3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss i2c_core 23064 4 i2c_dev,it87,i2c_isa,i2c_nforce2 shpchp 45120 0 pci_hotplug11716 1 shpchp forcedeth 23876 0 ehci_hcd 30344 0 ohci_hcd 19716 0 parport_pc 36592 1 parport38860 2 lp,parport_pc snd_rawmidi26400 1 snd_mpu401_uart snd_seq_device 9744 1 snd_rawmidi snd_timer 23944 1 snd_pcm snd_page_alloc 11344 2 snd_intel8x0,snd_pcm snd57984 12 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_mpu401,snd_mpu401_uart,snd_pcm,snd_rawmidi,snd_seq_device,snd_timer soundcore 10720 1 snd pcspkr 3784 0 floppy 65664 0 ext3 128272 4 jbd54184 1 ext3 mbcache 9352 1 ext3 ide_disk 16256 9 sata_nv10628 0 libata 60760 1 sata_nv scsi_mod 144856 3 sd_mod,usb_storage,libata amd74xx15280 0 [permanent] generic 5636 0 [permanent] ide_core 139160 6 ide_generic,usb_storage,ide_cd,ide_disk,amd74xx,generic
Fwd: nForce3 /usbstorage : deadly slow[FIXED, but sync is problem]
I could send dmesg-output, but I just -err- fixed the problem:I found out that the loss of speed is due to the sync option for mount.I didn't think of mount options at first, but after I tried to format the stick with more obscure file system, the speed went up. So I examined the mount options, and after a few trials I found out that the sync option slowed the whole thing down by about factor 10 (or even more), and disabled it (/etc/usbmount/...).The problem is, that without sync, unplugging an un- umounted device is datacide. umounting the device after transferring 700 MB takes about 24sec, what seems to be long. Any idea why sync is _that_ slow with vfat (fat32)? Does it always have to rewrite the whole both FATs including analyzing the actual contents of the disk whenever a file is written? Well, I can live with having to umount usb-sticks, but I can't let my young relatives use my usbsticks :( Thanks, Marcus MüllerOn 5/18/06, Leonardo Lanzi [EMAIL PROTECTED] wrote: Dear Marcus,could you send also the lines in /var/log/messages related to thehardware detection of the usb storage and to the device associated to it?Something similar to:...May 11 09:25:49 xxx kernel: usb 4-1.1: new high speed USB device usingehci_hcd and address 5May 11 09:25:49 xxx kernel: Initializing USB Mass Storage driver...May 11 09:25:49 xxx kernel: scsi0 : SCSI emulation for USB Mass Storagedevices May 11 09:25:49 xxx kernel: usbcore: registered new driver usb-storageMay 11 09:25:49 xxx kernel: USB Mass Storage support registered.May 11 09:25:54 xxx kernel: sda: assuming drive cache: write throughMay 11 09:25:54 xxx kernel: sda: assuming drive cache: write through May 11 09:25:54 xxx kernel: sda: sda1...CiaoLeonardoMarcus Müller wrote: I have a problem with my debian system on my Asus K8N board, which is nForce3 250 based: whenever i plug in a USB2.0-enabled storage device (in my case recently a 1GB Creative Muvo TX SE), the kernel recognizes it as USB-2.0 device, the ehci_hcd module gets loaded, usbview and all other sources tell me that it is a 480MB/s device : Speed: 480Mb/s (high)USB Version:2.00 But: I never even reach a transfer rate of 800kB/s (which would only be 1/600 of the maximum thinkable speed). Instead, it writes files with about 200 kB/s, until after a few seconds, the transfer rate collapses to 80kB/s, which is not only bad but ugly. On the same machine, booted with an i386 2.6-kernel from CDROM (Knoppix 4.0.1 ), the device is only recognized as USB1.1 full speed device, but still transfers a lot faster than under debian/amd64. I examined my loaded modules and wasn't able to make out any chipset-specific modules, only some i2c-nforce modules (lsmod output attached), are there any modules I have to load /unload to make it work or do You have any other suggestion? Thanks, Marcus Müller ModuleSizeUsed by nls_iso8859_1 55681 nls_cp437 72961 vfat 134401 fat518241 vfat sd_mod 178802 vmnet305527 vmmon 1819440 binfmt_misc121761 thermal153080 fan 53840 button78400 processor246001 thermal ac57040 battery107600 lp 128640 ipv625225617 reiserfs2263523 dm_mod 538000 nvram 83920 i2c_dev107200 msr 39760 nvidia 485608418 aes271120 cryptoloop42880 loop 157601 cryptoloop it87 243560 hwmon_vid 30081 it87 i2c_isa 59521 it87 ide_generic 16000 [permanent] usb_storage801281 usbhid 347200 snd_intel8x0 345361 snd_ac97_codec1020121 snd_intel8x0 snd_ac97_bus28801 snd_ac97_codec analog 107840 snd_pcm_oss512960 snd_mixer_oss174721 snd_pcm_oss psmouse393080 i2c_nforce2 78080 serio_raw 77480 ide_cd 402241 cdrom362801 ide_cd gameport 158241 analog snd_mpu40194400 snd_mpu401_uart 78721 snd_mpu401 snd_pcm899323 snd_intel8x0,snd_ac97_codec,snd_pcm_oss i2c_core 230644 i2c_dev,it87,i2c_isa,i2c_nforce2 shpchp 451200 pci_hotplug117161 shpchp forcedeth238760 ehci_hcd 303440 ohci_hcd 197160 parport_pc 365921 parport388602 lp,parport_pc snd_rawmidi264001 snd_mpu401_uart snd_seq_device97441 snd_rawmidi snd_timer239441 snd_pcm snd_page_alloc 113442 snd_intel8x0,snd_pcm snd5798412 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_mpu401,snd_mpu401_uart,snd_pcm,snd_rawmidi,snd_seq_device,snd_timer soundcore107201 snd pcspkr37840 floppy 656640 ext31282724 jbd541841 ext3 mbcache 93521 ext3 ide_disk 162569 sata_nv106280 libata 607601 sata_nv scsi_mod1448563 sd_mod,usb_storage,libata amd74xx152800 [permanent] generic 56360 [permanent] ide_core1391606 ide_generic,usb_storage,ide_cd,ide_disk,amd74xx,generic evdev109440
Re: Fwd: nForce3 /usbstorage : deadly slow[FIXED, but sync is problem]
The problem is, that without sync, unplugging an un- umounted device is datacide. umounting the device after transferring 700 MB takes about 24sec, what seems to be long. You can manually run sync to flush stuff out to disk. The long delay you're seeing on unmount is because copying the 700Mb probably kept most of it in cache, and it hadn't finished writing it back by the time you tried to unmount the disk. Any idea why sync is _that_ slow with vfat (fat32)? Does it always have to rewrite the whole both FATs including analyzing the actual contents of the disk whenever a file is written? The sync option ensures the data is always consistent on the drive, so I'm not surprised you're seeing a large slowdown. Each write probably requires several round-trips to update the FAT. Paul -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of unsubscribe. Trouble? Contact [EMAIL PROTECTED]
Re: Fwd: nForce3 /usbstorage : deadly slow[FIXED, but sync is problem]
Thanks!Calling sync automated every 2 seconds (using watch) only slightly decreased performance, while speeding up the umount process extremely, and giving the feeling that the worst case scenario of an usb storage device being unplugged in the middle of a file transition loses a lot of its effect. (Note: I use my USB devices most of the time with only one to maybe 5 files simultaniously accessed, so there is not that much lost in that case, running fsck usually does the job quite well, but without any syncing the unwritten buffers would propably have been too large) GreetingsMarcus MüllerOn 5/18/06, Paul Brook [EMAIL PROTECTED] wrote: The problem is, that without sync, unplugging an un- umounted device is datacide. umounting the device after transferring 700 MB takes about 24sec, what seems to be long.You can manually run sync to flush stuff out to disk. The long delay you're seeing on unmount is because copying the 700Mbprobably kept most of it in cache, and it hadn't finished writing it back bythe time you tried to unmount the disk. Any idea why sync is _that_ slow with vfat (fat32)? Does it always have to rewrite the whole both FATs including analyzing the actual contents of the disk whenever a file is written?The sync option ensures the data is always consistent on the drive, so I'm not surprised you're seeing a large slowdown. Each write probably requiresseveral round-trips to update the FAT.Paul