• Welcome to OS2World OLD-STATIC-BACKUP Forum.
 

News:

This is an old OS2World backup forum for reference only. IT IS READ ONLY!!!

If you need help with OS/2 - eComStation visit http://www.os2world.com/forum

Main Menu

Genmac Wrapper driver performance

Started by kim, 2008.02.04, 14:50:07

Previous topic - Next topic

kim

Question if anyone have an idea regarding the performance of the genmac wrapper driver compared to native OS2 drivers. Asking since since to Intel and Broadcom based NICs there exists native OS2 drivers and as well the genmac wrapper. But, what would be the preferred solution?

Raiko

Lots of newer Intel nics are not supported by the native drivers. On one system I have 2 Intel nics, for the one built in I use Genmac and for the other I use a native driver. Both are Pro/1000 and so far I have not noticed any difference in performance between the two.

kim

Aware of the issue with newer NICs but since the system I'm trying out the eCS RC4 has a Broadcom NIC that has native OS2 drivers I was wondering if anyone made some tests of moving data back and forth to see how big the performance difference there might be and as well how it might affect the system itself when looking at CPU usage.

Saijin_Naib

Not to take away from your thread, but I have noticed a HUGE disparity between OS/2 and XP (same hardware) in terms of network performance. I use thespeakeasy speed test (only one eCS with old flash can use) and I find that its half as fast as XP (both in firefox, as close a test time as possible between reboot/change OS). Are the default settings for the NIC in MTPS a conservative setting, or is the poor performance due to the driver itself? (VIA RhineII driver)?

On the same machine, Vista more than doubles XP in terms of network performance @ speakeasy  soo, yeah. Whats up with that?

http://www.speakeasy.net/speedtest/

RobertM

Quote from: Saijin_Naib on 2008.02.04, 19:03:59
Not to take away from your thread, but I have noticed a HUGE disparity between OS/2 and XP (same hardware) in terms of network performance. I use thespeakeasy speed test (only one eCS with old flash can use) and I find that its half as fast as XP (both in firefox, as close a test time as possible between reboot/change OS). Are the default settings for the NIC in MTPS a conservative setting, or is the poor performance due to the driver itself? (VIA RhineII driver)?

On the same machine, Vista more than doubles XP in terms of network performance @ speakeasy  soo, yeah. Whats up with that?

http://www.speakeasy.net/speedtest/

Speakeasy is a poor test of speed for the following reasons:

  • It is based also off the performance speed of the Java implementation (which varies per implementation and OS)
  • It is dependant to some extent on browser performance (which is abysmal in eCS)

Now, oddly, I have noticed the following. My WSeB box, using Intel Pro/1000MT cards, gets far faster download speeds than the XP box in our office, but the XP box (also gigabit ethernet, connected to the same router and switch) reports absurd upload speeds (ie: far faster than the connection we have can support).

So, I'm not sure exactly what SpeakEasy actually is measuring, but according to it, the XP box is pushing twice as much bandwidth upstream than our connection is capable of - while the WSeB machine is pulling slightly less than our maximum bandwidth downstream (and the XP box is pulling 2/3 of that and cant come close to our connection's actual downstream speed).

So, their results on different platforms make little sense to me.

To test actual performance of the NIC and driver, one would need an isolated, local area setup with a test machine that had known bandwidth capabilities, and use that to test the other machines from. Besides any weird variances created by SpeakEasy (Java, browser, etc) the Internet in and of itself will skew things further (besides, I doubt you or anyone here has a gigabit pipe to the Internet - making it hard to truly gauge what the card or driver can support).

And of course, the card itself, even with the best of drivers - as well as what else is on the same bus eating bandwidth, can often be a bottleneck. That's why some server class network cards are horrendously expensive (as much as a PC costs in some cases).

-Rob


|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|


djcaetano

