HNHacker News
TopNewBestAskShowJobs

weliveindetail

39 karma · joined May 10, 2016

submissionscomments
weliveindetail··on Using the TPDE codegen back end in LLVM ORC
Please note that the post didn't mention the word benchmark a single time ;) It does a "basic performance measurement" of "our csmith example". Anyway, thanks for your notes, they are very welcome and valid.

Comparing TPDE against the default optimization level in ORC is not fair (because that is -O2 indeed), but that's what we get off-the-shelf. I tested the explicit FastISel setting and it didn't help on the LLVM side, as you said. I didn't try the command-line option though, thanks for the tip! (Especially the -pass-remarks-missed will be useful.)

And yeah, csmith doesn't really generate representative code, but again that was not stated either. I didn't dive into JITLink as it would be a whole post on its own, but yes feature-completeness prevailed over performance here as well -- seems characteristic for LLVM and isn't soo surprising :)

Last but not least, yes multi-threading isn't working as good as the post indicates. This seems related to the fix that JuliaLang did for the TaskDispatcher [1]. I will correct this in the post and see which other points can be addressed in the repo.

Looking forward for your OrcCompileLayer in TPDE!

[1] https://github.com/JuliaLang/julia/pull/58950

weliveindetail··on Unraveling a Postgres segfault that uncovered an ARM64 JIT compiler bug
RuntimeDYLD is legacy, you might want to switch Postgres to use JITLink instead: https://llvm.org/docs/JITLink.html
weliveindetail··on LLvee – LLVM AI
Scam?
weliveindetail··on I wrote a new JIT compiler for PostgreSQL
Interesting, because we store relocatable objects. And process symbols can be resolved by name if you really want. It might be yet another performance trade-off though.
weliveindetail··on I wrote a new JIT compiler for PostgreSQL
> There is one way to make the LLVM JIT compiler more usable, but I fear it’s going to take years to be implemented: being able to cache and reuse compiled queries.

Actually, it's implemented in LLVM for years :) https://github.com/llvm/llvm-project/commit/a98546ebcd2a692e...

weliveindetail··on JIT in ClickHouse
RuntimeDyld is being replaced by JITLink and most recent development happens there. When moving on to new LLVM versions, this might be something to consider: https://llvm.org/docs/JITLink.html
weliveindetail··on JITing Algorithms and Data Structures with LLVM
That really works great for people who have 100M times more lookups than inserts/deletions and less than 3K nodes :)
weliveindetail··on Fast Page Maps for JIT
Great in-detail article, thanks! In the last paragraph you state that pseudo read-write-ex­ecute maps work "on the shiny new Apple sys­tems". Do you mean M1 with macOS 12 on arm64? Did you try it on other hardware/OSs? If it only works there, any ideas why that is?
weliveindetail··on JIT-Compiling SQL Queries in PostgreSQL Using LLVM
They moved to LLVM 12 and OrcV2 https://github.com/postgres/postgres/commit/6c57f2ed16e12810...
weliveindetail··on Query-Based Compiler Architectures
> OrcJIT has a pretty decent caching layer

(Sadly) this is not correct. If you want to cache compiled code between sessions, your only option so far are handwritten object caches along the lines of this example:

https://github.com/llvm/llvm-project/blob/ae47d158a096abad43...

weliveindetail··on Iceland commemorates first glacier lost to climate change
https://rebellion.earth/
weliveindetail··on Gmail confidential mode is not secure or private
Jeopardy: An email option that encourages people to add OTHER people's phone numbers to Google's database.
weliveindetail··on Huawei case prompts F/OSS reconsideration (German)
> US companies have now been shown for what they really are: an extension of the US government.

Interesting. Isn't that exactly what the US is blaming Huawei for?

weliveindetail··on Google has lost its fight with locals to build a campus in Berlin
No big surprise given the past riots against multinational companies in the district [1]. Apparently those responsible knew about that as much as they care about people & culture here. From a local's perspective, these reactions were obvious and even reasonable. Never been in Krzbrg on a 1. of May?

[1] https://www.tagesspiegel.de/berlin/neueroeffnung-mit-steinen...

weliveindetail··on Carbon Removal Technologies
The problem with +2° is, that we will be at +5° soon after. Phase III is an irreversible chain reaction.