Amiga.org
Amiga computer related discussion => Amiga Hardware Issues and discussion => Topic started by: kidkoala on November 21, 2006, 04:06:28 PM
-
I have a few questions about cpu's on accelerators;
I have a cd32 with sx32mk2 (think it's a 40Mhz cpu), I bought a fpu@33mhz, and i bought a crystal@33mhz as well.
Now, can you people explain to me;
1. what is the connection between the fpu and the crystal? (something about synchronous/asynchronous?), and can i just put in the fastest fpu and crystal there is? (says something about max. 33mhz in my primitive papers on the sx32).
2. can i put in the fastest cpu i find? (like a 50mhz or something), is there a connection between the cpu and the fpu speed?
3. what commands or programs do i use to find out the speeds that are right now? and how do i overclock the cpu/fpu?
4. what is the fpu used for (i know about floating-point operations, but what is that, and give me some examples of which programs/games use it and which doesn't)?
hope someone wants to answer all this, please give thorough answers if you do:) thanks a lot!
-
kidkoala wrote:
1. what is the connection between the fpu and the crystal?
For 68882 FPU's the crystal speed is 1:1 to the FPU speed. Use a 40MHz Crystal, FPU runs at 40MHz etc.
can i just put in the fastest fpu and crystal there is? (says something about max. 33mhz in my primitive papers on the sx32).
It depends on the accelerator, but in general YES.
2. can i put in the fastest cpu i find? (like a 50mhz or something), is there a connection between the cpu and the fpu speed?
The 680x0 and FPU can run asynchronously, but I believe that the CPU has to feed the FPU both instructions and data and so if there is a BIG gap between speeds (14MHz 020 & 50MHz 68882) then the FPU will spend a lot of it's time waiting. There is pipelining in the FPU so it's not a 1:1 relationship.
4. what is the fpu used for (i know about floating-point operations, but what is that, and give me some examples of which programs/games use it and which doesn't)?
The answer is mainly nothing. Very few games will use it. A few CAD like things (SCALA, Lightwave etc.) will use it.
-
Hang on, I thought quite a few games used it?
Does software specifically have to call on an FPU or will the FPU just cooperate to un-burden the CPU's task of dealing with floating point maths?
With the '040/060 the FPU is internal so it might be different with the '020/'030 CPUs...
I wonder if Shapeshifter/Fusion and other emulators use it. It's a shame there wasn't a SnoopDos tool that let you know exactly when a program used the FPU.
-
Only 1 games needs the fpu afair, a flight sim, maybe it is tfx? can't remember now...
-
thank you all for the quick reply!
that made it a bit clearer..
-
Hyperspeed wrote:
Hang on, I thought quite a few games used it?
Not to my knowledge. A handfull if that. Usually ports like Quake etc.
Does software specifically have to call on an FPU or will the FPU just cooperate to un-burden the CPU's task of dealing with floating point maths?
The code has to have been written to use an FPU or a maths library.
With the '040/060 the FPU is internal so it might be different with the '020/'030 CPUs...
Games dont use the '040/060 FPU any more than a 68881/2
I wonder if Shapeshifter/Fusion and other emulators use it.
I think that they do. But the question is "Does any MAC software of that day use the FPU?" I think it is just as unlikely.
-
The dissapointing thing I discovered was that using the FPU version of the MPEGA library was vastly slower than the integer version. I couldn't make out any difference in sound quality. Those using Songplayer or MakeCD's MP3-CDDA function would best stick with the integer (standard) MPEGA library version.
I'm sure I read that Gloom Deluxe, Breathless and Alien Breed 3D (/2) used the FPU. I mean, Alien Breed 3D 2:The Killing Grounds had polygon, texture mapped weapons, light sourcing and all that like Quake. Come to think of it, latter-day FPS like Genetic Species surely had some support for FPU?
I'm sure I heard of a few things that used FPU on 68k Mac too, wouldn't Quark have used this for complex object scaling? I'm sure Wordworth installed maths libraries...
It would make interesting reading which applications did use maths libraries. Would they be these:
mathieeedoubbas.library
mathieeedoubtrans.library
mathieeesingtrans.library
mathrans.library
?
Archiving tools like LHA too!
-
@Hyperspeed
Archiving tools certainly do not use FPU, at least not for anything time critical such as compression or decompression.
-
@Hyperspeed
Archiving tools certainly do not use FPU, at least not for anything time critical such as compression or decompression.
I don't think that WordWorth and any of the games that Hyperspeed mentions is using the FPU.
-
fpu support was kind of like hd support back in the day but less critical. when a large percentage of amiga users had unexpanded a500s and a1200s or 2000s requiring fpu would cut out a large number of users and lots of potential profit.
68k cpus do integer math quite well so most programs could make do without fpu. libraries should use them though, if available.
iirc divide was the only 16bit math instuction the 68000 had (16bit divided by 16bit resulting in 32bit answer). many programmers especially demo coders and other assembly people used tables.
-
iirc divide was the only 16bit math instuction the 68000 had (16bit divided by 16bit resulting in 32bit answer).
Actually divu/divs was 32bit / 16bit -> 16r:16q, with 'V' flag set if the result would overflow 16bit.
-
well certainly I didn't expect such thorough and detailed answers :)
thanks a lot, though you're loosing me on the topic of "the
math instructions of the 68k" ;)
-
To recap: FPU isn't really required for most things. If you really must run some scientific precision math things, or say for example render high precision mandelbrots or 3D scenes, you might want one. Then again, with these applications you're better off with 68060 and integrated FPU anyway. ;-)
-
I'm sure I had an archive of the LZX/LHA programs where there were FPU versions...
The only way to prove/disprove is to make a list.
So far we have:
Apps
¯¯¯¯
1) Lightwave
2) MPEGA
Games
¯¯¯¯¯
1) TFX
Demos
¯¯¯¯¯
Emulators
¯¯¯¯¯¯¯¯¯
:inquisitive:
-
here is an interesting article from the year of the lord 1999, considering the effects of an fpu, though in cooperation with three different patches;
http://www.youngmonkey.ca/nose/articles/NewTekniques_9902/ImprovingPerformance/index.html
-
kidkoala: That 'Young Monkey' link was damn good. I heard somewhere else that the well acclaimed Oxypatcher added 20 seconds to boot time. Well they can keep that, I'm running an Amiga not a PC - I want to boot in 20s total!
:-D
Interesting too that the HSMathsLibs didn't appear to have any real world speed improvements... and they weren't free either!
The page did hint that there was a fair few programs that used the FPU (why else would there be Oxypatcher, HSMathsLibs and Cyberpatcher?).
We must track down all the FPU programs, for the good of mankind!
-
haha, this is turning into a good laugh at 04:16gmt+1..
mad scientists growling, screaming, twisting thumbs and ripping out hairs; "what in the name of Jay Miner is that FPU good for!? why is it there? what can it do? who invented it and does it contain the meaning of life?!"
yes, i was also blown away by the monkey-link, and the other links from the same page, lots of very useful info:)
i'm always careful with conspiracy-theories, but those patches look a bit weird "we make a patch, and then we make a testprogram that shows some numbers that look very positive, and then we take money for giving these two programs to people" ..i don't know, probably was something useful for someone, i'll dig some more dirt about the use of an fpu
EDIT:
"Special programs (Raytracing, DTP, Mathematics, TeX) are offered in a special coprocessor version which are up to 50 times faster than the original versions. "
are dtp and tex programs?
-
Just a memo: you could NOT use a faster FPU than your CPU. If you bought a faster FPU, simply put a cristal the same clock of CPU.
Yes, they are various progs who really use the FPU: scala, Raytracers, MUI (!), MCP (new one arrives on december)....
Games: Genetic Species, TFX, Quake, Doom, Myst (the Amiga versions, of course). And a lot more. :-D
Mpega fpu version IS SLOWER than integer version (don´t ask why, I could reply) ;-)
-
Ahhh, now we're getting somewhere!
DTP? So is it not feasible that Wordworth and Pagestream are using the FPU for object scaling, rotation and TrueType font calculation?
Would Turboprint use the FPU for it's Super-Smoothe algorithm?
What about Elite/Frontier/Lambda?
It's hard to track down these programs without reinstalling, the sight of 68882 option in the installer though is quite familiar. I must have loads of FPU programs lurking on my Amiga!
Another topic could be "What software uses the MMU"!
-
by Piru:
Archiving tools certainly do not use FPU, at least not for anything time critical such as compression or decompression.
Hmmm... I looked back through the LZX manual and it has optimisation for the various CPU caches, but not the FPU.
I've seen these 68881/68882s used on Mac motherboards and there are x86 equivalents for ancient PCs too.
What would be the difference between a CPU's FPU and a modern day GPU? Both seem to be gauged in FLOPS?
So can someone explain in Sesame Street terms what an FPU does? Is it for calculating data such as Pi that has no real end but the FPU will make the calculation more accurate?
(http://www.moviegrooves.com/images/covers_main/pinballsesame_main.jpg)
-
Yes, they are various progs who really use the FPU: scala, Raytracers, MUI (!), MCP (new one arrives on december)....
Games: Genetic Species, TFX, Quake, Doom, Myst (the Amiga versions, of course). And a lot more.
That's right! And just to add a few more to this insightful and valid thread, the dir, cd and list comands of the AmigaDos requires a working FPU AND MMU! Without them, they just crash.. :-(
Mpega fpu version IS SLOWER than integer version (don´t ask why, I could reply)
You can find an explanation in the docs of the package..
-
haha cd, dir...use fpu an mmu? :)
I think the fpu would do the logic math, and arithmetic operations, that otherwise must be emulated on the cpu, or by the OS, if you don't have an fpu. but not like easy two-digit operations, but floating point operations with many decimals etc. I guess they have a pretty good fpu (or a few thousands) when calculating astronomy-things or astro-physics :)
Typical operations are floating point arithmetic (such as addition and multiplication), but some systems may be capable of performing exponential or trigonometric calculations as well (such as square roots or cosines).
Today, many CPUs/architectures have more than one FPU, such as the PowerPC 970.
x86 before the 80486 (from 8086), had either non fpu, or had a free optional slot, like on Amiga accelerator, for the 8087 (like a 68881/2).
-
rkauer wrote:
Just a memo: you could NOT use a faster FPU than your CPU. If you bought a faster FPU, simply put a cristal the same clock of CPU.
That is just not true. They run asynchronosly in most designs. If it has a separate crystal socket it was designed to run at a different speed to the CPU!
Hyperspeed wrote:
What would be the difference between a CPU's FPU and a modern day GPU? Both seem to be gauged in FLOPS?
Too many to mention. GPU's are not usually measured in FLOPS (FLoating point Operations Per Second) but in pixels/texels per clock, or more commonly now in the number of pipelines and shaders.
-
@Hyperspeed
Ultimately, as you know, computers deal with binary data, ie a simple 0/1 state.
An individual bit is not useful beyond representing a basic "on/off" or "true/false" type propery.
In order to represent numbers, bits are grouped together. If you have N bits together, they can represent 2^N (that's 2 to the power N) possible states. So, an 8-bit byte can represent 2^8 == 256 possible states. This leads to the notion of the binary number system and arithmetic, where each bit represents a power of 2 (just as you have units, tens, hundreds etc in decimal arithmetic).
Provided all you ever want to do is deal with whole numbers, your basic binary arithmetic is fine for most purposes. This is the "integer" arithmetic that your classic CPU performs.
Unfortunately a lot of real world calculation involves imprecise numbers that can span enormous scales of magnitude. If you are familiar with scientific notation, you'll know what I am talking about. Integer arithmetic becomes hugely impractical for this type of calculation.
If you think of scientific notation, where you have m x 10^e where m is the (signed) mantissa, from 1 to 9.9999r and e is the (signed) exponent, you can see that you could come up with a similar notation in binary: m x 2^e. In this scale, m is from 0.5 to 0.999r. The IEEE came up with a binary representation for this notation where a total of 32 bits can be used to represent a value to roughly six decimal places from around 10^-37 to about 10^+38. There's a 64-bit version that has a much larger exponent range and can store values to more decimal places.
Working with these binary formats is a bit more complex than the simple integer case. As not every pattern of 32 or 64 bits are a valid representation, you have to ensure that your values are formatted properly; adding, subtracting, multiply and divide are all more complex than for integer mathematics. In short, dealing with this number format requires a lot of integer operations to perform the required mathematical operation on the floating point number. Consequently, dealing with them is rather slow.
An FPU is a dedicated processor that knows how to work with these formats directly. Instead of the CPU having to grind through a list of instructions to add a pair of floating point numbers, the FPU can do it directly, often in a lot fewer cycles than the CPU can execute the equivalent sequence of operations.
The 68882 didn't stop at providing the basic add, subract, divide, multiply and compare operations for floating point numbers. It also provided more complex operations such as square root, sine, cosine, tangent, log, exponentiation and other "transcendal" functions. They typically weren't very quick (some could take over 100 cycles to execute) but they were still faster than the 68020/68030 it was designed to support could typically manage.
With the 68040/68060, all the transcendal stuff was dropped out with the sole exception of the square root (this is a mathematical primitive that is extremely important and also not that expensive to evaluate). Instead, the designers focused on making the basic operations as fast as possible and emulating all the missing stuff.
-
@hyperspeed
thank you for the detailed info. which extends my last post to space and beyond ;)
@alexh
I think it's like this: if you have a cpu@30mhz and a fpu@50mhz, then the fpu would have to wait for the cpu all the time, because it's so much faster.
it's better if they have about the same Mhz to cooperate better, meaning there's no point in having a really fast fpu if the cpu is lagging behind.
-
say you have an 64bit floating point calculation
(all numbers just for sake of arg)
68030@25mhz say it takes 100 clock cycles
say on a 68882@25mhz it takes 50 clock cycles (probably less)
now say the 68882 is running @ 50mhz it still takes 50 cycles but only half as long it lets the 68030 know the answer is ready in half the time.
thats why it is faster. most accelerators that i know of that have an fpu socket can run it faster than the cpu
several people have said that there is a prog which has an fpu version which is slower and hinted at why, please tell us why it is slower i dont have the docs
-
One question springs to mind here... are the sadistic, aggresive people that program Quake actually mathematicians?
-
several people have said that there is a prog which has an fpu version which is slower and hinted at why, please tell us why it is slower i dont have the docs
Original mpega.library has FPU version that is considerably slower than the integer one. It supposedly has better quality (but frankly, you can't hear the difference). It's slower because the floating point algorithm is quite different from the integer one.
-
a rough list of apps using an fpu off my hd:
draw studio
image fx
image engineer
sview
wildfire
imagine
cinema 4d
real 3d
lightwave
vista
world construction set
pagestream has an fpu library
mpega
ncoder
pegase
back with more later, my miggy decided to turn herself off!
-
@Vulture
Which one of those listed apps require FPU to function at all?
-
AmigaMance wrote:
That's right! And just to add a few more to this insightful and valid thread, the dir, cd and list comands of the AmigaDos requires a working FPU AND MMU! Without them, they just crash.
That's complete nonsence! My standard A600 (wich most Amiga folks know they have no FPU or MMU) don't require
a FPU or MMU to run the Dir, Cd, and List commands.
These commands run just fine without them.
-
@amidude
hehe i think you just got scammed by the worst 1. of april-joke ever, and it's only the 26. of november (!) ;)
nice list of fpu-programs! bring 'em on
-
If it's a April 1 joke...I don't see the fun of it...
:crazy:
-
If it's a April 1 joke...I don't see the fun of it...
Then try to see that i was making a point. The dir command is using the FPU as much as other apps mentioned here, earlier. :-)
-
i've counted about 20 programs that CAN, use the fpu here, and when it does use it, the program probably always gain very high calculation-speed, for what it need the fpu for, contra the speed without the fpu.
the point here is to find out what programs and games that can take use of the fpu, not that it's a higly needed thing that is vital to everyday use of a classic amiga.
if you haven't understood that by now, you need to read the whole thread over again, and you might also want to read a bit between the lines...;)
if you don't find the topic interesting at all, don't post :)
-
Then try to see that i was making a point. The dir command is using the FPU as much as other apps mentioned here, earlier.
Lol. One can count the apps that are using the FPU on the fingers of one hand...;-)
:lol:
-
i guess you are one of those who need to read the thread over again :)
-
No need for that...It's a April 1 joke...
:lol:
-
As far as I know, nothing in the standard OS install requires an FPU.
Only applications which need to do a lot of floating point calculation benefit frome one and are typically compiled to use an FPU; most normal apps make very little use of floating point and when they do, the mathieee libraries are usually enough. Said libraries can be replaced with FPU versions.
Lots of applications exist in versions which support an FPU if present but not many actually require them. Notable exceptions are quake and warp3d enabled applications.
-
Hyperspeed wrote:
One question springs to mind here... are the sadistic, aggresive people that program Quake actually mathematicians?
I'd imagine that the engine programmers have a reasonable grasp of vector arithmetic, linear algebra, kinematics etc ;-)
Just projecting and rasterizing polygons on screen (unless you are simply using something like glut) requires a good understanding of vectors and matrices.
-
@karlos
"As far as I know, nothing in the standard OS install requires an FPU.
Only applications which need to do a lot of floating point calculation benefit are typically compiled to use an FPU; most normal apps make very little use of floating point and when they do, the mathieee libraries are usually enough. Said libraries can be replaced with FPU versions.
Lots of applications exist in versions which support an FPU if present but not many actually require them"
..most of us are aware of all of this, it is stated earlier in the thread as well, but your post about the details on how the fpu do math was very interesting!
by the way, i have a sx32 with a cpu@40mhz and a fpu@33 (i took it off because it seems to crash the accelerator).
but when i use the cpu-command in cli, in os3.9, it says 68020? is it the program that's wrong or does the cd32 somehow not use/enable the 68030?
@karlos
i guess demo-coders have a lot of the same knowledge to make good vector-programmed demos? does newer demos (say aga and up) use an fpu for the real-time calculations of vectors etc.?
-
I would just tell you the following, back in the 80s I did everything I could to speed up my amiga 1000, including adding a 16 mhz 68000 processor with a 68881 math FPU.. I had to have specially designed math libraries to take advantage of this. However both the 16 mhz update and the FPU libraries weren't much help because:
a) not too many programs including cad supported the FPU without having it attached to the 60020 or inbuilt in the 68030. Those programs that did really didn't show any noticeable increase in speed. Mostly due to the speed of the other chips on the motherboard and how communication between those worked.
We generally came to the conclusion that this kind of upgrade was a complete waste of time, unless you like the tech and tinkering inside your box..
This whole thing about putting an FPU there for the minimal increase you get without being coupled with a 32 bit cpu and memory is pretty much a complete waste of time for the average user.
It's amazing to me to see these posts for something I tried 20 some years ago because I couldn't afford a faster CPU and I was trying to get every ounce of performance I could.
Still it's fun to toy with this stuff..
-
kidkoala wrote:
@karlos
i guess demo-coders have a lot of the same knowledge to make good vector-programmed demos? does newer demos (say aga and up) use an fpu for the real-time calculations of vectors etc.?
Generally not. Fixed point arithmetic (which is actually just integer in reality) is often used for 3D, simply because it has traditionally been too slow to use proper floating point. Even with an FPU, you can often write integer versions of polygon rendering code that, whilst less "accurate" than the floating point ones are much faster.
However, later demos written for 68060 probably do use the FPU for this. The 68060's FPU can typically do floating point multiplication faster than the IU can do integer multiplication.
-
@donnyemu
hehe that's fun to hear about..
i guess those early times, back in the 80's, was the birth of the use of a fpu, and that it wasn't very useful, because of non supported software and the slow architecture of the systems, like you said.
in the early 90' and beyond, the fpu got more and more useful, both in programs and games..so that for the period we talk about here (mainly the aga and newer) the fpu started to get interesting, and a couple of years later (when they put the fpu inside the cpu's, bot with motorola and intel) it was unthinkable not having one of these in a home-computer. it's a normal transition for a new component..
the period we talk about in this thread have some programs and games that take use of an fpu if it is there, and if the libraries are there, most of us knew that from before, and now we want to know which programs and games those are.
the performance, the usability etc. is another matter; but it is not the topic of this thread, we want to find out what can use it, then i think one has to prove it to themself on his or her's own equipment, cause clearly, no-one seems to have very concrete information or proof of this. hehe, that's why i started this thread cause i know a lot of people wonder what the fpu is good for, seen in a perspective with the amiga and it's software.
-
The whole point about FPU's, without all the annoyance,
is that any Amiga with average use has no need for an
FPU whatsoever...
-
@amidude
read the posts, you are repeating me.
-
@kidkoala
I don't repeating you... I just explain it to
everyone without the annoyance...
:-D
-
most people here know what you just said, and that is not what the thread is about, thus your last posts are worthless, annoying if you will ;) other people here read the posts, so the already knew, or they know now, that an fpu is ofcourse not needed, for everyday use.
please stop posting here if you aren't interested in everything else about the fpu, than that it is not a vital part of the system. :)
-
@kidkoala
i've counted about 20 programs that CAN, use the fpu here, and when it does use it, the program probably always gain very high calculation-speed, for what it need the fpu for, contra the speed without the fpu.
the point here is to find out what programs and games that can take use of the fpu, not that it's a higly needed thing that is vital to everyday use of a classic amiga.
if you haven't understood that by now, you need to read the whole thread over again, and you might also want to read a bit between the lines...;)
if you don't find the topic interesting at all, don't post :)
I think you are the one who needs to read the whole thread over again. Like i said, i was reffering to some false lists of games and apps which were posted [bold]EARLIER[/bold] in this thread. I'm not talking about your list which seems valid to me. Got it now?
Anyway, back on the FPU games/apps. One of the Amiga games which utilize (but not requires) the FPU and it's not widely known for this, is Ambermoon.
-
@kidkoala
What's with this hostile attitude of you?
This is a friendly forum about Amiga related
subjects. Hold your horses dude. Otherwise
take your questions elsewhere...
-
Let us all do some breathing exercises. :-)
-
@amigamenace
hehe, that whole post wasn't targeted at you..:)
i just get a little irritated when people can't stick to the benefit of the topic when we've clearly gotten to the point in the thread (within the first 10 posts or something), where everybody (i thought) knew that an fpu is not a vital component, and then goes on and on saying over and over again that it isn't. i just can't understand why someone wants to keep on like that..
-
@AmigaMance wrote:
Let us all do some breathing exercises
Yeah...that's the first reasonable remark I
heard in this whole thread.. :lol:
-
What's funny about all of this is on PCs back in the day, adding an FPU DID in fact speed up things dramatically. I've still got the system I used back in the early 90's sitting next to me, a 80486SLC (80386 replacement) with an 80387 co-processor.
I guess most PC software back then autosensed the presence of an FPU and took advantage accordingly, whereas any well designed Amiga application would simply allow the math libraries to handle and redirect the necessary data.
Unless the app was designed for a direct hardware hit, I can see where there would be a bottleneck going from app to library before figuring out which processor to hit next.
Might also explain why computers, no matter how fast the hardware gets, still take the same amount of time to do anything as they did 10 years ago. So many freakin layers of crap to go through before actually getting to perform a function in harware. Translate this, translate that, blah blah!
I miss DOS.
-
@kidkoala
Don't be irritated dude... Lighten up!
:-)
-
@dr_righteous
hehe, that's a cool view on the matter..i guess pc's maybe managed to use fpu better in some way, back then..
@amidude
i'm gonna lighten up on you, when you start posting relevant stuff :)
-
@kidkoala wrote:
i'm gonna lighten up on you, when you start posting relevant stuff :)
I've been posting more "relevant stuff" on A.ORG
then you my friend...You're just a rookie...
-
hehe..it's the first time i've heard someone say something like "you're just a rookie" since high-school or in some b-movie or something, that lightened me up :)
i was ofcourse talking about relevant stuff in this thread..
again, please don't post more unrelevant stuff, ok? :)
-
@kidkoala
I post whatever I like. It's a free and democratic forum.
What's you're problem dude...It's the 3th time or something
that you ask people not to post anymore...
What's wrong with you? :-?
-
i'm not telling you to stop posting, i'm telling you to post things that benefit the thread more, and not things that already are said, that's all. please don't feel affended, it's just positive criticism..
ofcourse i can't make you stop posting other stuff, but then everybody else has to scroll like mad to get to the interesting parts ;)
-
@kidkoala wrote:
ofcourse i can't make you stop posting other stuff, but then everybody else has to scroll like mad to get to the interesting parts
Then don't respond to my posts anymore...It's because of
you that people has to scroll like mad...It's got nothing
to do with FPU's anymore.
-
please, let the next post be an informative topic-related one and i'll scroll right down to it and maybe respond as well! :)
-
OK, I've got various FPU's on my Amiga's,
(25Mhz, 40Mhz and 50Mhz) and they don't do
any s**t! How do you like that...
:lol:
-
hehe i guess that sums you up..
-
@kidkoala
Don't be so offensive dude...If you got nothing
interesting to say, then get the f**k outahere.
-
Too many to mention. GPU's are not usually measured in FLOPS (FLoating point Operations Per Second) but in pixels/texels per clock, or more commonly now in the number of pipelines and shaders.
Just google AMD "Stream Processor" and GFlops.
For fragment/shader programs, AMD "Stream Processor" (Radeon R580 core) has peak performance of 375 GFlops.
-
@amidude
About a few month ago I played Oblivion game on pc, its got about 25-30fps avarage on the highest settings. Then I accelerate a little more my pc (ddr2 800MHz/Core2 CPU etc.)
I didn't notice the difference in most way, but fraps program show: now its about 35-40 fps.)
In amiga I try many fpu, with differend oscillators. I learnt that some programs wich use "3d" effect often speed up. (Try ambermoon, I tried with an 68000, 68010, 68030 with different MHz FPU-s. 20MHZ-24MHz-27MHz-32MHz Now its clocked at 40MHz, but my 68030 still 14MHz. You will see the difference.
That's true, that running assyncronously from the CPU, you got to checked, it's worth the effort. I think its depends mainly, which turbo board you use.
Anyway If You don't use any 3d game, or 3d rendering, sound converting application, you will not notice the difference, because its only 1-2%
-
@derringer3
great, one who has thoroughly tested this and has proof of performance, hehe :) what kind of miggy and turbo board are those chips mounted on? cause my previous opinion is that when you have a big difference from the cpu to the fpu, the fpu needs to wait for the cpu to feed it all the time, you seem to have the opposite experience..
i'm going to try the same thing with my sx32@40mhz and fpu@33 w/oscillator@33mhz, here the cpu is faster in hertz, but if the fpu can finish it's job in less cycles cause it has more calculation-power, it will speed up the process (given there's something 3d-related calculations to do ofcourse).
@hammer
is it the same (or similar) with the gpu's now, and memory, as it is with the linear increase of cpu-performance; doubled every 2. year or something? i've always been fascinated with that, but i guess it's about to change because the new architecture with low-power, multi-core etc. breaks the linear curve?
-
@Thread
Well at least there are no PPC powered amigas that don't have FPUs in them so at least you know your PPC applications probably make use of it if they do any floating point at all ;-)
That said, not that many have a SIMD vector unit.... ;-)
-
@kidkoala
I've got an a500 with m-tec 68030/68882 board
By "factory" default it contains a 68030/16Mhz which is clocked at 14,2MHz and a 68882/16MHz which have got a separet oscillator. This is clocked at 20MHz
So about the performance:
68882 at 20Mhz: 0.48Mflops
68882 at 24Mhz: 0.51Mflops
68882 at 27Mhz: 0.58Mflops
68882 at 32Mhz: 0.68Mflops
68882 at 40Mhz: 0.79Mflops
You should look at, that sometime you got smaller advantage, when the estimated performance at higher MHz is indicated that. So there is no linear advantage compared to MHz. The best output of course is that the two proccessor working syncronously. (For example in my system 42MHz would be more effective than 40MHz, and maybe 43-44-45MHz. But a 50MHz 68882 will be faster than an optimalised syncronouly 42MHz.
Anyway a guy told that, in an other forum post, that his A1200 with Blizzard 1230-IV got an 50MHz FPU, and its got 1,33 MFlops.
If I'am able to overclock my 68882 to 50Mhz, I don't think its got 1,33 Mflops, probably 0,9Mflops.
Of course the bandwith of A500 bus and A1200 bus different a little bit.
-
stop aRgUiNg!
(http://www.dailyhaha.com/_pics/cat_dog_fight.jpg)
:laughing:
-
Please I was an Amiga developer, I am not an average user. My point is simply this, even with a 16 mhz upgrade and an FPU and a Crystal on an A500 the upgrade is hardly worth any noticeable increase, especially with a motherboard that internally runs on a rate that is compatible with NTSC/PAL clock rates.
The point simply that I was making is most people buy an FPU to see a speed increase.. I had the special IEEE libraries and into the 90s I kept that machine and tried software that supported them as well too..
The point I am making is it's more worthwhile to get an accelerator that combines the FPU and CPU with memory. That's where you'll get your speed increase and programs that really take advantage of the special math operations..
Many later Amiga's didn't come with FPUs like the 030 machines and above which had the EC030 chips. Some had them built right into the cpu.
The response I was talking about was specifically the people with FPU accelerators on the 68000 chips. I probably have an old A/C guide from like 91 which lists programs that support FPUs and my point is you have to differentiate programs that just support using the mathieee libraries and those that are code compiled for an 20/881 030/882 etc. from the others because they work differently and support the CPU differently. Some programs for a while didn't run when the EC030 chips showed up..
A nice database and list out on the internet would be cool if someone would make it..
-
is it the same (or similar) with the gpu's now, and memory, as it is with the linear increase of cpu-performance; doubled every 2. year or something? i've always been fascinated with that, but i guess it's about to change because the new architecture with low-power, multi-core etc. breaks the linear curve?
Moore's Law refers to transistor count. Refer to http://en.wikipedia.org/wiki/Moore's_law
-
@Piru
of the apps I listed, the only one that requires an fpu to run is actually Lightwave 5.
-
rkauer wrote:
Just a memo: you could NOT use a faster FPU than your CPU. If you bought a faster FPU, simply put a cristal the same clock of CPU.
kidkoala wrote:
I think it's like this: if you have a cpu@30mhz and a fpu@50mhz, then the fpu would have to wait for the cpu all the time, because it's so much faster.
it's better if they have about the same Mhz to cooperate better, meaning there's no point in having a really fast fpu if the cpu is lagging behind.
Dudes, no offence, but you have it all wrong. The FPU is faster at floating point calculations (naturally), but it still uses a lot of cycles to perform it's calculations. The CPU waits for the FPU, not the other way around. Speed up the FPU, and the CPU spends less time waiting.
This has been tested and verified on other architectures.
-- Peter
-
@donnyemu
great you come up with this kind of post, it's just what i want :)
"The point I am making is it's more worthwhile to get an accelerator that combines the FPU and CPU with memory. That's where you'll get your speed increase and programs that really take advantage of the special math operations.. " what do you mean by this, where does memory fit into this?
@shoggoth
it's great with you're explanation to, but after hearing every meaning possible on just the matter you speak of, i'm having problems trusting anyone hehe, any kind of proof, documentation etc.? (i don't suppose you have this, it's just a question). :)
-
kidkoala wrote:
it's great with you're explanation to, but after hearing every meaning possible on just the matter you speak of, i'm having problems trusting anyone hehe, any kind of proof, documentation etc.? (i don't suppose you have this, it's just a question). :)
Don't wish to offend you in any way, but... It's not like you have a well defined technical reason not to believe me (prove me wrong here, and please do so with real arguments on a technical level). There's a big difference between sayong "no" because you know better, and saying "no" just because you can. In case of the former you shouldn't have a problem presenting your arguments.
Overclocking the FPU is a well known DIY hack, at least on other 68k platforms. Consider the following. The program counter resides in the CPU - not in the FPU. This means that the FPU isn't "pushing" program execution forward - the CPU is. When the CPU reaches a point where it needs data from the FPU and the FPU hasn't finished processing the current FPU instruction
, the CPU will wait. If the FPU is finished, the CPU will continue with the next instruction.
If you really need proof, consult the official docs from Motorola. Or find some tables with cycle times for FPU and CPU instructions. Do the maths.
Note that CPUs with built-in FPUs works a bit differently from the 020/030+68881/2 combo, but it's really not applicable here.
-- Peter
-
Ah, sorry kidkoala. I didn't realize it was you who started the thread.
1. It's asynchronous. It doesn't have to be the exact same speed. Generally it's better to have a faster FPU clock to improve the throughput.
2. Yes you can. You'll also need to get a dedicated oscillator for it, of you want it to run at some higher speeds. There is no connection between the CPU and FPU speed, hence the word "asynchronous".
3. (first part - dunno). Second part - overclock using a dedicated oscillator connected to the clock input of the FPU. The 68881/2 overclocks very well, and can often run at 2x-2.5x of the original speed.
4. Floating point stuff, naturally. Usually no games from that era uses it, and it won't speed up your workbench. Raytracers often came with FPU versions, and modern stuff can often be compiled to take advantage of FPUs.
Hack for the Atari Falcon which can probably be adapted for the Amiga:
http://atari.nvg.org/fpu/
-- Peter
-
@shoggoth
thanks a lot! you've already been to great help, you seem to have a good understandig og the matter. :)
the atari-page (written by a norwegian i see, like me, interesting) was really something i've been eager to find, but never found. the overclocking-info is very valuable to me.
i have a cd32 w/sx32 (40mhz?) and a fpu @33mhz and a osc.@33mhz (the osc. has a dedicated slot on the accelerator,i bought the fpu and osc. together to upgrade my accelerator, i already knew before that, that an fpu wasn't needed for everyday use, it's just for the fun of putting one on:). what i didn't know is that you could put on any oscillator you want, and it will be overclocked! fun.
but where do you get osc. of up to 100mhz?? when i bought the 33mhz one, the biggest one was at 50mhz or something..
second, won't the fpu have a very shortened lifetime when overclocking it to 2-2.5x? i guess the cooling will help but anyway..
about the proof i wanted, it was just to see if you had any documentation or anything, i didn't recon you had any cause it's kinda weird old stuff to be tinkering with hehe, no offense intended towards you either..;)
EDIT: just found 64mhz oscillators on amigakit, they can just be fitted? i have to activly cool the fpu itself with a standard cooler also then?
what programs do i use to becnhmark this thing after being overclocked?
and also, how do i overclock the cpu on a sx32@030/40?
can i just replace the one i have with a 50mhz one? or should i just overclock the one i have? (i've read that you can often overclock, say a 33mhz to a higher level than a 50Mhz?
-
but where do you get osc. of up to 100mhz?? when i bought the 33mhz one, the biggest one was at 50mhz or something..
100Mhz oscillators are rare, but they exist. I wouldn't go that high to start with. Try common ones first, say 50 and 66Mhz.
second, won't the fpu have a very shortened lifetime when overclocking it to 2-2.5x? i guess the cooling will help but anyway..
Probably, but keep it within sane temperatures and it won't be a big deal.
EDIT: just found 64mhz oscillators on amigakit, they can just be fitted? i have to activly cool the fpu itself with a standard cooler also then?
Yes. And yes. Try with a heatsink and some thermal glue first, it could be enough. Use something FPU-intensitive when testing, such as a raytracer compiled with FPU support.
what programs do i use to becnhmark this thing after being overclocked?
Dunno.
and also, how do i overclock the cpu on a sx32@030/40?
can i just replace the one i have with a 50mhz one? or should i just overclock the one i have? (i've read that you can often overclock, say a 33mhz to a higher level than a 50Mhz?
Dunno. I've used a 33MHz 030 for years at 50MHz w.o. problems. Needs a heatsink and a fan though.
-- Peter
-
thank you for all the answers..appreciated..
one more, if you care to answer:
do you know anything about overclocking the 68ec020 14mhz cpu on the standard cd32? does it have a oscillator or is it oscillated by the motherboards own clock?
-
Overclocking a Megadrive: (http://en.wikipedia.org/wiki/Sega_Genesis)
"It is possible to overclock the Motorola 68000 CPU in some cases in excess of 300% (the current known world record is 25.4 MHz), though it may not be completely stable beyond a certain point on each console.[9] The result of overclocking the CPU doesn't speed up the games any, but actually eliminates slowdown that some games are plagued by.
Another curious modification is to replace the stock 68000 processor with a 68010. Since the CPU isn't socketed, this requires the removal of the old CPU, and soldering in of the new. The 68010 is a pin-compatible, 'enhanced' version of the 68000, which is a bit more efficient internally and offers some new features. According to modder Robert Ivy, upgrading the CPU to a 68010 does not necessarily make the games run faster, it just reduces how much they slow down in intensive situations. Also, for some reason, the DAC's digital audio output sounds cleaner and less distorted. However, the 68010 is not 100% object code-compatible with the 68000, so machines modified with a 68010 processor are not able to run certain games properly; such as Sonic 3, Sonic and Knuckles, Street Fighter II, Red Zone, and a few others."
I wonder if you could use a toggle switch and alternate between a full 68020 and a 68EC020 or even different clock speeds...
-
does it have a oscillator or is it oscillated by the motherboards own clock?
It uses the motherboard clock (~28MHz/2), so it's difficult (but probably not impossible) to overclock. You could possibly use external clock to drive the CPU, but I've never seen such hack myself (also: would it cause problems with the CPU accessing the system bus?).
Overclocking the motherboard clock is out of the question as it will skew all chipset timing.
-
by Piru:
You could possibly use external clock to drive the CPU, but I've never seen such hack myself
Doesn't the Apollo 630 piggy back a 68030 onto the A600's 68000? This is going even further than a seperate clock I suppose... also shoggoth's link (http://atari.nvg.org/fpu/) re Falcon FPU has some kind of bypassed oscillator.
It's a shame compatibility went out the window with the 68040/68060. If there had been a super '030 things could have been so much more fun!
Still, overclocking that 40Mhz '030 would be cool. As long as it's the more tolerant MC68882 being overclocked and you take cooling into account you could have an interesting end result there - Leirbag28 (http://www.amiga.org/userinfo.php?uid=6573) has a cooling fan cut into the front of his CD32!
-
@hyperspeed
i know, this whole thing is very interesting and sounds like a lot of fun even trying and not succeeding would be quite fun ;)
"the DAC's digital audio output sounds cleaner and less distorted." the 68010 sounds like a cool thing, if you could use a switch, i'm a little audiophile myself so getting even better sound from the beautiful sound coming from the amiga sounds like a dream:)
the fpu i have is the 33mhz 68882 so i'm probably going to buy it a 64mhz oscillator from amigakit and cool the beast down to normal temp. with some silver-paste, a big ol' cooling-grill(?) and a nice quite fan..
so the performance in games are only remarkable when a game is going slower than it should, but in raw performance in wb it should speed things up a bit?
-
Overclocking the FPU will have very little effect at all. It certainly won't make any difference in Workbench. Heavy FPU number crunching should speed up, say rendering some 3d scene or calculating mandelbrots etc.
In my experience FPU doesn't overclock very well, it'll easily begin to generate errors (this was with 33MHz chip at 50MHz).
-
@piru
i know, the performance in wb was cpu wise ;)
overclocking anything that old would anyway be just for the fun of it, i remember overclocking my old pc's to the max (before watercooling and stuff like that, in the diy-overclocking days when buying silver-coolingpaste and polish down the cpu surface to the metal, to get better contact, that actually helped several degrees sometimes)
and i'm not sure that overclocking the fpu to the double won't have any effect, at least not in the benchmarks, wich have been documented to show great differences..
http://atari.nvg.org/fpu/ here's the link to the guy who has tried iverclocking the 68882 with atari's for a while, he says he ran his 20mhz at 50mhz for a long time (ok, he might not have used it all the time, but i guess he knows what he's doing). ofcourse you have to cool it down, and you have to use a 68882 not 68881, and you have to know the outer limits of your architecture (maybe the cd32 or the 600 can't handle more than 33mhz through the components though you can overclock your fpu/cpu as much as you want).
but this is the purpose of this for me, i want to know as much about it as possible and then i'm going to try it all out in practice :) ...for fun
this is a guy that's been overclocking since 1975 or something, i guess he knows what he's doing to, and he has some interesting things to say:
http://members.iinet.net.au/~davem2/amiga.html
"I have also found over the years that more recently made versions of a particular chip will often overclock to a higher frequency. For example you would be more likely to get better results from a 4 year old 68030 compared to one that is 7 years old. Likewise you will usually get less from a chip at the top of it's range compared to a lesser rated one. For example you will usually be able to overclock a 25MHz 68030 further than a 50MHz 68030.
Thirdly you need to bear in mind that the accelerator card itself will also limit maximum possible overclocking speeds. A good example is the Commodore A2630 which cannot be clocked past 29MHz - even if you install a 50MHz 68030 in it."
-
Piru wrote:
In my experience FPU doesn't overclock very well, it'll easily begin to generate errors (this was with 33MHz chip at 50MHz).
You either got A: A bad FPU, B: an unstable clock, C: EMI trouble or D: all three.
Motorola chips from that era overclocks extremely well, especcially the 68882. Dunno about the 68881 though, but that's not an option anyway.
I've used a 33Mhz 68882 at 50Mhz for many years without cooling. No problems whatsoever - but I wouldn't be surprised if a bad clock could give the symptoms you describe.
-- Peter
-
This was 68882 on Blizzard 1230-III.
Well, I guess I was just unlucky.
-
@piru, shoggoth
another problem could be cooling? if his fpu gets to hot it could possibly create bad data?
another thing: why does the cd32 have so many oscillators?
the one that's used for the 14mhz cpu i guess is the 28mhz oscillator (running at half speed)? and there's a 16,9mhz osc. around the area of all the video output, that's because video runs at 32fps and that the double of 16mhz?
wouldn't it be possible to overclock the cpu osc. or something then?
just asking..:)
-
hehe maybe an unrelevant example, but that guy who had been overclocking since 1975, that 1975 overclocking was his calculator, and when doubling the the clockspeed the calculator worked as usual but it calculated wrong answers ;)
also, if you want the best of the best 68030 cpu, for overclocking-purposes (or whatever) you can order brand new 68030/50C from Rochester Electronics (i've just been mailing with the,), at the humble price of 144$ a piece, produced in 2002 :)
-
FPU built in 68030? The full 030 have a MMU, not a FPU!
-
who and when in th thread are you reffering to?
-
Hmmm, so a 68030RC50C could be overclocked quite stable? Is it possible I wonder to have a 64Mhz SX32?
:inquisitive:
-
"I have also found over the years that more recently made versions of a particular chip will often overclock to a higher frequency. For example you would be more likely to get better results from a 4 year old 68030 compared to one that is 7 years old. Likewise you will usually get less from a chip at the top of it's range compared to a lesser rated one. For example you will usually be able to overclock a 25MHz 68030 further than a 50MHz 68030.
Thirdly you need to bear in mind that the accelerator card itself will also limit maximum possible overclocking speeds. A good example is the Commodore A2630 which cannot be clocked past 29MHz - even if you install a 50MHz 68030 in it."
------------------------------------------------------------
Quoting this _very_ experienced overclocker, I think that a
4 year old 68030/50 will overclock better than a 10-15 year old one, for more than one reason (better design, better materials, not old rotting electronics;).
But he also says that a top o' the line cpu will clock less than a smaller one, so I guess someone just has to try this out..
The Viper and similar accelerators were often sold overclocked, hence the problems with heat (in addition to generally bad design in some of them), I guess the 50Mhz were overclocked 42mhz or something..
Thirdly, like he says, is that the internal architecture of accelerators and motherboards often set a limit to the highest clockspeed a cpu can have, like he mentions the A2630 wich cannot be clocked to more than 29Mhz even if the 030 is 50Mhz..
A question then rises: What are the limits of eg. the CD32, the A1200, and the A600?
-
The trouble with an A500/600/1200/CD32 is that there is interleaved memory access between the CPU and chipset (unlike a PC or a Genesis) so I guess if they are running at different speeds the clock signals still have to "line up" at certain times. On Aminet there are some tales of hacking an A500 to run at 14MHz (2x the chip bus), maybe an A1200 could run at 21.5MHz (3x) or something?
As for the A2630, I think Dave Haynie's archives had some updated PALs that helped with overclocking if the card had 80ns or faster RAM on it.
One time my brother and I each had the same model x86 motherboard, and 400MHz Celerons. His would run at 600MHz but mine wouldn't boot at that speed, I could only get 570MHz. It just depends on the chip. Later I got a 500MHz chip for cheap and that one wouldn't go past 575MHz! And of course this was already past the good ol' days where you could change the multiplier, so the 500 was slower than the overclocked 400 because of bus speed.
-
DamageX wrote:
The trouble with an A500/600/1200/CD32 is that there is interleaved memory access between the CPU and chipset (unlike a PC or a Genesis) so I guess if they are running at different speeds the clock signals still have to "line up" at certain times.
Same thing on the Falcon. The solution there is to use some extra logic which switches between 32 & 16Mhz, causing it to run in 32Mhz when not accessing the bus (typically speeding up stuff which resides in the cache and slow instructions). As soon as it access the bus, the clock is switched back to 16Mhz. Afaik both clocks must be in phase, or it won't work.
I think the same approach is used to overclock A500:s, and possible A1200:s. I may be wrong though.
Another approach on the falcon is to speed up the entire bus+cpu to 25Mhz, simply by replacing an oscillator on the mainboard. Don't know if that can be done on the Amiga without screwing up the refresh frequencies etc. for the screen? If possible, it should give a lot better performance compared to just double-clocking the CPU as I described earlier.. Well, I guess it's fairly obvious that I'm not too familiar with all aspects of Amiga hardware.. yet..
-- Peter
-
Overclocking the motherboard clock is out of the question as it will skew all chipset timing.
-
Piru wrote:
Overclocking the motherboard clock is out of the question as it will skew all chipset timing.
If all clocks in the system are derived from the same master clock, and you replace that master clock with something higher, I can see no reason why it shouldn't work - provided that one keeps it within a sane range.
However, since it would most probably screw up screen synchronization, baudrates, sample rates and other I/O, yeah, it's probably not a good idea... forget what I said.
-- Peter