Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Introducing "No-Moore's Law"

Author: Robert Hyatt

Date: 15:26:10 03/05/03

Go up one level in this thread


On March 05, 2003 at 17:38:23, Jeremiah Penery wrote:

>On March 05, 2003 at 11:45:20, Robert Hyatt wrote:
>
>>On March 05, 2003 at 01:19:12, Jeremiah Penery wrote:
>>
>>>On March 04, 2003 at 23:06:39, Robert Hyatt wrote:
>>>
>>>>On March 04, 2003 at 19:22:50, Matt Taylor wrote:
>>>>
>>>>>Nonsense. 486 is all you have to support to be compliant with the full ISA.
>>>>
>>>>You remind me of my son.  :)
>>>>
>>>>To wit:  when the "walk" light comes on, he is going to walk across the
>>>>street because he _has_ the right of way.  I keep telling him that he is
>>>>right of course, and one day he might end up _dead_ right.
>>>>
>>>>I personally look before walking regardless of the color of the light.  I look
>>>>before I leave when a light turns green, to be sure some idiot is not going to
>>>>run the light and make _me_ "dead right".
>>>>
>>>>And that is where we are here.  You want to advertise that a machine is
>>>>equivalentto intel, but faster and cheaper, feel free.  And if you want to stand
>>>>on the fine print "but if a program uses cmov without checking the CPUID
>>>>processor capability bits it is a bad piece of software."  But the _customers_
>>>>will think the machine is broken, and _they_ are the ones you are trying to
>>>>market to.  You end up right.  Dead right.
>>>>
>>>>There is "right" and there is "right".
>>>
>>>When you don't check the CPUID flags before using certain instructions, you are
>>>the one walking across the street without checking for traffic.
>>
>>
>>You think the average programmer understands that?  I don't think the average
>>programmer
>>even understands assembly language, much less that different processors might
>>have different
>>instruction sets even though they are called "compatible".  When AMD says the K6
>>
>>is compatible
>>with the PII, but faster/cheaper, then I expect it to be _compatible_.  As will
>>most software
>>developers.  How many times have _you_ looked at .S output from gcc to see what
>>instructions
>>it produces?  I do it all the time and _I_ didn't think about an "equivalent
>>cpu" being _almost_
>>"equivalent".
>
>Did AMD specifically say the K6 was P2 compatible, or just a general Intel
>compatible?  If they specifically stated P2+ compatibility, I might agree that
>they made a mistake.

I think it was a mistake either way.  "Intel compatible" could certainly be
taken to mean
"compatible with current Intel processors" which at the time was the PII.

Again, this is not to bash AMD, but to point out that a simple mistake in how
something
is presented can produce a blemish that will last a _long_ time.  Intel took a
_lot_ of heat
about the FDIV problem in the P5 (original pentium).  They should have and they
learned
a _big_ lesson I believe.

The point of my comments is that Intel sets a sort of standard, and if someone
follows along,
but are not quite all there, it can cause problems.  I had this problem with
Cyrix years ago as
their 387's were actually more accurate than Intel's, not to mention faster.
And they would
make every diagnostic program on the planet sound the alarm with floating point
errors.  :)

And I got tired of the phone calls asking about it and quit recommending them.
:)

>
>>If everyone was a compiler expert, this might be forseeable.  But they aren't.
>>And I doubt
>>most would think that -target=pentiumII would break a processor that is supposed
>>to be
>>compatible.
>>
>>Can I say more?
>
>A lot of the average programmers probably don't even know to use a specific
>processor target (when using GCC), or they use some other compiler.  I'd expect
>someone who uses specific processor targets in their compile to have some basic
>understanding of assembly.

I wouldn't.  If you look at the simple help files, you might see:

"-target=pentiumII"  This causes the compiler to optimize the program for
optimum
performance on the intel Pentium II processor.  (hypothetical option and
explanation
of course.)

That could get any beginner to try it and it would work.  And introduce an
unknown
incompatibility with AMD.



>
>>For the streetlight issue, the streetlight is not hanging over the street in
>>plain sight.  It is
>>buried under the light pole, with a door with a combination lock on it that has
>>to be opened
>>so it can be seen.  Do you expect John/Jane Doe to know that when there is no
>>sign on the
>>pole that says "look here for compatibility issues"???
>>
>>I don't.
>
>I'm not sure I expect Jonn/Jane Doe to understand that you have to even look for
>traffic, whether the light says 'WALK' or not.  Obviously, there are a lot of
>people who fit in that category.

The problem here is that they don't even know there _is_ traffic.  Who would
think
that the compiler produces an instruction that a compatible processor doesn't
support?
They don't even understand assembly language, much less instructions, much less
any
more details that are necessary to even understand that there might be a
problem.

Remember, that intellect represents 99%+ of all the computer users on the
planet.




This page took 0.01 seconds to execute

Last modified: Thu, 07 Jul 11 08:48:38 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.