Thursday, December 25, 2014

Stupid Computers

This computer is a pretty mid-range box,  not a graphics or engineering workstation at all, but not a bare bones entry box either.  It's a 2011 Dell Inspiron 560, going on three years old.  It has a 1 Terabyte drive, out of which I'm only using about 250 Gigs.  Considering how much of my day I spend here, I thought I'd try to increase the speed and looked into my options for a faster machine - without plunking down the price equivalent of a full battle rifle.

As Borepatch was pointing out recently, Moore's Law seems to have ended in the last couple of years.  This means the amount of processing horsepower has stopped doubling every semiconductor generation (about two years), and the current processors aren't much better than when my Dell was made.  His source also pointed out processor speed hasn't really advanced in about a decade, either.  Getting clock speed above the mid-3 GHz range is going to involve solving some tough problems that relate to handling microwave signals (make no mistake: 3 GHz is microwave!), and I wouldn't be too surprised if speeds don't go up appreciably for another 10 years.

There have been improvements in computers; the two big trends have been fattening the internal pipes: bringing everything in the box up in speed, and improving power consumption.  My desktop at work is marginally faster than my home box, but most notable to me is the speed of loading programs and booting windows.  The reason for the better speed is that there's a fatter pipe between the disk drive and the rest of it.  There's a Solid State Drive in it, and I decided to go looking down that road.  Solid state drives are the same technology as in USB thumb drives; electrically erasable programmable read-only memory, or EEPROM.  Electrically erasable and rewritable while being called read-only memory may sound like an oxymoron, but it's a technology that can keep data intact without power applied, unlike the dynamic random access memory or DRAM from which your computer executes its programs.  EEPROM is slower than DRAM, but still many times faster than mechanical hard drives.

Figuring that I really wasn't using that much memory, I bought a 128 Gig SSD.  The day has been rather a disappointment, as far as the computer goes.  I ran the Samsung migration utility and it seems little more than just copying everything to the new SSD.  It didn't change any references whatsoever, so, for example, any program that had a desktop icon link to a program on the C: drive still refers to the C: drive even though that program in on the SSD and the computer thinks the SSD is a higher letter.  Everything, including Windoze, still runs from my C: drive, making the SSD a high-priced, very small capacity, additional drive.  I can't get my BIOS to recognize the old hard drive and the new solid state drive both as options to boot from, and when I do convince it to try to boot from the SSD, it can't; the migration utility must have left important stuff out.  