Quote from: RobertM on 2008.02.04, 21:18:25
To test actual performance of the NIC and driver, one would need an isolated, local area setup with a test machine that had known bandwidth capabilities, and use that to test the other machines from. Besides any weird variances created by SpeakEasy (Java, browser, etc) the Internet in and of itself will skew things further (besides, I doubt you or anyone here has a gigabit pipe to the Internet - making it hard to truly gauge what the card or driver can support).
And of course, the card itself, even with the best of drivers - as well as what else is on the same bus eating bandwidth, can often be a bottleneck. That's why some server class network cards are horrendously expensive (as much as a PC costs in some cases).

  This program is really good, but AFAIR it only works for NetBIOS/NetBIOS over TCP/IP. But it is a good test program:

http://hobbes.nmsu.edu/cgi-bin/h-search?sh=1&button=Search&key=netio&stype=all&sort=type&dir=%2F
 
  And it works on Windows too.

Saijin_Naib

#6
My results as a client, my roomate as host. The images explain the OS in each instance. In all cases XP was marginally better than OS/2, but in cases of like OS to like OS, the performance was best between the two machines. We will hopefully test my roomate as vista host/client later tonight after he installs it. Its pretty clear his NIC is far better than mine because his speeds seem much higher.

Saijin_Naib

#7
Here is loopback performance for me. These numbers are NUTS. What is going on here?

djcaetano

#8
Quote from: Saijin_Naib on 2008.02.07, 00:59:20
My results as a client, my roomate as host. The images explain the OS in each
...
this NIC is far better than mine because his speeds seem much higher.

  The test shows there is only a little difference between OS/2 and Windows. If you are using GenMac on eCS, then I believe the performance of GenMac is awesome. If you are not using GenMac, then there is already a base for GenMac comparison.
  The fact that made me think was the fact Windows reception seems indifferent to data size... even when using very small packets (like 1KB), which is somewhat weird to me. Anyway, a measured result is what it is. :)

djcaetano

#9
Quote from: Saijin_Naib on 2008.02.07, 01:13:34
Here is loopback performance for me. These numbers are NUTS. What is going on here?

  There is nothing nuts about them. They show the TCP/IP stack performance,
without interference of network driver and/or network lags. It seems OS/2's TCP/IP
stack is pretty faster than Windows stack. :)
  Also, the speed increase in OS/2 TCP/IP stack is measured as expected (it's
bigger for bigger packets). Windows TCP/IP stack has a somewhat inconsistent
speed increase (sending data in 4KB packets is slower than sending data in 2KB
packets... and receiving data in 8KB packets slower than receiving data in 4KB is
a weird result).

   If you are asking yourself "what the hell is the meaning of those numbers?", they
represent the maximum transfer speed your TCP/IP stack with the hardware you are
using.

   As a result, if your transfer is way below the speed of loopback, that means the
bottleneck can be the drivers (Windows and/or OS/2), your NICs or your machines'
connection.
   In that case, maybe simply exchanging the network driver will not give a good
comparison between GenMac and a "native" driver, because it's not that easy
to know what is the bottleneck. Since your connection seems to be an
100Mbps one (based on your tests, which had shown a result of 89Mbps), I
believe the bottleneck is the network cable or NIC.

   ( I am not expert in this area, I just had done some experiments in the past...
if I am talking nonsense, please, someone corrects me! ;) )

Saijin_Naib

My roomate got numbers in the 800mb range using PCLinuxOS on loopback. Is that feasible? I mean, Linux is quick on the internet, but it doesnt feel 200x as fast as WinXP, and certainly not 4x as fast as OS/2.

RobertM

#11
Quote from: Saijin_Naib on 2008.02.07, 23:24:34
My roomate got numbers in the 800mb range using PCLinuxOS on loopback. Is that feasible? I mean, Linux is quick on the internet, but it doesnt feel 200x as fast as WinXP, and certainly not 4x as fast as OS/2.

Hi,

Yes, it is quite feasible. Here are SOME reasons why (probably not nearly all).


  • OS/2's stack is configured IIRC, with default parameters that haven't changed too much from the days of 10Mb/s networking.
  • Linux's stack comes preconfigured for more real world scenarios (faster NICs, different setting used)
  • Windows' stack utilizes a lot of the bandwidth for MS themself (20%, if memory serves) which can be changed by the user - but isnt in a default configuration. In addition, the Windows stack implements a lot of restrictions on traffic to prevent full stack usage by trojans and bots - that poorly impacts normal TCP usage.

