By Thiravudh Khoman
"WinModems", or more generically, "software modems", have a pretty bad reputation. For the uninitiated, software modems are lower-cost modems which rely on software to perform functions normally performed in hardware. Browse through the customer support section of most ISP's and you'll find a pretty universal abhorrence for such devices. Frankly, that bias is ingrained in me as well.
Jakarta Dave's letter to the Post Database (October 20, 1999), however, piqued my interest. Here was someone willing to stick up for software modems. What's more, his contention that such modems only took up 10-20% of CPU power intrigued me. How did he come by that figure and why would he stick his neck out for such heinous creatures?
I've been modeming for a long time. My first modem was a 300 bps Hayes MicroModem II for an Apple II+ back in 1982 (it was used to move my dissertation back and forth between my Apple and a university mainframe after local editing). I've also been on both the user and sysop ends of bulletin board systems (BBS'es). So modems and I go back a long way.
Anyway, I felt I should research the software modem controversy a bit more, via the internet of course. While most references to software modems were pretty scathing, some sites were of the opinion that not all software modems were bad. Granted some were (very often those with Rockwell chipsets), but others (such as those with Lucent chipsets) apparently didn't perform any worse than, say, external modems.
Since my research didn't provide any clear conclusions, I decided to run a fairly simple test myself. I chose the following modems (availability being the mother of selection):
In this list are three internal 33.6kbps modems (one a full-blown modem, the other two, software modems), two internal 56kbps modems (one full and one software modem), and an external 56kbps modem.
I used two computers as test platforms: a) a Compaq Presario 4506 with a 200MHz Pentium I CPU with MMX and 32mb ram, and b) a self- assembled PC with an Asus 440LX mainboard, a Pentium II 266MHz CPU, and 48mb RAM. Both were installed with Windows 95a.
The test involved a manually operated sequence of steps comprising: dialing into an ISP (Internet Thailand), loading and checking mail from a U.S. mail site with Eudora Pro v3.05 (done twice at different times), loading 2 sites with Netscape Communicator v4.7, loading 3 sites with Internet Explorer v3.02, loading and closing Microsoft Word 97 and Excel 97, and then disconnecting. These were done in sequence in about 4-5 minutes for each test. Both Netscape and IE disk caches were disabled (but not the memory caches though) and a minimal number of applets were running in the system tray. Also, all modems connected at or acceptably close to their rated speeds.
To test CPU stress loads and memory usage, I used a demo but functional version of Net.Medic v1.2.2 (https://www.vitalsigns.com). This a neat program if you like to see all sorts of technical stats flashing on your screen when you're computing or interneting. It normally sells for US$49.95, but can be obtained for less and there's a 30 day trial period.
Tests were run twice for each modem and the results averaged.
First of all, not all modems were useable on both computers. The Compaq, which had Windows 95 installed from Compaq's own Quick Restore CD, refused to recognize either the Creative ModemBlaster or the Diamond SupraMax to my great disappointment, as these were both software modems for which I was anxious to see results.
The results for the Compaq were frankly surprising. There were no significant differences in either CPU loading or memory usage among any of the other modems (#1,3,5,6), including the Compaq software modem. Average CPU loading was about 20% and peaked at 90%. Meanwhile, average memory usage was in the 95-98% range.
What surprised me the most was that little Eudora often stressed the CPU to 80-90% usage whenever it checked for mail. This was usually higher then Netscape when it handled web pages or even when big fat Word 97 or Excel 97 were loaded. This appears to be a peculiarity of Eudora, but could explain why my Eudora is prone to hanging sometimes.
Due to the lack of certain setup files, the Compaq software modem refused to run on the no-name computer. Thus, measurements were only available for modems #2,3,4,5,6.
For this computer, no significant differences in CPU loading were found except when using the Diamond modem. All of the other modems averaged about 15-16% CPU usage, but the Diamond came in at more than three times that, or 53%. Peak CPU usage for all modems came in around 85-90% and memory usage averaged about 87%. The lower average memory usage probably reflects the fact that the no-name computer has both a faster CPU (Pentium II 266 vs Penitum I 200) and more memory (48mb vs 32mb), although my guess is that it's due more to the latter.
These results, limited as they are, seem to suggest that indeed, not all software modems are "dogs", although the Diamond does seem to fall into this canine category. Interestingly, the Diamond uses a Rockwell chipset, but then so does the ModemBlaster. Also, Jakarta Dave's note that software modems don't surge to 100% CPU usage, while technically correct, was almost not so as all of the modems tested here did spike to or close to 90%. But then all of the modems, hardware or software, spiked to 90%. Or more precisely, the applications that used the modems.
As noted, my test was rather simplistic, but did produce some interesting cum unexpected results. If you're interested in pursuing the matter further or wish to research other modem related topics, I highly recommend the following links:
If you'd like to know whether your modem is a software modem or not, go to: https://www.o2.net/~gromitkc/winmodem.htm. Look for the "view the entire table" link, click it, and you'll be presented with a long list of modems. To find your modem, look for an FCC # on your modem (most but not all modems have it) and do a find for that number on in this table. Or look for the manufacturer's name (not always obvious with OEM modems). Red "WM" tabs at the left indicate WinModems.