The battle will resume tomorrow.   If you're old enough to use a computer, you've probably seen this cartoon:
(as an aside, I never thought I'd link to a blog about "all things beauty: makeup, hair, fashion, and more!", but she's the source of this cartoon!)


  1. When I first started getting involved with SSD's, I read every review on every product at Newegg, paying special attention to the fewer "eggs"/lower ratings.

    From what I recall, all of the drive copy utilities that come with the drives aren't very good.

    The only times I've used SSD's are for new installs, never for updating an old drive.

    And if the BIOS in your PC is more than a few years old, it might not recognize an SSD, as you seem to be finding out.

    Might be time for you to just build a new PC from scratch using carefully selected parts.

  2. drjim is on to something there.....the "new secret" is better integration of separate components, meaning "U-Build-It" is the way to get what you want.

    I got out of semiconductor build about 2 decades ago, and I'm sure progress has been made since then but nothing earth shattering. We were mass producing 2 micron (and some sub 2 micron) devices, prototyping half micron, and wrestling with early X-ray lith (if you know how masking works with semiconductors you understand the difficulties with X-ray). Theoretically, the compaction limits on how much stuff you can put on a chip are: conductive lands slightly wider than one electron; the electrical connections to the chip itself, and; heat extraction. More stuff on the chip means more connections, and there's a certain minimum size for the lead/tin connections, which drives toward larger chips (physical connections (and conductive pathways) are controlled by molelecular performance, while - in theory - what goes on inside the chip can all be done at the atomic level).

    Cray was seeing this in the '80s, hence the C-shape of their big iron; one nanosecond is about 9 inches of wire, and the better processors of the day were fast enough that wire length between modules was a limiting factor. Shortening the wires reduced processor wait time.

    Some outfits moved toward putting more chips on a substrate (IBM's 3090 and ES 9000 were examples of that) but at a more practical level - regular user stuff like desktops, laptops and servers - we're getting pretty close to mechanical limits, especially with cooling. Today's ultra high end graphics stuff is almost there. There was some experimentation with using light instead of electrons because photons are faster than electrons; I have no idea where that stands today, but if there have been breakthroughs it's probably been within the DoD sphere.

    I suspect the next big push will be more hacking of the software to split functions between more processors functions, and/or more tightly connecting multiple processing boards, a la what we're seeing in the ultra high end graphics boxes (which is why professional hackers use multiple graphics cards to break passwords - you can parallel functions between fast processors to get lots and lots of flops).

    For your situation, going faster will mean something like using a SSD as "near onboard processor cache" to reduce processor wait time. That will require not-quite-co-location of the SSD and processor(s), and tuning the software to pre-load instructions from the mechanical hard drive to the SSD (or, maybe, multiple SSDs) to make them available to the processor sooner. If it hasn't begun already, I would expect that to show up in the ultra graphics stuff soon, and migrate out from there.

    1. Or just buy more ram.

      Seriously, use the SSD as your boot drive and have enough RAM that you can turn off the windows paging file.

  3. Ok Gray, I hate to call you out but you really couldn't be more wrong on just about every point you raised.

    In terms of processors, it's not so simple as saying that your 2.5 Ghz processor isn't that much slower than a new 3 Ghz processor.

    The best analogy is in auto mechanics. It would be like saying a car that red lines at 8000 rpm is faster than a car that red lines at 7000 rpm. Your missing key variables to make that call.

    In the case of the car, you're missing horsepower and gearing. In the case of the processor, you're missing IPC, or instructions per cycle. If you want to get into the nitty gritty of IPS, IPC, and C/S, this article will satisfy your inner engineer:

    Moores Law isn't dead, just instead of finding gains in frequency they are making gains in how much work each cycle is doing. Compare a typical processor included with your 560 to a new generation Intel processor:

    A lot of this has been driven by changes in manufacturing technology. Wolfdale cores (like in the core2duo in your dell) used a 45nm process (that is, the transistors are 45nm long...yes, nanometers). Haswell (the current generation from intel) uses a 22nm process. Broadwell (scheduled for release in 2015) is supposed to use a 14nm process.

    Also, I have no idea what you are talking about with processors over 3 Ghz and microwaves. Are you afraid they will emit them or get interference? Because neither is an issue. Processors with clocks over 3 ghz have been available on the open market for years. My current PC has an A10-7850k which has a stock clock if 3.7 Ghz but I have it overclocked to 4.5 ghz.

    In regards to the SSD, the problem your having is that the Samsung software was assuming the SSD would be your new C drive. If the 1TB drive is still your boot drive, then you're not going to see any performance improvement at all. The reason your work computer does so well is the SSD is the boot drive (C drive).

    Finally, you don't have to plunk down $1500 for a new computer. People build great gaming computers for $600 every day. The below build will do just anything your 650 was doing, but much better:

    In fact, it's a bit overkill for most anything but gaming, in which case it's a bit underpowered on graphics. Seriously, if you build yourself you end up getting a much better deal.

  4. Lots of interesting stuff there.

    Taylor, I'm a microwave & RF engineer so I didn't mean I was afraid of the processor radiating. What I meant is that microwave signals are hard to handle because of their greater sensitivity to parasitic reactances. Consider a stray capacitor to ground. Capacitive reactance is inversely proportional to frequency, right?, so that means capacitors you could live with at 3 GHz because they're too small to affect the signal are 3.3x the size and 1/3.3 of the reactance to ground at 10 GHz, 6.6x the size at 20 GHz and so on. Likewise, consider the inductance of a bond wire, or a metallization. Inductive reactance goes up with frequency, and a metallization becomes lossier. On PWBs, we treat everything as a transmission line. Grounding becomes critical, and I've seen signals lost in the transition from one part to another due to physically tiny imperfections in ground. I don't know that this can be done on the silicon, but chip design is absolutely not my area of expertise.

    Simple things you do all day without thinking about at around 1 GHz, like popping a signal down a via to a lower layer, become really hard at 10 or 20 GHz. Multilayer microwave printed wiring boards are still rather hard to do.

    Sure, I know that by talking about processor speed and transistor count that I'm oversimplifying. I'm not saying there are never going to be improvements, I'm saying that the rate of improvement is going to slow. As far as I can tell, quantum computing is still not ready to take off, and we have absolute size limits for components. Improvements will come from fattening the pipe (to reduce delays - like the "C" shaped Crays) more parallelism, and getting more onto the wafer. Can you imagine if you could integrate the entire 12" wafer, so that one wafer became one PC? That would be about the optimum way to produce things. Of course, one piece of dust blows away an entire wafer.

    In a short post about frustration with getting a PC to do what I want, that seemed like too much to get into.

    In the case of my SSD, I think the issue is related to the way the cloning software worked (or didn't). I can't tell you how many times in the last 30 years I've added a new hard drive and made it the new boot drive; so this shouldn't be rocket surgery. Many online comments have been that they couldn't get this to work on a Win 7 machine as a replacement disk, and that you had to install 7 onto the SSD. I would hate to have to drag out all the disks I own and reformat everything, but it looms as a possibility.

    1. Gray,

      I see the disconnect. The motherboard itself doesn't operate at the same frequency of the rest of the components on it. In many cases, the bus speed is only 100mhz. The northbridge, southbridge, and CPU then have frequently multI pliers that increase the frequency within that component to a much higher level.

      The CPU is both so small and well shielded that it really isn't an issue internally.

  5. Today all technology, not just computers is handicapped by extra's, add on's and trojan horses. You phone, your car, all app's and programs have things you don't need, didn't ask for and aren't there to make the product better for you. Rarely is it the computer speed that makes your computer seem slow. rarely is it your computers fault that you get the blue screen of death (or whatever it's modern version is called) or lockups or periods where there is no response from keyboard or mouse until the damned thing finishes whatever it is it's doing. If yu are online it is most probably advertising but can be malware (but aren't they the same thing?). One good example of things that are put there against your will and contrary to your best interests is the recent revelation that the flash light apps for smart phones all have a trojan horse in them to hack your phone. This wasn't added by some nefarious hacker or by North Korea it was added by the people who brought you the app. For 99% of people using computers your computer is so much faster then you will ever need or can ever use but your software and other things foisted on you while on-line are making your computer seem slow. Many, many years ago I copied a program out of a trade magazine to run on a Radio Shack Color Computer. It ran for 36 hours simply grinding out a complex mathematical formula. I have no doubt I could run it today on a modern computer in seconds. Our operating systems, internet and apps/programs have sufferred from the same problems our federal bureaucracy has; too much, to many adds, add-ons, extras, spying, good intentions gone bad, etc.

  6. The hard drive in my laptop failed earlier this year and the repair shop talked me into replacing it with a smaller SSD. Subjectively, it's been a tremendous performance upgrade. Windows 8.1 starts up from a cold boot in seconds and everything else seems faster (except maybe for MATLAB scripts and those times when I have twenty Chrome tabs open). YMMV.

  7. Regarding the cartoon, I remember seeing one in the mid-1980s showing a bleary-eyed, three-days-stubble guy firing a pistol through his monitor, with the caption, "Syntax error, my ass!"

  8. Regarding disk migration, I'd suggest that you look at Acronis True Image. I've migrated between dozens of mechanical HDDs to SSDs and from older SSDs to newer SSDs with it. It also makes for a very handy emergency backup - save image files of your SSD off on an external drive and restore if something goes badly.

    On the PC motherboard design subject, current motherboards are most definitely in RF territory. Current revisions of PCI Express, SATA, and DRAM layout all require careful design and modelling. Vias have to be back-drilled to eliminate the excess via length, which would otherwise form a stub, etc.

    CPU design is still moving forward, although I am not sure that Moore's law is holding. Anandtech's Bench tool shows a huge number of interesting benchmarks for processors showing how performance compares over many years. Here's an example: