Hacker Newsnew | past | comments | ask | show | jobs | submit | setheron's commentslogin


> With this information, the necessity of code-models feels unecessary [sic]. Why trigger the cost for every callsite when we can do-so piecemeal as necessary with the opportunity to use profiles to guide us on which methods to migrate to thunks.

Does the linker have access to the same hotness information that the compiler uses during PGO? Well -- presumably it could, even if it doesn't now. But it would be like a heuristic with a hotness threshold? Do linkers "do" heuristics?


but for x86_64, as of right now, if only a single call needs more than 31bits you have to upgrade the whole code section to large code model.

BOLT AFAIU is more about cache locality of putting hot code near each other and not really breaking the 2GiB barrier.


Why? Can't the linker or post-link optimizer reduce all near calls, leaving the more complicated mov with immediate form only where required?

Once the compiler has generated a 32-bit relative jump with an R_X86_64_PLT32 relocation, it’s too late. (A bit surprising for it to be a PLT relocation, but it does make some sense upon reflection, and the linker turns it into a direct call if you’re statically linking.) I think only RISC-V was brave enough to allow potentially size-changing linker relaxation, and incidentally they screwed it up (the bug tracker says “too late to change”, which brings me great sadness given we’re talking about a new platform).

On x86-64 it would probably be easier to point the relative call to a synthesized trampoline that does a 64-bit one, but it seems nobody has bothered thus far. You have to admit that sounds pretty painful.


the front-end services to be "fast" AFAIK probably include nearly all the services you need to avoid hops -- so you can't really shake that much away.

In many ways that is what the PLT is also.

This is what my next post will explore. I ran into some issues with the GOT that I'll have to explore solutions for.

I'm writing this for myself mostly. The whole idea for code models when you have thunks feels unnecessary.


While at tailscale you built sketch.dev only to actually build this product ? Love it. Ultimate yak shave. Kind of how like Antithesis was the product inside foundationdb.

In 2010 I remember people being very proficient with this at Amazon.

I really enjoying the toolset to query logs etc...

Good memories.


Zug Zug


Is the other character a fox because that's Meta mascot too?


The original video is older than that.


Red panda not fox


There was also Nixery paving the way


I agree that the work they put out is A+ Whenever I see content produced by jart, it's always amazing.


sorry, I'm out of the loop. is this thread glazing a celebrity member commenting on an announcement from his own team to create hype?

what the fuck is wrong with this website


it sounds like you are


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: