LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Hardware (https://www.linuxquestions.org/questions/linux-hardware-18/)
-   -   PCMCIA throughput (https://www.linuxquestions.org/questions/linux-hardware-18/pcmcia-throughput-512856/)

impic 12-22-2006 08:23 AM

PCMCIA throughput
 
Hey, first of all, sorry for the topic - I didn't know how to describe my problem in short :)

The problem is based on this thread:
http://www.linuxquestions.org/questi...d.php?t=512275

However, since today I don't think it's a networking problem anymore and so I decided to write a new thread here.

The problem is, that I have two different linux installations on my laptop. Both use the same module (r8169) for my gigabit LAN PCMCIA card, but only one of both actually goes at gigabit speeds (I call them A and B, where A operates at very low speed - around 5MB/s).

The only difference I noticed was the following:
'lspci -tv' on A
Code:

-[0000:00]-+-00.0  Intel Corporation 82855PM Processor to I/O Controller
          +-01.0-[0000:01]----00.0  ATI Technologies Inc RV350 [Mobility Radeon 9600 M10]
          +-1d.0  Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1
          +-1d.1  Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2
          +-1d.2  Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3
          +-1d.7  Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller
          +-1e.0-[0000:02-06]--+-[0000:03]---00.0  Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet
          |                    \-[0000:02]-+-00.0  VIA Technologies, Inc. IEEE 1394 Host Controller
          |                                +-01.0  Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
          |                                +-02.0  Intel Corporation PRO/Wireless 2200BG Network Connection
          |                                \-03.0  ENE Technology Inc CB1410 Cardbus Controller
          +-1f.0  Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge
          +-1f.1  Intel Corporation 82801DBM (ICH4-M) IDE Controller
          +-1f.3  Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller
          +-1f.5  Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller
          \-1f.6  Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller

'lspci -tv' on B:
Code:

-+-[03]---00.0  Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet
 \-[00]-+-00.0  Intel Corp. 82855PM Processor to I/O Controller
        +-01.0-[01]----00.0  ATI Technologies Inc RV350 [Mobility Radeon 9600 M10]
        +-1d.0  Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1
        +-1d.1  Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2
        +-1d.2  Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3
        +-1d.7  Intel Corp. 82801DB/DBM (ICH4/ICH4-M) USB 2.0 EHCI Controller
        +-1e.0-[02]--+-00.0  VIA Technologies, Inc. IEEE 1394 Host Controller
        |            +-01.0  Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
        |            +-02.0  Intel Corp. PRO/Wireless 2200BG
        |            \-03.0  ENE Technology Inc CB1410 Cardbus Controller
        +-1f.0  Intel Corp. 82801DBM LPC Interface Controller
        +-1f.1  Intel Corp. 82801DBM (ICH4) Ultra ATA Storage Controller
        +-1f.3  Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller
        +-1f.5  Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller
        \-1f.6  Intel Corp. 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller

You notice the line 'Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet' - which is the card we are talking of.

I don't have a real clue what those numbers mean, but it looks like on system A, the card has to share ressources with a lot of other devices, so that might be the reason for giving me so low transfer speeds.
So my question now is, how do I get the card 'to the top of the tree'?

Thanks in advance, impic.

Electro 12-23-2006 02:49 AM

PCMCIA or PC Card has a bandwidth equal or up to PCI bus speeds. In order for true 1 Gb network speeds, either PCI Extended or PCI Express have to be used because full-duplex for 1 Gb networks is 266 MB per second. I have a Realtek 8169 NIC on a USB 2.0 and IEEE-1394a (Firewire or i.Link) combo card. The Realtek chip is behind a PCI to PCI bridge chip that is on the combo card. I do not expect the NIC to send and recieve no more than 66 MB per second in full-duplex mode. Since Realtek makes very, very cheap chips that are mostly dependent on software efficiency, I do not expect Realtek 8169 to ever send or receive no more than 30 MB per second. The reason for this is because of software overhead like checksums for TCP and hardware layers.

The numbers that you see in the lspci print out is bus addressing.

The latency for my Realtek 8169 chip is 32, but your setup shows it is 64. Having a latency of 64 on some devices is ok, but sometimes the device can slow down the computer. You should check if the Realtek 8169 is set as busmaster. You can try to use setpci to change the latency or set it as busmaster and see if that helps. Be cautious on the syntax for setpci and backup your data before you attempt to do this.

Code:

-[0000:00]-+-00.0  Intel Corporation 82850 850 (Tehama) Chipset Host Bridge (MCH)
          +-01.0-[0000:01]----00.0  nVidia Corporation NV36.1 [GeForce FX 5700 Ultra]
          +-1e.0-[0000:02-03]--+-01.0-[0000:03]--+-08.0  NEC Corporation USB
          |                    |                +-08.1  NEC Corporation USB
          |                    |                +-08.2  NEC Corporation USB 2.0
          |                    |                +-09.0  VIA Technologies, Inc. IEEE 1394 Host Controller
          |                    |                \-0a.0  Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet
          |                    +-02.0  Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder
          |                    +-03.0  Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder
          |                    +-04.0  VIA Technologies Inc. VT1720/24 [Envy24PT/HT] PCI Multi-Channel Audio Controller
          |                    \-06.0  Triones Technologies, Inc. HPT366/368/370/370A/372/372N
          +-1f.0  Intel Corporation 82801BA ISA Bridge (LPC)
          +-1f.1  Intel Corporation 82801BA IDE U100
          +-1f.2  Intel Corporation 82801BA/BAM USB (Hub #1)
          +-1f.3  Intel Corporation 82801BA/BAM SMBus
          \-1f.4  Intel Corporation 82801BA/BAM USB (Hub #2)


impic 12-23-2006 04:17 AM

Hey,

thanks for your reply. I never expected it to run at true gigabit speeds, what I mean is just that I get more than with 10/100, which is what I get on system B (16MB/sec). The latency is 64 (40) on both systems, so that doesn't seem to be the problem.

Quote:

You can try to use setpci to change the latency or set it as busmaster and see if that helps.
Setting latency to 32 (20) has no impact on transfer speeds. When I go much lower or much higher, speeds go down to half.
I couldn't really find out how to set the busmaster flag, maybe you can tell me how. However, those flags are equal on both systems, so that doesn't seem to be the problem either. The differences in both 'lspci -vvv' are the following:

A
Code:

Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
B
Code:

Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-
So maybe I should try to adjust those. All I need to know now, is how to set them :)

Thanks again, impic.

Edit:
I finaly found out how to set those flags (command 0017), but still no difference - busmaster is set.

impic 12-24-2006 07:22 AM

I just booted the latest Ubuntu live DVD, setup apache2 and tried it over the net - 17MB/sec. That's anoying.
lspci -t und -vvv are completely identical on this system and my local (hda) one.

I have no idea where to look next, any recommendations?


All times are GMT -5. The time now is 09:54 AM.