Slashdot Mirror


Using AI With GCC to Speed Up Mobile Design

Atlasite writes "The WSJ is reporting on a EU project called Milepost aimed at integrating AI inside GCC. The team partners, which include include IBM, the University of Edinburgh and the French research institute, INRIA, announced their preliminary results at the recent GCC Summit, being able to increase the performance of GCC by 10% in just one month's work. GCC Summit paper is provided [PDF]."

8 of 173 comments (clear)

  1. Perhaps the way to other things besides compilers? by AnalogyShark · · Score: 3, Interesting

    "Milepost is realizing the vision of customized hardware with tailor fit software" This particular part made me think of a day when every program comes with a redesign.exe. Simply click the button, and it scans every piece of hardware on your computer, and then rewrites every optimization in it to perfectly fit your computer. Programs that streamline to your hardware, maybe even change the OS's they work under. It's written for Windows, you're running OSX? No problem, it'll rewrite itself as an OSX program. Though, that's probably still decades off. But AI seems to me to be the way to ultimate compatibility.

  2. Iterative Compiling. Is anyone else disturbed?? by Gat0r30y · · Score: 1, Interesting
    Iterative compiling sounds like a bad idea - and FTFA -

    The main barrier to its wider use is the currently excessive compilation and execution time needed in order to optimize each program

    I suppose allowing AI to control some of the compiler options isn't really a bad idea, but implementing it by iteratively compiling a program seems silly to me. From the article i get the impression that it will basically adapt the compiler to one set of hardware (wherever it is run on) but that it will not adaptively compile new programs in novel ways, it simply remembers the set of compiler options that works best for your hardware. Interesting, but I don't see specific hardware differences and compiler options as the real bottleneck in compile time.

    --
    Prediction: The real iPhone killer is going to be sex robots from Japan. Think about it.
  3. Learning by JakeD409 · · Score: 5, Interesting

    As I understood it, a fair bit of compiler optimization is already categorized as AI. The summary should probably point out that the AI implemented here is learning AI, which is far more meaningful.

  4. How far can we take AI? by Daryen · · Score: 2, Interesting
    Very Interesting, I wonder how far we could take AI integrated into programs?

    What I would really like to see is more AI used to help users in a variety of fields both within the program workings itself (computer side), as well as on the design of the actual content (user side).

    We already have things like predictive texting, spellcheck, grammar check, and debuggers that attempt to aid in the creation process, but how far could this be developed? After all, in most computer-related work outside of multimedia it is the user not the computer that is slowing things down.

    Of course it could always end up going badly, imagine if Clippy attempted to help with EVERYTHING!

    Clippy: "I see you're writing a program, would you like help including your headers?"

    Ugh!

  5. Re:Perhaps the way to other things besides compile by LWATCDR · · Score: 5, Interesting

    Actually IBM did this a few decades ago.
    The Model38/AS400/iSeries are all compatible but very different machines internally.
    IBM came up with an "idea" instruction set that no CPU used. When you do the initial program load "install" on one of those machines it compiles the ideal instruction set into the actual instruction set for that PC.
    That allowed IBM to move from old bipolar cpus to the Power RISC cpus with 100% compatibility.
    There isn't any reason why you couldn't do the same with Linux or Windows today.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  6. Re:Perhaps the way to other things besides compile by wonkavader · · Score: 4, Interesting

    This is interesting. Note that the industry (or parts of it, anyhow) is salivating about a move in precisely the opposite direction. VMware in specific and virtualization in general promises software manufacturers the ability to ship VMs with their software on it. Allowing them to write for only ONE, non-existent machine.

    If this tech you're thinking about came to pass, the pendulum would have to swing mighty far back.

  7. Re:Just optimisation? by Anonymous Coward · · Score: 1, Interesting

    I always hate when that stupid Halting Problem appears in discussions of AI.
    Does it matter if the program runs forever? Not really. In fact, if it runs longer than you could care about, then all the better.
    Does it matter if it runs for a set of inputs that you actually care about? Yes
    If it runs for a set of inputs you expect to be entered, then that is all you care about.

    Nobody said the process needs to be perfect, it never is, which is why that theory is stupid. (it is AI, I isn't perfect in the first place, so neither should AI!)
    Send an input to program, is it still running? Nope? Then it failed, try again.

  8. Re:Just optimisation? by Anonymous Coward · · Score: 1, Interesting

    As an example of this, let us think of a human.
    Ah yes, the human, a fantastic piece of meat.

    Woops, looks like it just jumped off a building, humans weren't designed for that!
    SPLAT. Program terminated.

    That is a bad input, which can be tested for by an external entity, which is the compiler which compiled the "human".

    Now let us try again, add some wings.
    SPLAT, lets make them longer.
    SPLAT, lets make the human smaller.
    Oh, OH, oh no.. SPLAT
    And so on, this can be done as many times as possible until something works for a set period. Then you don't care, just like some life doesn't particularly care for the survival of offspring.

    Ah, i want Spore....