Slashdot Mirror


Where Have All The Cycles Gone?

Mai writes "Computers are getting faster all the time, or so they tell us. But, in fact, the user experience of performance hasn't improved much over the past 15 years. This article takes a look at where all the precious processor time and memory are going."

21 of 854 comments (clear)

  1. Just look at the size of a word document today by marika · · Score: 5, Insightful

    I used to be able to fit the system, the finder, mac write and 3 X 8K docs on a floppy. Now I could barely fit a word document.

    --
    This is totally insecure, but very convenient.
    1. Re:Just look at the size of a word document today by bongoras · · Score: 5, Insightful

      But you can still fit an entire book on a floppy if you use LaTeX. The morale of the story: Don't want a slow, bloated system? Then tough it out and don't use one. But don't complain when you have to type:

      \begin{enumerate}
      \item Open a terminal window by right clicking on your desktop and selecting ``Open Terminal''
      \item In that window, become root by typing {\tt su}
      \item Now put a blank CD in your drive and burn the iso image to it by typing \\
      {\tt cdrecord -dev=0,0,0 cdimageyouwanttoburn.iso}
      \end{enumerate}

      instead of clicking the bullet button or asking a paperclip to make a list. It's all a matter of what you want. There are plenty of lean, mean systems out there. Don't bitch about UI slowness unless you are willing to use a plain-text console with "screen" "mutt" and "elinks" as your main applications.

    2. Re:Just look at the size of a word document today by squiggleslash · · Score: 4, Insightful
      Wow, talk about extremes.

      I'm pretty sure there's a half-way house somewhere. I seem to remember the early nineties were full of fully functional does-everything-I-want applications that had nice GUIs and used a megabyte or two of memory when they ran.

      I wouldn't categorize MacWrite or early Mac OS as that, but, I don't know, Lotus AmiPro and Microsoft Word for Windows 2 were pretty good, to give two examples.

      --
      You are not alone. This is not normal. None of this is normal.
  2. Nobody give a fig about optimizing by winkydink · · Score: 5, Insightful

    'memory is cheap'
    'disks are fast'
    'processors are fast'

    nobody cares about optimizing code anymore.

    --

    "I'd rather be a lightning rod than a seismometer." -Ken Kesey

    1. Re:Nobody give a fig about optimizing by dattaway · · Score: 4, Insightful

      Back in the old days, popular applications were stand alone, written in assembly, and made to fit within a single code segment. Since resources were small, much care was taken to get the most out of so little. Software back then were simple like motorcycles; they had the basics bolted to a simple frame and off it went. Today we have software written with stock libraries, made to work with all kinds of resources and standards, and required to work with large filesystems and memory maps. Applications back then fly today, but seem like a small insect when it comes to functionality.

    2. Re:Nobody give a fig about optimizing by tomstdenis · · Score: 4, Insightful

      I'd hope not because for most problems efficient *algorithms* are more important than efficient implementation.

      Tom

      --
      Someday, I'll have a real sig.
  3. Usere experience unchaged .. nooo way by iMaple · · Score: 5, Insightful

    But, in fact, the user experience of performance hasn't improved much over the past 15 years

    Now that really depends on what you would call 'user experience'.
    Compare a file manager 15 years ols (PC Tools had one right .. for DOS) to the KDE/ Gnome file managers (Ok MC looks the same still :) ).
    Compare pine to Thunderbird.(though I still use pine on my old laptop :) )
    Compare Usenet clients or say Lynx to Firefox,
    Compare Doom 3 to Pac Man .
    Comapre the fancy graphics on OS X to Win 3.1 or whatever OS Mac had then

    No Sirrr I say the user experience of performance HAS changed. Maybe not directly proportional to the Proceessor speed increase (due to code bloat ?) but still its much much better. Thats my $0.02 .

  4. Heh by FiReaNGeL · · Score: 5, Insightful

    I think that the article writer just realized what a lot of computer buyers don't : CPU speed != more performance, ESPECIALLY when you look at graphical display and Word processing (at least he didn't include "web surfing speed").

    Where are my CPU cycles and memory going on my AMD 3500+ and 1Gig 400MHz DDR Ram? Most of the time, nowhere. 1% CPU usage, commit charge 150 megs / 1 gig. Honestly, if you don't use CPU intensive apps, there's a limit to the 'improvement' you can expect in 'graphical display' and 'word processing' speed. But sales rep will tell you otherwise, for sure.

  5. Stuff running in the background by grahamsz · · Score: 5, Insightful

    Generally (at least on my less used windows box) i have most of the following running most of the time....

    1) VoIP Client
    2) Messaging Client
    3) Word Processor
    4) Multiple Web Browsers
    5) Email Client
    6) Probably some graphics or photo editing tool
    7) Something playing music

    In addition there are various other background processes like desktop indexing, things watching for my digital camera being plugged in, smart start stuff...

    Linux is probably worse since i keep Apache and often Tomcat running all the time.

    Back in the day, this was never how it was done. You'd optimize config.sys to get the absolute max amount of free conventional memory.

    Multitasking has improved to the point that many users probably run close to 100 processes at any point in time..

    prstat here says i'm on a system with
    Total: 3741 processes, 6739 lwps

    Fair enough it's a shared box, but that scale was impossible a decade ago.

  6. Mac OS X by weave · · Score: 4, Insightful
    An interesting thing I've noticed since I got a laptop running OS X is that it seems every new release and patch for it "improves performance" in some area.

    So Apple is bucking the trend, or their first versions of OS X were an inefficient piece of crap and they are just now optomizing it.

  7. Re:My memory Usage by HeghmoH · · Score: 4, Insightful

    Do you have any evidence whatsoever for this? It's not a good idea, and iTunes uses a constant amount of CPU while playing music, indicating a normal buffered, streaming decompression scheme.

    --
    Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
  8. My favorite theory... by merlin_jim · · Score: 4, Insightful

    Is that it is (like nearly every other system out there) an economical system; it's all about supply and demand.

    I this case there's a supply of plenty of clocks. There's an (existing) demand for a certain level of performance; if the supply outstrips that demand, then the supply is devalued, and consequently the programmers don't spend as much time conserving that resource.

    Or to put it another way, programs behave like a gas with respect to responsiveness and user expectation; they expand to fill the available space.

    Or to reword it another way (quoting from the article): computers are, in fact, doing more than they used to. A lot of the things computers do are fairly subtle, happening beneath the radar of a user's perception. Many functions are automatic and, as discussed in last month's column, you could probably do without some of them.

    --
    I am disrespectful to dirt! Can you see that I am serious?!
  9. Re:Code Bloat by Anonymous Coward · · Score: 4, Insightful

    You want cross platform, you want platform support, so get used to VMs and WRAPPER code.

    You want language interop, you have to live with COM, DCOM, CORBA, XML Web services, SOAP, UNO. If not, then go back to your Amstrad or Sinclair.

    FFS you cant have your cake and eat it.

  10. Its not bloat if you derive utility from it by Ars-Fartsica · · Score: 4, Insightful
    I am tired of seeing this rolled out naively again and again. I like smooth fonts, multimedia support, device management, hires icons, a little bit of eye candy etc etc.

    I derive utility from them and my hardware can handle it. This is not bloat.

    1. Re:Its not bloat if you derive utility from it by EmbeddedJanitor · · Score: 4, Insightful
      What is bloat though is the shitty code behind these. Nice bloaty STl C++ class implmentation that does, in 200 line, 5kbytes and 5000 cycles what a tight bit oc C can do in 20 lines, 100 bytes and 200 cycles.

      Bloating isn't just in RAM, CPU and diskspace. It's now happening to other resources like network bandwidth too. Ten to 15 years ago I could do a lot of very useful stuff with a 1200baud dial up. Now 50k dialup is pure crap for many purposes, mainly because of bloat.

      --
      Engineering is the art of compromise.
  11. Re:Code Bloat by Rei · · Score: 5, Insightful

    More than just code bloat: disk access speeds combined with the increase in size of everything (for "richer content", "more features", etc).

    With a lot more files, a lot larger files, etc, your performance at file access (and disk caching) will decrease unless you can increase the throughput and decrease the seek time/latency of data access from the disk.

    Back in 1998, most PCs were shipping with 5400 RPM hard drives; I bought a used 10k rpm drive for 200$. Nowadays? Most PCs are still shipping with 5,400 RPM drives, and 10k RPM is still good performance (although not the best out there - although, mine back then wasn't top of the line either).

    Disk sizes are scaling up wonderfully. Disk access speeds are not. The same holds true with RAM.

    --
    Dear Lord: One of your creatures may be hurt tonight. Please let it be the other creature.
  12. It's not just that... by bonch · · Score: 5, Insightful

    A lot of people like to wax nostalgic about the good ol' days when things were faster, all the while ignoring the featuresets implemented today. The fact is, yesteryear's code wasn't as advanced or featured. A word processor from ten years ago may have been pretty damned fast, but today's word processors load dictionaries to spellcheck your document and grammar as you type and import graphics.

    Windows 3.1 may have been incredibly snappy, but it also lacked propery memory protection, wasn't 32-bit addressed, and didn't provide an intuitive interface. Also, more advanced typography (anti-aliasing) and filesystem indexing services like Spotlight come into play, as well as all the important system daemons running in the background that are now considered stock.

    It's not that things aren't getting any faster because of bloat. It's because as power increases, the ability to add new modern features to the original experience is utilizing that extra power, just as it should.

  13. Re:Code Bloat by pilkul · · Score: 4, Insightful

    The bottom line is that optimization is rarely the best thing a developer can be doing with his time. There's a lot more you can do with "a day" than tweak a poorly thought out algorithm. By all means optimize if your program is as slow as molasses and your profiling shows that a particular section of your code is at fault. Otherwise, good programming practice is to think about other things.

  14. Re:Fun fact! by Johnno74 · · Score: 4, Insightful

    Nope, wrong. Task manager reports working set, which is whatever memory windows THINKS the process is using at the moment.

    Reporting the total memory allocated by an app is meaningless, because much of that memory includes things like memory-mapping DLLs that are only loaded once, and shared amongst all processes using them.

    Windows constantly trims pages from the working set of each process that haven't been accessed in a while and pages these out to disk.

    When you click the minimize button windows assumes that the app (or at least large parts of it) are going to be inactive for a while, so it tries to remove as many pages from the working set as possible - hugely reducing the "memory usage" reported in task manager. Sometimes it is a little too agressive in trimming pages from the working set, and the "memory usage" immediately climbs a little again, as the app accesses memory pages that windows thought it could page out.

    Try it with an app like MS Word that has background threads that constantly check spelling and stuff, and you'll see the working set goes up for a few seconds after you minimize it.

  15. ummm... kernel compile? by rsw · · Score: 4, Insightful

    I don't know about you guys, but back when I was running linux on a 33 MHz 80386, my kernel compiles went overnight. Now they take, oh, ten minutes.

    I'd say that's an improvement, wouldn't you?

  16. What kind of optimization? by DeadVulcan · · Score: 4, Insightful

    nobody cares about optimizing code anymore.

    You can optimize in many different ways: for run-time performance, maintainability, extendibility, usability, compatibility, and probably a bunch of other ways I can't think of just now.

    Many of these are at odds with each other. And since computers are getting faster, I think it's perfectly reasonable to start trading off run-time performance with some of these other things.

    --
    Accountability on the heads of the powerful.
    Power in the hands of the accountable.