<!-- MHonArc v2.4.4 --> <!--X-Subject: [MUD-Dev] Re: processors --> <!--X-From-R13: [nep Vreanaqrm <znepNvnf.wo.pbz> --> <!--X-Date: Sun, 31 Jan 1999 23:08:07 -0800 --> <!--X-Message-Id: Pine.LNX.3.93.990131234506.16429B-100000#ias,jb.com --> <!--X-Content-Type: text/plain --> <!--X-Reference: E107Ckc-0007kR-00#koala,kanga.nu --> <!--X-Head-End--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <html> <head> <title>MUD-Dev message, [MUD-Dev] Re: processors</title> <!-- meta name="robots" content="noindex,nofollow" --> <link rev="made" href="mailto:marc#ias,jb.com"> </head> <body background="/backgrounds/paperback.gif" bgcolor="#ffffff" text="#000000" link="#0000FF" alink="#FF0000" vlink="#006000"> <font size="+4" color="#804040"> <strong><em>MUD-Dev<br>mailing list archive</em></strong> </font> <br> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] <br clear=all><hr> <!--X-Body-Begin--> <!--X-User-Header--> <!--X-User-Header-End--> <!--X-TopPNI--> Date: [ <a href="msg00340.html">Previous</a> | <a href="msg00342.html">Next</a> ] Thread: [ <a href="msg00340.html">Previous</a> | <a href="msg00344.html">Next</a> ] Index: [ <A HREF="author.html#00341">Author</A> | <A HREF="#00341">Date</A> | <A HREF="thread.html#00341">Thread</A> ] <!--X-TopPNI-End--> <!--X-MsgBody--> <!--X-Subject-Header-Begin--> <H1>[MUD-Dev] Re: processors</H1> <HR> <!--X-Subject-Header-End--> <!--X-Head-of-Message--> <UL> <LI><em>To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> <LI><em>Subject</em>: [MUD-Dev] Re: processors </LI> <LI><em>From</em>: Marc Hernandez <<A HREF="mailto:marc#ias,jb.com">marc#ias,jb.com</A>></LI> <LI><em>Date</em>: Mon, 1 Feb 1999 00:08:01 -0800 (PST)</LI> <LI><em>Reply-To</em>: <A HREF="mailto:mud-dev#kanga,nu">mud-dev#kanga,nu</A></LI> </UL> <!--X-Head-of-Message-End--> <!--X-Head-Body-Sep-Begin--> <HR> <!--X-Head-Body-Sep-End--> <!--X-Body-of-Message--> <PRE> J C Lawrence wrote: On Sat, 30 Jan 1999 19:00:11 -0800 (PST) diablo <diablo#best,com> wrote: > J C Lawrence wrote: > > Could someone like yourself, or someone similarly erudite about such > > matters speed things up by recoding? Probably, but there's a lot of > > code, and probably a _lot_ that needs doing. We'll certainly try to > > do it, but we will also be buying the fastest processor we can > > afford. I know it goes against the programmers ethic to dismiss a > > problem by saying "buy more memory" or "buy a new processor" but > > I've committed worse sins I suppose (though my new coder starts > > foaming at the mouth everytime I suggest it. I'm a little frightened > > that upgrading instead of optimizing will kill him.) > > There's a balance in there. Given a competent programmer (for > suitable values of "competent"), and a reasonable choice of algorithm > and implementation (nothing wonderful required, just "good enough") of > that algorithm, then yes, faster hardware is almost always the cheaper > and more rewarding answer. Programmer time is expensive. Hardware is > cheap. The counter side of course is that lazy, or pseudo-competent > programmers come to rely on this, get sloppy with algorithm and > implementation choices, and then try and answer everything with faster > hardware. > If the story is correct (passed on by a mate at SGI), in an earlier > version of IRIX they killed some "unecessary" buffer copies in the > TCP/IP stack (as I understand it, just a single extra copy per > packet). Stack performance gained by over 35%. > > Tiny change. Huge reaction. I wanted to mention another thing to keep in mind that was not mentioned. While more memory and more processor and faster disk access is good, it can, in general[1] only speed things up linearly, while choosing better algorithms can speed things up sometimes _much_ better than linearly. I always kringe when I read 'Yeah I just used bubble sort because there will never be more than X[3] and it works great for that'. I read this with sorting alpha polygons in a 3d engine. What happens when (since 3d hardware is moving so fast) they take their engine, crank up the polys for a RivaTNT[2] or a VooDoo3 and their performance drops to nothing? Now they have to dig around old code looking for performance bottlenecks, checking drivers etc. Back to writing a NURBS evaluator. Marc Hernandez [1] I am sure there are pathelogical cases where this does not hold. [2] Fast 3d card. [3] Where x is in the set of positive integers (Z) and is less than 100. Quicksort is easy to write :-) (and the partition does not have to be the first item). </PRE> <!--X-Body-of-Message-End--> <!--X-MsgBody-End--> <!--X-Follow-Ups--> <HR> <!--X-Follow-Ups-End--> <!--X-References--> <UL><LI><STRONG>References</STRONG>: <UL> <LI><STRONG><A NAME="00340" HREF="msg00340.html">[MUD-Dev] Re: processors</A></STRONG> <UL><LI><EM>From:</EM> J C Lawrence <claw#kanga,nu></LI></UL></LI> </UL></LI></UL> <!--X-References-End--> <!--X-BotPNI--> <UL> <LI>Prev by Date: <STRONG><A HREF="msg00340.html">[MUD-Dev] Re: processors</A></STRONG> </LI> <LI>Next by Date: <STRONG><A HREF="msg00342.html">[MUD-Dev] Re: processors</A></STRONG> </LI> <LI>Prev by thread: <STRONG><A HREF="msg00340.html">[MUD-Dev] Re: processors</A></STRONG> </LI> <LI>Next by thread: <STRONG><A HREF="msg00344.html">[MUD-Dev] Re: processors</A></STRONG> </LI> <LI>Index(es): <UL> <LI><A HREF="index.html#00341"><STRONG>Date</STRONG></A></LI> <LI><A HREF="thread.html#00341"><STRONG>Thread</STRONG></A></LI> </UL> </LI> </UL> <!--X-BotPNI-End--> <!--X-User-Footer--> <!--X-User-Footer-End--> <ul><li>Thread context: <BLOCKQUOTE><UL> <LI><STRONG>[MUD-Dev] Re: processors</STRONG>, <EM>(continued)</EM> <ul compact> <LI><strong><A NAME="00329" HREF="msg00329.html">[MUD-Dev] Re: processors</A></strong>, J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Sun 31 Jan 1999, 02:18 GMT <UL> <LI><strong><A NAME="00331" HREF="msg00331.html">[MUD-Dev] Re: processors</A></strong>, diablo <a href="mailto:diablo#best,com">diablo#best,com</a>, Sun 31 Jan 1999, 03:00 GMT <UL> <LI><strong><A NAME="00336" HREF="msg00336.html">[MUD-Dev] Re: processors</A></strong>, Mik Clarke <a href="mailto:mikclrk#ibm,net">mikclrk#ibm,net</a>, Sun 31 Jan 1999, 18:50 GMT </LI> <LI><strong><A NAME="00340" HREF="msg00340.html">[MUD-Dev] Re: processors</A></strong>, J C Lawrence <a href="mailto:claw#kanga,nu">claw#kanga,nu</a>, Mon 01 Feb 1999, 06:22 GMT <UL> <LI><strong><A NAME="00341" HREF="msg00341.html">[MUD-Dev] Re: processors</A></strong>, Marc Hernandez <a href="mailto:marc#ias,jb.com">marc#ias,jb.com</a>, Mon 01 Feb 1999, 07:08 GMT </LI> <LI><strong><A NAME="00344" HREF="msg00344.html">[MUD-Dev] Re: processors</A></strong>, Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Mon 01 Feb 1999, 18:53 GMT </LI> </UL> </LI> <LI><strong><A NAME="00342" HREF="msg00342.html">[MUD-Dev] Re: processors</A></strong>, Petri Virkkula <a href="mailto:pvirkkul#iki,fi">pvirkkul#iki,fi</a>, Mon 01 Feb 1999, 07:36 GMT </LI> </UL> </LI> <LI><strong><A NAME="00338" HREF="msg00338.html">[MUD-Dev] Re: processors</A></strong>, Greg Underwood <a href="mailto:gunderwood#donet,com">gunderwood#donet,com</a>, Mon 01 Feb 1999, 02:15 GMT <UL> <LI><strong><A NAME="00343" HREF="msg00343.html">[MUD-Dev] Re: processors</A></strong>, Adam Wiggins <a href="mailto:adam#angel,com">adam#angel,com</a>, Mon 01 Feb 1999, 18:38 GMT </LI> </UL> </LI> </UL> </LI> </ul> </LI> </UL></BLOCKQUOTE> </ul> <hr> <center> [ <a href="../">Other Periods</a> | <a href="../../">Other mailing lists</a> | <a href="/search.php3">Search</a> ] </center> <hr> </body> </html>