Intel's MMX chips

Intel's MMX chips

Post by Anis Ahm » Mon, 30 Dec 1996 04:00:00



        Has Intel publicly released any programming information on MMX? If
so, where can it be found?

--
|-------------------| The Law of the Computer Industry:
|    Anis  Ahmad    |   - The best products will never have commercial
|-------------------|     success. The commercially successful products
                          will be mediocre and difficult to improve.

 
 
 

Intel's MMX chips

Post by Murray Stoke » Mon, 30 Dec 1996 04:00:00


Quote:>    Has Intel publicly released any programming information on MMX? If
>so, where can it be found?

I'm pretty sure they have.  Search www.intel.com and www.x86.org.
Theres supposed to be a way to move data 30% faster than memcpy with
MMX chips.


http://www.cdrom.com/pub/artpacks

 
 
 

Intel's MMX chips

Post by David Spring » Mon, 30 Dec 1996 04:00:00


:       Has Intel publicly released any programming information on MMX? If
: so, where can it be found?

Did you try to find an answer at their web site ?

www.intel.com - use the site search to key on MMX

David Springer

--

********* WEB GAMES ONLINE ENTERTAINMENT SYSTEM ***********
*                                                         *
*  A client/server system designed from the ground up to  *
*  support real time multi-player games on the Internet.  *
*  Game developers, players, and ISP's check it out at:   *
*                                                         *
************** http://www.eden.com/~springer **************

 
 
 

Intel's MMX chips

Post by Mark Feldma » Tue, 31 Dec 1996 04:00:00



> >       Has Intel publicly released any programming information on MMX? If
> >so, where can it be found?

> I'm pretty sure they have.  Search www.intel.com and www.x86.org.
> Theres supposed to be a way to move data 30% faster than memcpy with
> MMX chips.

Eh......there's a way to move it 25% faster than rep movsd/memcpy
WITHOUT mmx.

----------------------------------------------------------------------

                                          http://www.netcom.com/~pcgpe
"Jack Kevorkian's Carbon Monoxide.
Powerful pain relief....and so much more!!"

PS: e-mail me if you want the inner loop

 
 
 

Intel's MMX chips

Post by Paul Garce » Wed, 01 Jan 1997 04:00:00




>    Has Intel publicly released any programming information on MMX? If
>so, where can it be found?

        Paul S., please take note.

From Intels "Topics for Designers and Developers" -- dated 12 Dec 1996

Quote:>MMX (TM) TECHNOLOGY SOFTWARE DEVELOPMENT SYSTEMS NOW AVAILABLE
>  Intel's Developer Relations Group announced that they are making
>  available a limited number of "software development platforms"
>  that will allow software developers to write and test applications
>  that take advantage of MMX technology. These systems are available
>  for $2795, and come with a set of MMX technology tools, white
>  papers and other support. (As this technology will not be publicly
>  available until 1997, those ordering the system must sign a
>  Technology Access Program agreement when ordering, this offer only
>  valid in North America.)
>  <http://www.intel.com/drg/news/index.htm>

        As you can tell, the MMX has not been publicly released.  It is
scheduled for public release by Intel after 1 Jan 1997 from what I can
tell.

        Cyrix, on the other hand, is already making their newest chips
(The M2) MMX compatible.  They expect to have added the 57 extra
instructions and release the new chip by this time (First Quarter
1997) according to a May '96 press release.

        Paul G.

Nothing real can be threatened.
   Nothing unreal exists.

 
 
 

Intel's MMX chips

Post by Jason A. Leig » Fri, 03 Jan 1997 04:00:00


Quote:> > >       Has Intel publicly released any programming information on MMX? If
> > >so, where can it be found?

> > I'm pretty sure they have.  Search www.intel.com and www.x86.org.
> > Theres supposed to be a way to move data 30% faster than memcpy with
> > MMX chips.

> Eh......there's a way to move it 25% faster than rep movsd/memcpy
> WITHOUT mmx.

 Yes, and that is???

 Kilian

 
 
 

Intel's MMX chips

Post by Mark Feldma » Fri, 03 Jan 1997 04:00:00



> > > >       Has Intel publicly released any programming information on MMX? If
> > > >so, where can it be found?

> > > I'm pretty sure they have.  Search www.intel.com and www.x86.org.
> > > Theres supposed to be a way to move data 30% faster than memcpy with
> > > MMX chips.

> > Eh......there's a way to move it 25% faster than rep movsd/memcpy
> > WITHOUT mmx.

>  Yes, and that is???

Like I said in the post, e-mail me and I'll send it to you. It uses the
FPU and I grabbed it right out of the VTUNE memcpy example.

