4 ms·
I'd say modern CPUs are not optimized for anything in particular. They are simply okay at doing general purpose stuff. Anything more specialized exists in the
by fla 10y ago
I'd say modern CPUs are not optimized for anything in particular. They are simply okay at doing general purpose stuff.
Anything more specialized exists in the form of DSPs GPUs, etc..
- robotresearcher 10y agoThat's ignoring the history. The definition of 'general purpose stuff' includes things which used to be considered specialized. FPUs used to be physically separate optional add-ons. They were quickly absorbed into the main CPU around the time that the spreadsheet became the killer app. Then SIMD was added when 'multimedia' became a requirement. Now pretty good GPUs are integrated too. Of course all these capabilities are multi-purpose, but they were not core functionality originally.
- fla 10y agoI agree. Nontheless, modern cpus are nonetheless designed to be acceptably good at different things (versus being extremely efficient at solving a specific task).
- fla 10y agoI agree. Nonetheless, modern cpus are designed to be acceptably good at different things (versus being extremely efficient at solving a specific task).
- garaetjjte 10y agoReally spreadsheets used floating point? That sounds like terrible idea.
- robotresearcher 10y agoThat's a good point. I don't know the answer. Optional PC FPUs and the rise of spreadsheets were contemporaneous in the late 1980s but perhaps not related. edit: I checked. Microsoft at least used floating point in Excel until much later, until at least 2013. With the expected limitations. https://support.microsoft.com/en-ca/kb/78113 https://support.microsoft.com/en-ca/kb/78113
- blihp 10y agoThey absolutely were related (as were databases and FPUs). Had these mainstream business applications not driven them, it would have likely been years later before they became standard equipment. The FPU was likely originally added with 'serious' scientific and engineering computing tasks (including CAD) in mind, but it was the more mundane and common spreadsheet and database applications that drove demand. Here's what I remember from back then: early PCs (8-bit era: Apple // etc) had no socket for a FPU (i.e. not even an expansion option), every IBM-compatible PC had a co-processor socket starting with the 8086 (fun fact: the 8087 wasn't even shipping when the PC was designed, and boy were they expensive for what they did when they shipped) but almost no one bought one until the late-286/early-386 era for general-purpose computing, by the 386 era the FPU was pretty much standard equipment on any 'real' business PC. So the software evolution was: no FPU support, optional FPU support, FPU required. (i.e. by the last generation of DOS applications, several major apps had dropped their floating point emulation libraries and would crap out with an error along the lines of 'coprocessor not detected/installed') The evolution of the FPU was very similar to how the GPU has played out in terms of becoming a standard, expected component. As with the FPU, CAD and all sorts of other scientific/business applications were the initial drivers of the, but gaming is what caused unit volumes to explode and the reason it is now standard equipment.
- dragonwriter 10y ago> They were quickly absorbed into the main CPU around the time that the spreadsheet became the killer app. For very loose definitions of "quickly" and/or "around the time". Spreadsheets became the "killer app" with VisiCalc in 1979 -- before the IBM PC was even a thing; but Intel processors through the 386 didn't have an integrated FPU, and the 486 (around 1990) came in both integrated-FPU (486DX) and no-integrated-FPU (486SX) models. It wasn't until the Pentium that integrated-FPU was universal in the Intel line. (AFAIK, most spreadsheets of the early PC era didn't even support using the FPU, and the main widely-used application category that leveraged FPUs in the optional-FPU era was CAD.)
- robotresearcher 10y agoYep, my spreadsheet example was not great. Your example of FPU-for-CAD is perhaps better at making the case that the FPU was once a specialized co-processor, but of course is now considered an essential everyday component. The modern CPU evolved to support the set of workloads people found for them over time. They are now heterogeneous parallel systems that are really good at actual workstation and server workloads. They are quite specialized in that sense.
- zubat 10y agoThe FPU achieving mass adoption maps pretty well to the onset of "multimedia hype" (CDs, digital audio and video, and of course 3D game rendering). That content doesn't strictly need floating point, but it became an affordance along with 32-bit desktop architectures and their increased memory and storage.