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."

53 of 854 comments (clear)

  1. My CPU Usage by fembots · · Score: 5, Funny

    2% word processing
    3% gaming
    5% internet
    90% feet warming

    1. Re:My CPU Usage by BeyondALL · · Score: 5, Funny

      that's why I run Seti@Home in the winter :)

      --
      "If you keep an open mind people will throw a lot of garbage in it."
  2. 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 EnronHaliburton2004 · · Score: 5, Interesting

      Now I could barely fit a word document.

      And how much of that bloat in Word is useful information?

      If I open word, type the letter 'a', and save the document, it's a 20K document.

      If you type 'a' 2000 times, it's still a 22K document.

      What the heck is in that other 99.9% of the document?

    3. 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.
    4. Re:Just look at the size of a word document today by cosmo7 · · Score: 4, Funny

      Here's that MS Word native format:

      64 bytes: Cryptic Masonic signature
      64 bytes: Reserved for Carnivore
      8KB: Macro playground
      8KB: Random extracts from King James Bible
      64 bytes: Run-length encoded document contents
      8KB: Uncompressed copy of above for compatibility

    5. Re:Just look at the size of a word document today by Smidge204 · · Score: 4, Informative

      Well you have to be careful.... some file systems have minimal increments in file sizes. For example, on my NTFS formatted system, a plain text document with one "a" in it is officially 4KB, even though there is onlt one byte of data in it.

      This is not an excuse fro a BLANK MSWord document being 19,456 bytes of course. But there is "useful" data in there...

      I'm running Win2K, and if I right click on the file and sepect "Properties", there is a summary tab that displays all the info stored in that 19k. (You might have to click "Advanced")

      The data includes:
      -Title
      -Subject
      -Category
      -Keywords
      -Template name
      -Page Count
      -Word Count
      -Character Count
      -Line Count
      -Paragraph Count
      -Scale (No idea what this means)
      -"Links Dirty?" (No idea what this is... maybe it's true if there's porn links in it?)
      -Comments
      -Author (From computer info)
      -Last Saved By... (From computer info)
      -Revision Number (Number of saves?)
      -Application
      -Company Name (From registration info)
      -Creation Date (Seperate from file system creation date)
      -Last Saved Date (Seperate from file system modified date)
      -Edit time

      Now is this ACTUALLY useful? I dunno. It might be in some situations. There should be an option for not saving this metadata though, for security if not for file size.
      =Smidge=

    6. Re:Just look at the size of a word document today by ph43drus · · Score: 4, Informative

      There is. I'm running Slackware 10.0 (can't wait to get my 10.1 disks! w00t!). I use vim+LaTeX for all my document prep needs on the command line (use an xterm if you so choose). As others have mentioned, LyX isn't bad.

      I'm a physics major at UW, so I do a decent bit of scientific work on my computer. I use GNUPlot, XFig and the Gimp to generate drawings for lab reports and whatnot.

      I'm typing this from Firefox running on the Xorg6.7.0 server+WindowMaker 0.91. The key here is to use a lightweight window manager. Blackbox and fluxbox are other good choices (light, usable, not fugly (cough, fvwm, cough)). If you have to have that desktop environment, go with Xfce.

      The only gap that I occasionally feel in my user experience is a good spreadsheet. I haven't found one. KSpread, OpenOffice Calc and Gnumeric either are or require the use of heavy GUI software which we are trying to avoid (KDE and Gnome are not as big as XP, but far too big to run comfortably on my system). I've glanced at Siag, but haven't really tried it out (I don't know scheme and don't have the time to figure it out right now--see physics undergraduate work).

      I use mutt or pine, depending on which email address I'm checking. Thunderbird looks promising for being light and good, if you want a GUI based email client.

      Recompile your kernel to match your hardware (trim the fat and optimize for your processors), and turn off any extra servers that you don't need (don't need telnetd, ftpd, &c. running? Turn off inetd--it's also more secure). Customize your boot sequence to only start and load that which your system needs and those things which you use.

      I also boot to the command line and don't run xdm or the like. I do a lot of work from the command line, and X+light WM doesn't take long to start. It is, again, one less thing wasting clock cycles on my machine.

      For reference, I'm running my Slack 10 system on an Abit BP6 with two PIII 866MHz processors underclocked to 650MHz (long story... Has to do with the fact that the BP6 doesn't technically support the PIII). I've got 384MB of RAM and a GF4 video card. It is lightning fast. The only exception to this is when I'm running X with the closed nVidia drivers (damn thing has a 3MB kernel module... grrr...), but that only adds a hang of a couple seconds when switching between X and the consoles, and that's it. If I'm not playing Quake or dealing with 3D visualization stuff, I can use the OSS driver (2D accel only), and get rid of even that performance problem.

      So, yes, the middle ground is there, and it rocks. My computing experience is awesome, my slightly dated hardware is rock solid and perfectly responsive. Take a good, customizable Linux distribution, run light weight software, turn off stuff in the background and run a lean, mean, customized kernel, and you'll reclaim those lost cycles as interface responciveness. I suggest Slackware for this. FreeBSD, Debian, and any other Linux distro which is aimed at power-users will be good for setting up a configuration like this.

      Mandrake, RHAT (RHEL & Fedora), SuSE and any other user-friendly type distro is ill-suited to this, IMO. Not that you can't, but my experience with these distros and their high-level admin tools is that if you try to do something too different from the default, it gets extra hard. So, Slackware and the like just end up being simpler, and now you know what Slack users mean when they say "it's simple." So stop giving us funny looks when we say it.

      Jeff

  3. This week's action item by fembots · · Score: 5, Funny

    Launch a few applications simultaneously and time their start-ups. Try it again in five years to see whether the time has improved.

    I think it'll be the same, given the same machine.

  4. On complexity, code bloat and user interface by Anonymous Coward · · Score: 5, Informative

    Mr. Seebach points out that "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."

    This recalls an analogy drawn by a recent Economist article. Unlike most automobile analogies popular among Slashbots, this one is actually rather appropriate: "By the 1930s, ... the car had become more user-friendly and ready for the mass market. ... [T]he makers' increasing skill at hiding the technology from drivers ... meant that cars got hugely more complex on the inside, because most of the tasks that had previously been carried out by drivers now had to be done automatically. This presented drivers with a radically simplified surface, or 'interface' in today's jargon."

    Given this lesson drawn from history, I disagree with Seebach's conclusion that "the worst is probably over" in terms of code bloat and complexity. Computers still have a long way to go before they can approach the ease of use and stability we demand of every other consumer appliance in our lives.

    The aforementioned article requires a paid subscription to view, so in the interests of convenience, I'll reproduce it here.

    --

    SURVEY: INFORMATION TECHNOLOGY

    Now you see it, now you don't

    Oct 28th 2004
    From The Economist print edition

    [Image]

    To be truly successful, a complex technology needs to "disappear"

    THERE has never been anything quite like information technology before, but there have certainly been other complex technologies that needed simplifying. Joe Corn, a history professor at Stanford University, believes that the first example of a complex consumer technology was clocks, which arrived in the 1820s. Clocks were sold with user manuals, which featured entries such as "How to erect and regulate your device". When sewing machines appeared in the 1840s, they came with 40-page manuals full of detailed instructions. Discouragingly, it took two generations until a trade publication was able to declare in the 1880s that "every woman now knows how to use one."

    At about the same time, the increase in technological complexity gathered pace. With electricity came new appliances, such as the phonograph, invented in 1877 by Thomas Alva Edison. According to Mr Norman, the computer-design guru, despite Mr Edison's genius for engineering he was a marketing moron, and his first phonograph was all but unusable (in fact, initially he had no particular uses in mind for it). For decades, Mr Edison fiddled with his technology, always going for the most impressive engineering solution. For instance, he chose cylinders over discs as the recording medium. It took a generation and the entry of a new rival, Emile Berliner, to prepare the phonograph for the mass market by making it easier to use (introducing discs instead of cylinders) and giving it a purpose (playing music). Mr Edison's companies foundered whereas Mr Berliner's thrived, and phonographs became ubiquitous, first as "gramophones" or "Victrolas", the name of Mr Berliner's model, and ultimately as "record players".

    Another complex technology, with an even bigger impact, was the car. The first cars, in the early 1900s, were "mostly a burden and a challenge", says Mr Corn. Driving one required skill in lubricating various moving parts, sending oil manually to the transmission, adjusting the spark plug, setting the choke, opening the throttle, wielding the crank and knowing what to do when the car broke down, which it invariably did. People at the time hired chauffeurs, says Mr Corn, mostly because they needed to have a mechanic at hand to fix the car, just as firms today need IT staff and

  5. 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 Rorschach1 · · Score: 5, Interesting

      Nobody except embedded programmers. My biggest project of late runs on an 8-bit, 8 MHz CPU with about 7k of Flash and 192 BYTES of RAM. Not megs, not kilobytes, but bytes. That's equivalent to less than three lines worth of text. And the code's written in C, rather than assembly, so while it's easier to maintain, it takes more effort to make sure it stays efficient.

      I think all programming students should have to code for a system like this. It gives you a MUCH greater appreciation for what the compiler is doing for you, and what the consequences of simple changes can be.

    3. 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.
    4. Re:Nobody give a fig about optimizing by KiltedKnight · · Score: 4, Interesting
      I think all programming students should have to code for a system like this. It gives you a MUCH greater appreciation for what the compiler is doing for you, and what the consequences of simple changes can be.

      I agree completely. I've done some programming for OS-9, and when we were creating some software libraries, we had to do was worry about things like program footprint size and memory allocation/deallocation. We were using a cross-compiler and doing development in C and C++. Something as simple as the order in which you declare the variables could make a noticeable difference in program size. Memory allocation and deallocation had to be done by the top level of the program. The support libraries had to be written to accept a memory block to use and how large it was. The last thing we wanted to do was use up the 4MB of RAM (which had to hold the OS, plus any programs you were running) we had by making large chunks of it unusable because it first was malloc()'ed, then free()'ed. We didn't want to risk having whatever garbage collection scheme existed to be able to properly operate... assuming there even was one. (This was 1997.)

      Of course, if you want speed, you have to learn to take advantage of the "short circuit" of && and ||. While nobody's really going to notice the several nanoseconds you might use up by doing !strncmp(str1, str2, n), when you process millions of rows from a database, it can make a big difference by not forcing a program pointer jump by saying
      if (str1[0] == 'a' && !strncmp(str1, str2, n))...

      The mindset we have now is a direct result of the prevailing attitude that memory is cheap and processors get faster. A friend of mine is no longer asked to interview prospective candidates because he would always ask questions about optimizing code and making it run faster. The candidates nearly always had the look of a deer caught by headlights, and these supposedly knowledgable programmers (interviewee AND interviewers) couldn't answer these questions.

      --
      OCO is Loco
  6. What are they talking about? by brian0918 · · Score: 5, Funny

    Windows 3.1 and Notepad run nice and fast on my 3.2GHz 8GB RAM box.

  7. Clippy by rlp · · Score: 5, Funny

    Someone needs to ask Clippy what he's doing with all those spare cycles.

    --
    [Insert pithy quote here]
    1. Re:Clippy by nine-times · · Score: 5, Funny

      Browsing the Staples web site for mail-order brides.

    2. Re:Clippy by dexter+riley · · Score: 5, Funny

      It's a little-known fact that Clippy doesn't really go away when you click "just type the letter without help". He returns to a background process, where he lives with his wife, two kids, and the "Search Companion" Dog. Microsoft Bob lives there, too...well, he actually lives in a virtual cardboard box behind the "bowling alley" thread.

      It's kinda like the Matrix, only less resource-intensive, and without as much "whoa" time.

  8. A few things by macklin01 · · Score: 5, Informative

    Some good things that have eaten more memory and cycles (all of which have improved the user experience, as opposed to what the summary states):

    1 Programs that check your work as you go (e.g.: autocalculate on spreadsheets)

    2 More help dialogs, things watching for cameras, and whatnot to smooth the user experience.

    3 More use of IM and other software in the background much of the time.

    4 Services running so that it's faster to sort and search files, open your favorite programs, etc.

    In short, lots of stuff running to make your experience smoother, even if it doesn't look like it's doing much more.

    Some bad things:

    1 More viruses, etc.

    2 The mandantory virus scanner that has to run in the background all the time because of (1)

    3 All the crap adware that installed more than it used to be.

    These are just a few of the trends I can think of . -- Paul

    --
    OpenSource.MathCancer.org: open source comp bio
  9. Reminds me of a song... by nharmon · · Score: 4, Funny

    Where have all the cycles gone, long time passing
    Where have all the cycles gone, long time ago
    Where have all the cycles gone, gone to spyware everyone.

    When will they ever learn?
    When will they ev-ear learn?

    1. Re:Reminds me of a song... by Buran · · Score: 5, Funny

      Where has all the spyware gone? Long time passing?
      Where has all the spyware gone? Long time ago
      Where has all the spyware gone?
      Gone to spammers, everyone.

      When will we ever learn?
      When will we ever learn?

      (Apologies to Mikhail Sholokhov, Pete Seeger & parent poster)

  10. 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 .

  11. 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.

  12. Uhmmm, no. by Scratch-O-Matic · · Score: 4, Funny

    I didn't rtfa, but..no. Nine years ago I used to start my word processor (Ami Pro!), then go take a leak while it loaded. What a BS claim.

    --


    Evil is the money of root.
  13. Where have all the cycles gone? by Anonymous Coward · · Score: 5, Funny

    My girlfriend has a cycle every month. It causes me problems, so I can imagine it must cause some problems for the computer as well.

    1. Re:Where have all the cycles gone? by Stanistani · · Score: 5, Funny

      The time to worry is when this cycle suspends atypically, causing a dependent issue.

    2. Re:Where have all the cycles gone? by the+real+darkskye · · Score: 4, Funny

      So thats where child processes come from!

      --
      Music is everybody's possession.
      It's only publishers who think that people own it.
      Fuck Beta
      ~John Lenno
    3. Re:Where have all the cycles gone? by zCyl · · Score: 5, Funny

      That's why you don't want to fork outside of protected mode.

    4. Re:Where have all the cycles gone? by alexo · · Score: 4, Funny


      >> "My girlfriend has a cycle every month."
      >
      > Heat?


      Running at about 380 nano-Hz, I would rule out heat issues.

  14. 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.

  15. 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.

    1. Re:Mac OS X by mj_1903 · · Score: 4, Informative

      I think it's a bit of both.

      Apple pushed to get OS X released to the public and so they followed the belief of "make it work then optimise". Today we can see the fruits.

      An example of this is Quartz. Quartz basically had all the components you needed in 10.0 to do some great on screen rendering and it was reasonably fast. Through each iteration of Mac OS X though it has improved. In 10.1 the speed of the code was improved. In 10.2 we had partial acceleration via the GPU. In 10.3 more optimising. In 10.4 we can see they have completely pulled apart sections of Quartz and rewritten it as well as buffering it all onto the graphics card. That is but one example though, there are plenty of others.

      On the other hand, apps like iPhoto and GarageBand were really sluggish and the system reflected that. Mac users cried foul and now you have iPhoto 5 which is blazingly fast and literally all the apps have been following that trend. I know as a developer myself I spend a good 20-30% of my time optimising code simply so users get the speed that they are now used to. It's good, we needed it, especially when we were stuck on the G4's. Now with the G5's it's just icing on the cake.

  16. In the old days, ... by Great_Geek · · Score: 4, Interesting
    In the old days, things were done with only a few cycles:

    Apple II (1 MHz 6502) did animated graphics with sound and controlled floppy access while polling the keyboard (The Bard's Tale)

    Amiga (14 MHz 68000) had complete GUI, multi-tasking, on 256K RAM.

    The old saying that "Intel giveth, Microsoft taketh" is about right. The CPU's have gotten faster, with the Microsoft O/S taking more and more cycles to do the same thing.

  17. Re:My memory Usage by Naikrovek · · Score: 4, Informative

    for crying out loud, why does a 5 MB MP3 take 60+ MB of memory to play?

    because that's the size of the uncompressed waveform. You don't play the MP3, you play the waveform that is compressed inside the MP3. iTunes just decompresses the file all at once, and puts that into memory, instead of a bit at a time like some players.

  18. DCTI by Leroy_Brown242 · · Score: 4, Funny

    distributed.net is where all the smart CPU cycles have gone! :)

  19. 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!
  20. 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?!
  21. I can't work 2^(years/1.5) faster... by nick_davison · · Score: 5, Interesting

    I haven't had to set an IRQ or DMA setting in years. I've not had to mess with himem or any other arcane memory configs and boot disks, restarting my entire system each time I want to run a different game.

    Each time I plug in a new joystick and it just works, each time I plug in a new digital camera and it's just there as another drive, each time I alt-tab out of a game, check a walkthrough website, then alt-tab back, I think back to the old days where code was really efficient and didn't do any wasteful background tasks like that.

    I remember helping a friend with a C++ assignment, via the net. Each time, she'd have to exit her telnet program, run Borland's C++ compiler from the command line, check the output, quit the compiler, reopen telnet, reconnect to the MUD we were talking over, then describe what had happened. Now... She'd just show me what's on her desktop via Messenger while we kept chatting.

    And if some cycles get used up doing weird UI gimicks that I'll never use - like making the UI scalable so the partially sighted can use it, I'm willing to trade that.

    For all those reasons, I'm more than happy that my 2^(years / 1.5) faster PC "wastes" all of those extra cycles. And that's before we get on to things like built in spell checkers and real time code debugging as I write it.

    I don't want a 2^(years / 1.5) faster experience. I want all those cycles put in to making things work closer and closer to how I just expect them to work.

    I don't know about anyone else but I can't code 2^(years / 1.5) faster so I wouldn't be able to keep up with that damn responsive text based compiler. On the other hand, I am that much faster overall as I now call an API that adds all that "bloatware" instead of having to code my own damn mouse drivers, my code is largely debugged on the fly and I can't remember the last time I lost several days just trying to format a newsletter in to columns.

    So, before saying the cycles are wasted:

    Pick an every day but semi complex task that people do now. For example: For a homework project, go on line, grab half a dozen graphics and ten blocks of text from those websites, put them all in to a stylishly laid out newsletter format. Do that on a P4, then do it on an a DOS PC from 15 years ago.

    See if matching the same quality of work doesn't take you 2^10 times as long on that old PC, assuming you can even do it at all.

    Those cycles aren't wasted. Sure, we do the same basic tasks but we do them with vastly more flexability and don't have to waste days of our lives wrestling with configs to do what we now consider simple tasks. That's where the speed is.

  22. 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.

  23. 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.
  24. 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.
  25. 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.

  26. 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.

  27. 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.

  28. 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?

  29. Re:Not Lazy. by Cee · · Score: 5, Interesting

    If you have the entire contents in memory you can be assured of not skipping if there becomes contention for the disk.

    Well, the process can still be paged out. So you don't really gain anything from doing that.

    iTunes on the mac is famous for not skipping no matter the system load, guess why?

    Decoding an mp3 file is not a heavy task, even a 486 CPU would manage that. And Winamp hasn't skipped on my computer either, regardless of load. So I don't think it has anything to do with pre-decompressing the music.

  30. 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.
  31. Re:Not Lazy. by BayBlade · · Score: 4, Interesting
    Well there are other issues as well, falling under the "ease of use" umbrella.

    It doesn't have to be a heavy task--I noticed in iTunes you can modify a playing file in all kinds of odd ways--there is no need to lock the file after its been loaded and started playing.
    WinAmp just falls down here--update a playing file's ID tags and it skips (on a modern, otherwise unfetterd system) or try to rename it outside of the application, and it fails miserably because the file is (obviously) locked.

    You may not like Apple's approach, but it works well enough for everyone else.

    --

    The key difference between a Programmer and a Senior Programmer is that one of them is Mexican.

  32. Re:Not Lazy. by NMEismyNME · · Score: 4, Informative

    Actually, I was stuck with a 486DX266 for quite a lot longer than I would've liked to have been. It was a brand name one from an era where brand name meant quality components instead of fake cache chips and was actually rather fast for what it was, but in order to decode an MP3 I had to use players which would allow me to decode in mono and in some cases only decode at 22050.

    This is of course long before I had ever used linux, and for all I know the experience of playing MP3s on a 486 in linux could be entirely different, but MP3s + 486 + Winblows = glitches, skips, crackles, pops and not a whole lot of CPU left to do anything else.

  33. User experience of performance HAS improved by harlows_monkeys · · Score: 4, Interesting
    I disagree that the user experience of performance has not improved over the last 15 years. 15 years ago, I was using a Mac II.

    When I bought a Centris 650 in the early 90's, it was noticably faster--so much faster that I brought it to work to show my boss, as I was sure he would not believe my stories of how fast it was.

    This same thing has happened to me with every generation of PCs, too...it's not just a Mac thing. I buy a new machine, and marvel at how much faster it is.

    Furthermore, I can go the other way to verify this. I still have my Centris 650 in storage, and booted it up a couple years ago. It was so slow that I could not believe that I ever found such a slow machine usable.

    What is really going on is that it doesn't take us long to get used to a fast machine, and since we normally never go back, we don't realize just how much faster things are now.