----------------------------------------------------------------------

                                          http://www.netcom.com/~pcgpe
"Jack Kevorkian's Carbon Monoxide.
Powerful pain relief....and so much more!!"

 
 
 

Intel's MMX chips

Post by a.k.a. jarno heikkin » Fri, 03 Jan 1997 04:00:00



: > > Theres supposed to be a way to move data 30% faster than memcpy with
: > > MMX chips.
: > Eh......there's a way to move it 25% faster than rep movsd/memcpy
: > WITHOUT mmx.
:  Yes, and that is???

Prolly something like...

    lea   edx, [esi+ecx]

    add   edi, 32
    fld   [qword esi-32]
    fld   [qword esi-24]
    fld   [qword esi-16]
    fld   [qword esi-8]
    add   esi, 32
    fstp  [qword edi-8]
    fstp  [qword edi-16]
    fstp  [qword edi-24]
    fstp  [qword edi-32]
    cmp   esi, edx

But I dunno, it's slower than REP MOVSD on my new 486/66 (I retired from
P5 decade ;)

--
m? oon eritt?in hyv? ellen t?ydellinen,
eritt?in hyv?, t?ydellinen.

 
 
 

Intel's MMX chips

Post by Jim Leona » Fri, 03 Jan 1997 04:00:00





>: > > Theres supposed to be a way to move data 30% faster than memcpy with
>: > > MMX chips.
>: > Eh......there's a way to move it 25% faster than rep movsd/memcpy
>: > WITHOUT mmx.

[code deleted]

Quote:>But I dunno, it's slower than REP MOVSD on my new 486/66 (I retired from
>P5 decade ;)

That's because the FPU on a 486 is not as fast as the FPU on a Pentium (duh).
Only use this type of code on a Pentium.

BTW, the MMX memcopy is pretty much the exact same thing as the
FPU move code.  So, if you want to move memory around RAM like
there's no tomorrow, use the FPU.  But don't use it to copy system
ram to video ram; I hit a bottleneck when doing that, and rep movsd
was faster.  I'll post code and put it in the FAQ when I get home...
--

(Tricks of the Trade Digitizing Services, and also Trixter of Hornet)
*THE* PC Demo WWW page:  http://www.cdrom.com/pub/demos/hornet/html/demos.html

 
 
 

Intel's MMX chips

Post by Baro » Sat, 04 Jan 1997 04:00:00


Quote:>BTW, the MMX memcopy is pretty much the exact same thing as the
>FPU move code.  So, if you want to move memory around RAM like
>there's no tomorrow, use the FPU.  But don't use it to copy system
>ram to video ram; I hit a bottleneck when doing that, and rep movsd
>was faster.  I'll post code and put it in the FAQ when I get home...

What about the MMX's MOVQ?
Can't that be used with the rep instruction? or can it.... hmm...

See ya!

 
 
 

Intel's MMX chips

Post by Jim Leona » Sun, 05 Jan 1997 04:00:00





>: > > Theres supposed to be a way to move data 30% faster than memcpy with
>: > > MMX chips.
>: > Eh......there's a way to move it 25% faster than rep movsd/memcpy
>: > WITHOUT mmx.
>Prolly something like...

>    lea   edx, [esi+ecx]
>    add   esi, 32

>    add   edi, 32
>    fld   [qword esi-32]
>    fld   [qword esi-24]
>    fld   [qword esi-16]
>    fld   [qword esi-8]
>    add   esi, 32
>    fstp  [qword edi-8]
>    fstp  [qword edi-16]
>    fstp  [qword edi-24]
>    fstp  [qword edi-32]
>    cmp   esi, edx


Try this instead:

Procedure FlipFloat(src,dst:pointer); Assembler;
Asm
  Push  ds
  Les   di,src
  Lds   si,dst
  Mov   cx,64000/10

  fld   tbyte Ptr [si]
  Add   si,10
  fstp  tbyte Ptr es:[di]
  Add   di,10
  Dec   cx

  Pop   ds
End;

The above little gem will move memory around 10 bytes at a time, but
is only worth doing so on a Pentium or higher, since the FPU is so
fast.  Also, it's only good for ram->ram copies (I hit a bottleneck
trying to do ram->vgaram for some reason).
--

(Tricks of the Trade Digitizing Services, and also Trixter of Hornet)
*THE* PC Demo WWW page:  http://www.cdrom.com/pub/demos/hornet/html/demos.html

 
 
 

Intel's MMX chips

Post by John Bep » Mon, 06 Jan 1997 04:00:00




