Announcement

Collapse
No announcement yet.

Facebook Is Aiming To Make Compilers Faster Using Machine Learning With CompilerGym

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • coder
    replied
    Originally posted by bregma View Post
    The order of optimization passes is strictly dependent. Changing them could possibly result in no optimization or could result in a semantic change in the generated program. The first is harmless, the second is catastrophic.
    Is there a well-understood and formalizable set of constraints that would prevent the second? If so, then it seems the AI-driven compiler tunings could be prevented from generating invalid code (assuming no internal bugs in the compiler... hey, I can dream!)

    Leave a comment:


  • coder
    replied
    Originally posted by ddriver View Post
    Companies like that do not make open source tools as a service to humanity, they do it because the FOSS model mandates it.
    Facebook, as with a lot of these companies, gives away lots of tools & libraries that are standalone, where there's no pre-existing license or anything else forcing their hand. I'm not taking a side; just pointing out a fact.

    Originally posted by ddriver View Post
    So the notion that they'd contribute to FOSS because that's what the "good guys" are doing is foolish on its face, a few useful tools doesn't come even close to redeeming them.
    Who is even making that argument, here? I assume the reasons they voluntarily release FOSS are: due to pressure by their own developers, to attract more developers, and in hopes of getting free testing & bugfixes from the community. If they can also win some good PR, that just icing on the cake.

    Leave a comment:


  • coder
    replied
    Originally posted by spanky View Post
    So the existence of Linux in it's current state justifies corporate misdeeds?
    No, they aren't additive. They're more orthogonal, really. I just look at their technical contributions separately from whatever else the company is doing.

    Leave a comment:


  • coder
    replied
    Originally posted by commodore256 View Post
    Otherwise, when you trust magic that you don't know how it works, you get results like this.
    That's not cheating. It did what they asked it to. The problem was in their formulation of the problem and how they trained it.

    The same problem exists with people and even corporations. If you get their incentive structure wrong, you will be in for some nasty surprises.

    Leave a comment:


  • Danielsan
    replied
    After ruined the society Feisbuk wants also ruining the informatics, oh my...

    Leave a comment:


  • cesarcafe
    replied
    Originally posted by ddriver View Post
    Great, maybe they can use AI to figure how to not be such a sh1tty company.
    Actually, they are the result of combining AI with the procrastination of Zuckerberg when he was at college. You mix these two things and you get... that.

    This effort would be welcome if they used a compiler 100% designed as machine learning, for building all the software in their servers (it would be greatly welcome because of course it would fail -just remember your last conversation with a machine learning chatbot, and imagine the kind of object code you could get- ...and then we would get rid of FB and we could partially recover from the harm caused to humankind).

    Leave a comment:


  • Ironmask
    replied
    Originally posted by ddriver View Post

    Seeing how mentally deficient you are, made evident by your complete missing of the point, you are probably not a competent authority on who is sane and who isn't. But then again, if that's the best argument you can present, you have my sincere condolences.

    What I said is I don't see that as a good deed, and that I don't give any credit to corporate entities that claim the work of their wage slaves as their own. I will go and use whatever serves my needs, and I won't go about tonguing corporate sphincters in gratitude. I respect and appreciate the good work done by engineers, and still spit on the lousy companies that get to own their contributions.

    Companies like that do not make open source tools as a service to humanity, they do it because the FOSS model mandates it. Only FOSS zealots are capable of forcing themselves into the stupidity of seeing it otherwise. It is quite ridiculous that those companies will ever do anything like that for the sake of doing good. Those most contributing to FOSS companies also happen to be the most universally despised by society, and almost all of that is for good reasons. So the notion that they'd contribute to FOSS because that's what the "good guys" are doing is foolish on its face, a few useful tools doesn't come even close to redeeming them.
    I'm astonished you still think if you spew the right words at me I'll start listening to you and go live in the woods away from all those evil meanie corporations you don't like.

    No, the reason corporations contribute to open source is because it's free work. It's not about trying to "look good". I don't know how you can't understand that, unless you just don't understand basic economics and business practice, which I assume you don't, since you seem to believe corporations are cartoon villains, and not just a bunch of stupid people trying to get by. Not every single little thing people you don't like do is some sort of 4D chess move in some grand scheme to control the world, they're literally just doing whatever they think is useful to save resources.

    Leave a comment:


  • bregma
    replied
    Originally posted by Markopolo View Post
    Re AI for compilers: this is about applying machine learning to determine better optimization pipelines via reinforcement learnings, not using ai to guess at instructions to output.

    I think this would work great for using ai to select which opt passes and what order to run them based on measured SPEC perf. Or tune another against Linux kernel compiles per hour or per watt. Or PTS runs per day
    Let me start by establishing that I work on compiler infrastructure to earn my daily bread. I am familiar with GCC optimization passes at an intimate level that not too many others on the planet exceed. No optimization pass contains dark magic: they're more like algebraic operations. Like in algebra, the order of operations counts.

    The order of optimization passes is strictly dependent. Changing them could possibly result in no optimization or could result in a semantic change in the generated program. The first is harmless, the second is catastrophic. Optimization passes do result in different instructions chosen. Letting an AI guess the order of optimization passes can and will probably make the behaviour of the resulting program unpredictable. It is possible to prove the correctness of the output of the compiler as long as the order of the optimization passes (and their tuning parameters) is known. The same can not apply to the AI-generated combinatorial output, unless the AI itself can be made to understand the semantics of the program it is compiling so it can predict the correct output. It needs to be able to predict whether any arbitrary input will generate a program that will halt, for example.

    Leave a comment:


  • ddriver
    replied
    Originally posted by Ironmask View Post
    That's a great essay. Very Industrialized Society esque. You could shorten it by just saying you're insane and avoid practical tools for deluded reasons. I'm going to continue doing work, regardless if facebook made my tools or if the use the word "master" or whatever other reasons people tell me I should stop working and listen to their insane rambling.
    Seeing how mentally deficient you are, made evident by your complete missing of the point, you are probably not a competent authority on who is sane and who isn't. But then again, if that's the best argument you can present, you have my sincere condolences.

    What I said is I don't see that as a good deed, and that I don't give any credit to corporate entities that claim the work of their wage slaves as their own. I will go and use whatever serves my needs, and I won't go about tonguing corporate sphincters in gratitude. I respect and appreciate the good work done by engineers, and still spit on the lousy companies that get to own their contributions.

    Companies like that do not make open source tools as a service to humanity, they do it because the FOSS model mandates it. Only FOSS zealots are capable of forcing themselves into the stupidity of seeing it otherwise. It is quite ridiculous that those companies will ever do anything like that for the sake of doing good. Those most contributing to FOSS companies also happen to be the most universally despised by society, and almost all of that is for good reasons. So the notion that they'd contribute to FOSS because that's what the "good guys" are doing is foolish on its face, a few useful tools doesn't come even close to redeeming them.
    Last edited by ddriver; 04 October 2021, 01:45 AM.

    Leave a comment:


  • arQon
    replied
    Yeah, no. Every piece of bottom-tier code churned out by failed EE grads that e.g. uses a linked list for a 1M-element pile of data is not going to magically stop sucking just because you added buzzwords to a compiler. Especially when that code is 18 layers deep in some newbtastic tower of JS frameworks.

    Shit code is shit, the end. The only "optimization" that will EVER actually fix problems like these is "have a competent developer rewrite it".

    Leave a comment:

Working...
X