Messages in this thread | | | From | "Adam J. Richter" <> | Date | Sun, 16 Aug 1998 12:34:36 -0700 | Subject | Re: Winmodem support, some performance tradeoff estimates |
| |
I have seen a number of less technical linux advocates get defensive about the fact that the only soft modem drivers for the Linux kernel are currently the binary only driver for some 2.0.x kernel on the US Robotics web site and the radio sound modem drivers. Linux advocates, if you accuse chip vendors of keeping chip specifications secret, please always identify the specific chips for which specifications are not available, and, ideally, who contacted these vendors and when. If you are going to make architectural arguments about how soft modems are supposedly bad, please be specific in the cost/performance tradeoffs. Otherwise, please just admit to the current shortcoming in the Linux kernel (nobody has yet written a free soft modem stack), so that people will continue to trust what you say when you talk about the real advantages of Linux or when you later tell them when such drivers have been developed, as they likely will.
The rest of this this message describes the cost/performance tradeoffs of soft modems, but here is a summary:
o If there were Linux soft modem support, it would consume CPU equivalent to about a $6 CPU upgrade, a good tradeoff against the higher hard modem premium. o It can be argued that Linux users will collectively waste $100+ million in the absense of winmodem Linux drivers. o The problem is that there is are no free soft phone modem drivers for Linux right now, because more software has to be written than just simple device drivers. o Hopefully, there will be winmodem drivers in the future.
The latest revision of WebTV runs on a 56k soft modem in the background on an 8MHz MIPS R4000 processor. Let's say that this means the performance of using a soft modem is about 8 Pentium MHz, on the grounds that 1 32-bit Pentium MHz =~ 1 64-bit R4000 MHz in the loops of soft modem code which likely would be able to use the second ALU of the Pentium, and that the soft modem is only a background task on the WebTV, so is probably not using anything close to 8 R4000 MHz. x86 CPU's these days cost about $.75/Pentium MHz (see chart below), which would be about $6 to run a soft modem.
So, instead of spending a $40 premium for a hard modem, you could put that money toward a faster CPU, and get an extra 32 Pentum MHz when the modem is on, and 40 Pentium MHz when it is off, speed which you get to keep even after you have switched from phone modems to cable modem or digital subscriber line. Plus, if you think over clocking is fun, a free soft modem stack would open the door for all sorts of hacking to get better performance from phone lines that happen to be better than spec (at least for the 33.6kbps voice-to-voice case), and maybe making them talk a much higher data rates over matched dry copper pairs. A hard modem would be worth the price premium if CPU power costed more than $5 per Pentium MHz. Only a Xeon with a 1MB single cycle L2 cache might exceed that, and only then if the huge fast cache provides less than a 10% performance improvement over a Pentium II's 512kB two cycle L2 cache.
The situation is likely to tip even more in favor of soft modems in the future, since CPU prices have been on a much faster downward curve, and we can expect fewer economies of scale and less intense competition for future market for hard modems.
This may sound like a tiny economic issue, but it is actualy quite big. If 7.25 million Linux users are likely buy one more hard modem on average before switching to cable, DSL, or something similar, and the average amount of money wasted will be $15/modem (after subtracting for CPU savings and allowing for considerable hard modem price drop), then this is a $100+ million problem.
Finally, in case anyone doubts my $.75/Pentium MHz estimate, here is a chart of prices from www.pricewatch.com, including my estimation of approximate performance in terms of Pentium MHz, and corresponding price/performance ratio.
Pricewatch Processor Pentium MHz Cost $/Pentium MHz Pentium 133 133 $45 $.34 Pentium 150 150 $100 $.66 Pentium 200 MMX 200 $138 $.61 Pentium 233 MMX 233 $143 $.61 AMD K6-233 233? $207 $.88? PPro 166 512kB 250+ $134 <$.54 Cyrix 6x86MMX PR266 266? $ 66 $.25 Celeron 266 266 $ 78 $.30 PPro 180 256kB 270 $ 94 $.35 PPro 200 256kB 300 $173 $.58 PPro 200 512kB 300 $401 <$1.34 Celeron 300 300 $ 98 $.33 Cyrix M2-333 333? $158 $.47? Pentium II 233MHz 350 $175 $.50 Pentium II 266MHz 400 $178 $.45 Pentium II 300MHz 450 $230 $.51 Pentium II 333MHz 500 $297 $.59 Pentium II 350MHz 525 $359 $.68 Pentium II 400MHz 600 $550 $.92 Pentium II 450MHz 675 $712 $1.05 Xeon 400MHz 512kB 600+ $1300 <$2.17 Xeon 400MHz 1024kB 600++ $3300 <<$5.50
Notes on this chart: The prices are the lowest price listed for each processor on www.pricewatch.com on the morning of 1998 August 16. I have estimated the relative performance of CPU's by the following rough formula, flagging the numbers that I have less confidence in with "?".
Pentium = Celeron = AMD K6-2(?) = Cyrix M2(?) Pentium II (512kB 2 cycle L2 cache) = 1.5 X Pentium Pentium Pro (256kB 1 cycle L2 cache) = 1.5 X Pentium Pentium Pro's and Xeons with single cycle caches larger than 256kB are pessimisticly estimated at 1.5 X Pentium, and then flagged with "+" or "++".
I hope this information is helpful.
-- Adam J. Richter __ ______________ 4880 Stevens Creek Blvd, Suite 205 adam@yggdrasil.com \ / San Jose, California 95129-1034 +1 408 261-6630 | g g d r a s i l United States of America fax +1 408 261-6631 "Free Software For The Rest Of Us."
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html
| |