Announcement

Collapse
No announcement yet.

PostgreSQL Begins Landing LLVM JIT Support For Faster Performance

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

  • jacob
    replied
    Originally posted by clockley1 View Post
    One has to wonder how much further the FOSS ecosystem would have progressed if GCC had a modular codebase and a different licence. While GCC may emit better code no one else can use the technology.
    To the contrary. Everyone can use the technology, but has to abide by the licence. I don't see any problem with that. The FOSS community owes nothing to proprietary software developers and doesn't have to change its licences and practices to give them a free ride.

    Leave a comment:


  • oiaohm
    replied
    Originally posted by wizard69 View Post
    The GPL is an absolutely evil license especially in the context of software developed by large groups of people. One of the good things that the LLVM/Clang community did was to force people responsible for GCC to improve GCC.
    https://en.wikipedia.org/wiki/List_o...rs#C_compilers

    History is not on your side. Many C and C++ compilers have come and gone. The open source compilers majority that live past 10 years old have 1 thing in common they are are LGPL/GPL. A project like a Compiler does not stay alive if people don't keep adding new code to it to support new platforms and new hardware. So GPL restrictive license is not a hindrance.


    Originally posted by wizard69 View Post
    GCC doesn't universally emit better code. In any event CLang most certainly stimulated many improvements to GCC especially in code generation and error reporting. Friendly competition is a good thing and it is my understanding that the two teams are on good terms. The reality is LLVM/CLang has been a positive impact on GCC.
    Its not 100 percent friendly competition. There have been a few complaints on the LLVM side about GCC taking code and over-licensing with GPLv3. You also look closer at what you said stimulated. You might be surprised to find how many of those GCC improves contain copied code sections from LLVM, At this point it should come clear that this is not exactly friendly.

    Originally posted by wizard69 View Post
    As for the issue of using GCC in other projects one should not assume that an advantage of LLVM is something GCC needs. We don't need two look a like compilers in this world. Rather the community is much better off having technology explored on two different tracks. This can be likened to new computer languages like D, Swift, Rust and others trying to become the ideal language for future development. In the end it is all good.
    GCC should be presume to have advantage over LLVM for code generation. Because anything LLVM developers does great GCC developers can redo in their code base no issues including copying blocks of code. But LLVM developers don't have the same advantage. Of course Gcc should not fear LLVM because it has a one way advantage. If gcc got too far behind LLVM they could rebase on LLVM and go forwards. If LLVM gets too far behind GCC they cannot do that.

    Leave a comment:


  • pal666
    replied
    Originally posted by paulpach View Post
    * GCC switched to C++ to make it more appealing to developers, the discussion was prompted by llvm success
    that discussion was prompted by author of c++ linker(gold), llvm was only one of bullet points

    competition is always good, but original post was a little more black and white

    Leave a comment:


  • paulpach
    replied
    Originally posted by pal666 View Post
    what are you trying to say, that gcc was not improving before clang(i.e. it existed in unchanging state since 1989), or that it would stop improving if clang wouldn't come out and you checked this is true by travelling to parallel universe?
    That is all true, gcc has been improving long before llvm existed.

    I think his point is that there are a few things gcc has changed recently to compete a little better with llvm. For example:
    * GCC switched to C++ to make it more appealing to developers, the discussion was prompted by llvm success
    * GCC explicitly resisted modularizing the compiler for a long time due to concerns about it being used in proprietary software. They have changed direction and there has been a lot of work done to modularize GCC.
    * GCC has improved some error messages to match llvm

    The other way is also true. llvm has made changes specifically to compete with gcc. There is some level of friendly competition going on between these 2 projects, they take ideas from each other and both of them are better for it.

    Leave a comment:


  • starshipeleven
    replied
    Originally posted by wizard69 View Post
    The GPL is an absolutely evil license especially in the context of software developed by large groups of people.
    Nice personal opinion you have there.

    Leave a comment:


  • Delgarde
    replied
    Originally posted by uid313 View Post
    The more I learn about SQL the more I hate it. I really wish it was better standardized.

    When I imagine how bad SQL it is, then I find out it is even worse.
    Yep. My pet peeve is that unlike every other RDBMS I've used, Oracle doesn't support smallint/integer types (i.e 16-bit and 32-bit integers) - the closest match is to use a number(5) or number(10) instead, but that's a pain because it results in a mismatch between the database type and the variables used in applications which interface with it. And so a field that started out as a 32-bit integer in the code becomes a 10-digit number in the database, and then some other coder decides that because a 10-digit number won't fit into a 32-bit integer, he needs to use 64-bit integers to read the data.

    Leave a comment:


  • oiaohm
    replied
    Originally posted by bpetty View Post
    From a DBA standpoint PostgreSQL was/is lacking in some fundamental areas in terms of database recovery and the like.
    Database recovery is a little more complex than that.
    https://www.2ndquadrant.com/en/resources/barman/ postgresql with barman is very dependable. Barman does not extend postgresql just uses the built in functionality. Even recovery from databases damaged due to bad harddrive postgresql is good at.

    There is one universal problem the core engine of postgresql has all the support for great database recovery just no good GUI and times no good TUI to use it included in the default package so people incorrectly presume postgresql is missing this.

    Originally posted by bpetty View Post
    From an implementation perspective, they went the old Oracle route of how they spawn off threads per connection. I also wish they were designed more like MySQL, being able to plugin different database types into the same framework. Seems pretty slick. If Oracle didn't keep its thumb on MySQL, making sure it stays a web-site only database, it could have a real chance too.
    https://wiki.postgresql.org/wiki/Foreign_data_wrappers The foreign data wrappers covers a lot of usage cases its part of the reason why plugin storage has drifted around as a possible idea without development force. Fairly much everything that can be done with the foreign data wrappers is.


    Yes Pluggable storage was voted for at the last postgresql developer meeting. Of course that leave Alexander Korotkov with the hard job of how it will be implemented. So if you have any particular requirements speak up now to Alexander or risk being stuck with implementation that does not suite.

    Originally posted by bpetty View Post
    There was a company project posted on Phoronix a year or two ago that combined PostgreSQL with OpenCL or something to massively parallelize some of the calculation work within the engine. I wish they would have contributed that, but I realize people need to make a living.
    PG-Strom - Master development repository. Contribute to heterodb/pg-strom development by creating an account on GitHub.

    They have ended up implementing using CUDA so Nvidia dependant for now. But it shows GPU acceleration is down right possible.

    Merging mainline is a very hard process with Postgresql.

    Leave a comment:


  • pal666
    replied
    Originally posted by wizard69 View Post
    The GPL is an absolutely evil license especially in the context of software developed by large groups of people.
    it is only evil for people who want to steal gpled code. for everyone else it is not evil

    Leave a comment:


  • pal666
    replied
    Originally posted by wizard69 View Post
    One of the good things that the LLVM/Clang community did was to force people responsible for GCC to improve GCC.
    what are you trying to say, that gcc was not improving before clang(i.e. it existed in unchanging state since 1989), or that it would stop improving if clang wouldn't come out and you checked this is true by travelling to parallel universe?

    Leave a comment:


  • bpetty
    replied
    I am totally sold on PostgreSQL. I think it is the best open source database out there. Its locking implementation is better than MySQL's so it can be used in larger enterprise software without fear of dead-locking all over itself. It is also the option everyone I know of goes for that uses RDB in the cloud since SQL Server is too costly.

    As for non standard JSON, PostreSQL had JSON support long before SQL Server... and I think it is implemented much, much better.

    From a DBA standpoint PostgreSQL was/is lacking in some fundamental areas in terms of database recovery and the like.
    From an implementation perspective, they went the old Oracle route of how they spawn off threads per connection. I also wish they were designed more like MySQL, being able to plugin different database types into the same framework. Seems pretty slick. If Oracle didn't keep its thumb on MySQL, making sure it stays a web-site only database, it could have a real chance too.

    There was a company project posted on Phoronix a year or two ago that combined PostgreSQL with OpenCL or something to massively parallelize some of the calculation work within the engine. I wish they would have contributed that, but I realize people need to make a living.

    Leave a comment:

Working...
X