>What about the MMX's MOVQ?
>Can't that be used with the rep instruction? or can it.... hmm...

  MOVQ doesn't take a rep prefix.

--

 
 
 

Intel's MMX chips

Post by John Bep » Mon, 06 Jan 1997 04:00:00


>Procedure FlipFloat(src,dst:pointer); Assembler;
>Asm
>  Push  ds
>  Les   di,src
>  Lds   si,dst
>  Mov   cx,64000/10

>  fld   tbyte Ptr [si]
>  Add   si,10
>  fstp  tbyte Ptr es:[di]
>  Add   di,10
>  Dec   cx

>  Pop   ds
>End;

>The above little gem will move memory around 10 bytes at a time, but

                                               On Pentiums...
  My understanding is that the FPU has a 64bit bus between it
  and the (L1 cache && memory).  Therefore, instead of moving
  10 bytes at a time, it's more like moving 8 bytes and then
  an additional 2 more bytes.  Also, successive reads of 10
  bytes a piece would lead to a few misaligned reads.  (Intel
  documentation recommended that tbyte values be aligned on
  paragraph boundaries.)

  blah blah blah blah blah....

--

 
 
 

Intel's MMX chips

Post by Jeff La » Mon, 06 Jan 1997 04:00:00






>>What about the MMX's MOVQ?
>>Can't that be used with the rep instruction? or can it.... hmm...

>  MOVQ doesn't take a rep prefix.

        Typical Intel stupidity, no?   Imagine how much better the
world would be if one could write:
repnz movq mm0, [eax]
        Right up there with rep lodsb in my books...
        (For the sarcasm impaired, be aware there was some in this
message)

        Back to reality, what probably led the original poster astray
is that the movq instruction CAN be used for rep movsd style movement
without using the FPU method.  Hence, my favourite expression regarding
MMX:
"Witness the power of a fully operational 64-bit data path"

--
                - Jeff Lait (SOL)

 
 
 

Intel's MMX chips

Post by INSane. / WHo KNoWs » Tue, 07 Jan 1997 04:00:00



:> >Procedure FlipFloat(src,dst:pointer); Assembler;
:> >Asm
:> >  Push  ds
:> >  Les   di,src
:> >  Lds   si,dst
:> >  Mov   cx,64000/10

:> >  fld   tbyte Ptr [si]
:> >  Add   si,10
:> >  fstp  tbyte Ptr es:[di]
:> >  Add   di,10
:> >  Dec   cx

:> >  Pop   ds
:> >End;
:> >
:> >The above little gem will move memory around 10 bytes at a time, but
:>
:>                                                On Pentiums...
:>   My understanding is that the FPU has a 64bit bus between it
:>   and the (L1 cache && memory).  Therefore, instead of moving
:>   10 bytes at a time, it's more like moving 8 bytes and then
:>   an additional 2 more bytes.  Also, successive reads of 10
:>   bytes a piece would lead to a few misaligned reads.  (Intel
:>   documentation recommended that tbyte values be aligned on
:>   paragraph boundaries.)
:>
:>   blah blah blah blah blah....
:>
:> --

  It is faster to manipulate integer values than real ones with FPU.
  so it is faster to do
    fild DWORD PTR [si]
    fistp DWORD PTR es:[di]
  than
    fld DWORD PTR [si]
    fstp DWORD PTR es:[di]

  Have anyone checked if the fpu method is faster than the rep movsd
method on 486s and Cyrix,AMD P CPUs?

INSane. / WHo KNoWs?

 
 
 

1. Intel's MMX?

I hear of this new technology comming up, and I have
quite a few questions about it...

The first question is... Will there be another
version of DJGPP which makes use of all those new
registers/instructions added?

I know that big companies like Microsoft will come out
with newwer versions of compilers, but will a free
compiler like DJGPP do the same?  

Oh, And will we all have to get new assemblers to use
those registers? because MM0 and MM1 and all those MM?
will be undefined under TASM v3.1

I think it will be the same delema as the FPU was, support
it or not.

Any thought on Intel's MMX are welcome!

2. PC programming: how to use 320x240x256?

3. Is AMD K6 cpu fully compatible to Intel MMX II - cpu?

4. With V&V, why is it true that...

5. Rendition's 3D accelerator chip announced!

6. Mcafee Firewall V3 free with uk mag.

7. Anyone know of FAQ's on programming the FM chips of soundblasters?

8. wb 3.2?

9. Intel's 3DR

10. Intel's 3DR 2.0 Engine...any good?

11. Intel's NSP? Huh?

12. So is anyone actually USING Intel's 3DR?

13. Anyone using Intel's 3DR?