Slashdot Mirror


Computer Program Fixes Old Code Faster Than Expert Engineers

An anonymous reader writes: Less than two weeks after one group of MIT researchers unveiled a system capable of repairing software bugs automatically, a different group has demonstrated another system called Helium, which "revamps and fine-tunes code without ever needing the original source, in a matter of hours or even minutes." The process works like this: "The team started with a simple building block of programming that's nevertheless extremely difficult to analyze: binary code that has been stripped of debug symbols, which represents the only piece of code that is available for proprietary software such as Photoshop. ... With Helium, the researchers are able to lift these kernels from a stripped binary and restructure them as high-level representations that are readable in Halide, a CSAIL-designed programming language geared towards image-processing. ... From there, the Helium system then replaces the original bit-rotted components with the re-optimized ones. The net result: Helium can improve the performance of certain Photoshop filters by 75 percent, and the performance of less optimized programs such as Microsoft Windows' IrfanView by 400 to 500 percent." Their full academic paper (PDF) is available online.

4 of 167 comments (clear)

  1. Re:Nirvana?! by JMJimmy · · Score: 5, Insightful

    Unemployment is a sort of nirvana.

    I just want to know why when they improve the speed of something by 75-500% it's considered research but when I do it it's considered a waste of time? Companies just don't appreciate efficiency.

  2. Re:Improving the performance by more than 100% by randm.ca · · Score: 4, Insightful
    Am I having an English fail, or are they having a Math fail?

    Mr. Smith's salary has increased by 350% over the past 20 years. If his original salary was $22,000 per year, what is his current salary?
    First change 350% to a decimal: 350% = 3.5
    Next, multiply the original salary by the decimal number: (22000) x (3.5) = 77000
    After 20 years Mr. Smith's salary has increased from $22,000 to $77,000 per year.

    Didn't his salary increase by $77,000, from $22,000 to $99,000?

    To simplify it, if his salary had increased by 100% would that mean he was now making $22,000 (their logic) or $44,000 (my logic)?

  3. Re:Um, because this is a computer doing the work by Anonymous Coward · · Score: 2, Insightful

    It's practically free. Run the program, wait a bit and your done. A child or a well trained monkey could do it. You OTOH, cost dollars per hour. Seriously, is anyone else scared shirtless that something so abstract and complex as this can be automated? Is any job safe (outside of being a member of the ruling class)?

    Scared shirtless? Only if you're a uneducated loser. Compiler optimizations are just as complex as this (in fact, this is more or less the same thing, only it's being done after the fact). It has no bearing on the ability to create new software to meet a need.

  4. Re:Um, because this is a computer doing the work by Anonymous Coward · · Score: 5, Insightful

    If you look at how their system works, you can see that it is limited to certain types of algorithm, and even then it gives absolutely zero correctness guarantees. What they want to do is abstract and complex. What they're actually doing can be described in a 20-page paper. Your job is safe for right now. Strong AI still doesn't exist.

    Anyway, even if they automate some parts of your job, the part of your job that isn't automated will expand to fill that time. I'm not sure if there's a real law for that but it's a heuristic observation shared by many. Partial automation doesn't lead to declining workforces, it leads to expanded capability and larger workloads than could be imagined before. Even if they perfected this program it still couldn't write a new kernel, let alone a new application.