News for hackers. Stuff that matters.
Re:A Simple Graph-Based Intermediate Representation (1995) [... by halayli on Monday February 03, 2020 @12:40PM (#22226617)
https://mlir.llvm.org/

Take a look at mlir. It's a very novel and powerful abstraction that can be used and applied in very creative ways to solve problems that require translation from source syntax to some target(s) (machine, api, a mix).

tensorflow is the biggest user of mlir so far. The project recently moved to llvm repo to be used by other llvm sub projects and because it's the natural place for it to live.

for example, c/c++ -> mlir -> llvm ir can allow many optimizations that cannot be possibly done at llvm ir level given that it would have lost a lot of context from its original source(the language syntax).

Re:A Simple Graph-Based Intermediate Representation (1995) [... by pizlonator on Monday February 03, 2020 @01:58PM (#22227599)
Meh. Seems over engineered and too general. Maybe it’ll be cool for ML. Probably best left ignored for anything else.

The whole thing about using it for C++ optimizations... I’ll believe it when I see a statistically significant speedup. Until then it’s vapor.

Re:A Simple Graph-Based Intermediate Representation (1995) [... by halayli on Monday February 03, 2020 @03:39PM (#22228749)
you don't need to limit yourself to c/c++. It can be used for various other reasons.

As for c/c++ specifically, you can optimize much better and safer if you have 1 or more intermediate dialects prior to llvm's IR. You don't need to believe it. This is compiler 101.

Re:A Simple Graph-Based Intermediate Representation (1995) [... by pizlonator on Monday February 03, 2020 @04:46PM (#22229539)
Of course you can optimize better if you have the right intermediate dialects.

I’m saying that MLIR is unproven for that purpose outside of the ML space.