In addition, I don't think the stacks are equally configurable. Namely, the Windows one. The OS/2 stack is highly configurable - but very hard to figure out how. Many aspects of configuration are nowhere to be found in the manuals that accompany OS/2 - and many of the aspects that ARE documented as configurable have very little in the explanation of what they do. Oddly, some aspects (including default values, max and min values) are more easily found using the commandline tools, than using the help docs - which only tell you "this is the value you can change, this is the default" and nothing more.

The other problems with such tests (as NetIO) in real world usage scenarios, is though they are a good and very valid starting point, they do not show scaling performance (probably a poor term, but what I mean is, "how does the stack handle multiple simultaneous connections?") The Linux and OS/2 stacks are better in this respect (handling more connection traffic at the same time) than the Windows stack. The problem is, I dont know if this is due to capability limitations in the MS stack, or due to the MS imposed restrictions in it - or both.


In addition, the SMP stack in OS/2 is (supposedly) an entire different ballgame when it comes to handling multiple simultaneous connections due to it's threading model and use of multiple CPUs. Never tested that, dunno how it actually impacts performance in SMP and non-SMP environments... but it definitely is a different stack.


As for the OS/2 stack, I've found (FAR) more "undocumented" settings to tweak it than I've found documented ones - some of which I've found references for online - others nothing. The same goes for various network cards. I cannot find any documented settings for the Intel Pro/1000MT cards, nor any parameters settable through OS/2 - but I know they exist... so in the meantime, I am stuck with the defaults as set by the driver... while other cards (as mundane in comparison as the Realtek 813# series) offer at least a few settings.



As a side note, one thing OS/2 and eCS is sorely lacking is a unified configuration tool to configure such stack parameters (with related documentation and min/max/default parameters)... for instance, someone tell me what the "mem" and "gdt" parameters are for, how they affect network performance, and where they go? And what are the tradeoffs of using them (or going with the defaults)? Bothing in the help guides indicates the usage I am talking about, btw... which (the one I am talking about) has nothing to do with NetBIOS or anything other than TCP/IP.


Another example of such (non-documentation) issues can be easily found by running:
inetcfg -g all

at the commandline... it will create an "ini file" (and tell you where it is - which you then need to open in a text editor) with the various settable values, their current, min, max and default setting... while the docs go into no detail, and neither explains what they are for.


-Robert


|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|


David McKenna

Robert,

  Isn't the OS/2 TCP/IP stack taken from AIX? Maybe all these 'undocumented' settings are documented in AIX literature? Just thinking out loud. A quick websearch brought up this:  www.redbooks.ibm.com/redpapers/pdfs/redp0103.pdf 'How To: Easily configure TCP/IP on your AIX system'. Might be worth a read....

RobertM

Quote from: David McKenna on 2008.02.08, 00:47:41
Robert,

  Isn't the OS/2 TCP/IP stack taken from AIX? Maybe all these 'undocumented' settings are documented in AIX literature? Just thinking out loud. A quick websearch brought up this:  www.redbooks.ibm.com/redpapers/pdfs/redp0103.pdf 'How To: Easily configure TCP/IP on your AIX system'. Might be worth a read....

Hi David,

Good question... I dont know. I know someplace it was referenced that it was a BSD compliant stack, and I know that the firewall was supposedly ported from AIX...

I'll check out the docs and see if the info in it matches the "extra" configuration parameters I have found - and if so, maybe write something to configure (and/or) explain them as it applies to OS/2.

-Robert


|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|


RobertM

As an interesting side note, my RealTek 8139 10/100 card drastically out performs my Intel Pro/1000 card (which is on a dedicated PCI bus) according to NetStat...

Actually, the RealTek seems to perform as well as Saijin's gigabit card if NetIO is to be believed...


-Robert


|
|
Kirk's 5 Year Mission Continues at:
Star Trek New Voyages
|
|