> > Well, that's nice of you two to go looking for outside help without > > even > > checking with the person who has written most of the graphics code. > > BTW, > > Francois hit the nail on the head. First we worry about getting > > stuff > > working and checking our current performance. After that, we can > > consider > > using non-portable optimizations where needed. > It bothers me that simply asking for information has generated this > kind of response. I don't recall getting this reaction when I asked So is the troll :) > around what is involved in hardware-accelerated OpenGL. To quote from Probably noone was reading at that time :))) > the Book of Phipps, "Premature optimization is the root of all evil." > :D I did Google around for some info on them, but what I found was an > explanation of what the instructions were, which is not what I > needed. > What I personally am looking for is *basic* information about this > kind > of thing. What are these instructions used for? They are used for working with multiple wide datas, like when you have to do something very specific to a bunch of bytes repeatively. Like colorspace transform, FFT, ... but you can do a lot of stuff. ffmpeg uses it for colorspace changes, and fft at least. I think it's a bit of an always wanted RISC instruction set for x86 :) It lets you do the same operation on several registers at once, like mm0 += mm1; and mm2 += mm3; at the same time, and so on. > Why are they so > supposedly cool? How is using them better than just using the regular Because intel's pink dressed buys said so. > instruction set cooked up by Intel? Why does it seem that they are > most Because it's supposedly faster for handling streams of data. > often associated with graphics? Can't they be used with other things, because graphics always need a lot of bandwidth, and we need to apply effects on a lot of pixels at once. but you can apply those to audio as well. I think R5's optimised memcpy() uses it as well. > too? That kind of thing. With my being self-taught, there are a great > many things in computer science that I just don't know about. I only Well I don't think universities tell much about mmx anyway :p It's just about finding the good info source. > know *this* much about assembler, for example, and I was not aware > that > Gabe -- or anyone else, for that matter, -- has or had any experience > / > expertise with this, and so I asked. In any event, I would like to > say > that I don't want this to turn ugly. :) François.