HackerTrans
TopNewTrendsCommentsPastAskShowJobs

eyalitki

no profile record

Submissions

MRC Protocol: Supercomputer networking to accelerate large scale AI training

openai.com
5 points·by eyalitki·2개월 전·1 comments

Copy Fail: 732 Bytes to Root on Every Major Linux Distribution

xint.io
25 points·by eyalitki·2개월 전·3 comments

Sandia Supercomputer Built on NextSilicon's Maverick-2 Accelerators

hpcwire.com
2 points·by eyalitki·7개월 전·0 comments

Static Bundle Object: Modernizing Static Linking

medium.com
4 points·by eyalitki·9개월 전·2 comments

comments

eyalitki
·2개월 전·discuss
OpenAI has released the specifications of the Multipath Reliable Connection (MRC) protocol, and they are now publicly available as part of Open Compute Project (OCP) foundation.

MRC, which is already being used by OAI in production for training their models, aims to provide robust network utilization, allowing improved bandwidth while also efficiently handling network failures automatically at routing level.
eyalitki
·2개월 전·discuss
Dup of: https://news.ycombinator.com/item?id=47952181
eyalitki
·2개월 전·discuss
The presented LPE vulnerability was gradually introduced to the Linux Kernel through refactors and optimizations, each commit making sense on its own. The vulnerability itself was exploitable since 2017 (!) and also doubles as a container escape.
eyalitki
·2개월 전·discuss
The employer doesn't "allow" them to take "time off" to fight as part of the IDF as reservists. This is the law in Israel, and has nothing to do with any employer whatsoever. During this time, Israel's National Insurance is reimbursing the employer for the salary of absent employees.
eyalitki
·9개월 전·discuss
OK, now I understood the gap. There is a technical limitation for relocation resolution when the relocation is against a different section. This means that for function sections we de-facto have no relocation finalization, only conversion of symbols from "global" to "local".

Hence, for a "file-sections" flag, we would only resolve relocations within a given file, but will leave intact relocations that cross the file boundary. Accordingly, this means that "function-sections" is identical to generating a static bundle object per original object file, and bundling them all together inside a .a archive.
eyalitki
·9개월 전·discuss
Correct me if i'm wrong, but wouldn't "file-sections" be identical to generating a static bundle object per original object file, and wrapping them all inside a .a archive?
eyalitki
·9개월 전·discuss
Thanks, appreciate your feedback. Crossing my fingers that my PR for GNU ld will go as planned.
eyalitki
·9개월 전·discuss
> Regarding --whole-archive, is it correct that it would be the default and you could opt-out of it with the function-sections/gc-sections combination?

This is the current intention, as implemented in the up-to-date draft: https://github.com/bminor/binutils-gdb/commit/99aef6ba8db670.... Please note however that one would no longer need to specify the "--whole-archive" flag, hence resolving issues with potential duplicate placement of the static library in the linker's CLI.

> Are there cases in which function-sections doesn't work (GCs too much) but a hypothetical "file-sections" does? For example cases in which the code relies on side effects of global constructors, but those would be left out by function-sections?

Good question. In the first article in this series I discussed issues with global constructors and was pretty much waved away, being told that code should not be written this way. One of the members of the ELF committee did suggest an alternative for handling it yet pretty much mentioned that there are still missing pieces that require handling for their proposal to work (https://groups.google.com/g/generic-abi/c/sT25-xfX9yc/m/NRo0...).
eyalitki
·9개월 전·discuss
There is nothing magical in resolving the local relocations. It is just that current static libraries (static archives of plain .o files) are produced directly using "ar" and don't even go through the linker... The changes to the linker so to apply the relocation finalization are less than 50 lines of code on top of the existing "ld -r" that creates a relocatable object (which despite its name, does not handle relocations).

The key point in the proposal for a static-bundle-object is to properly handle static libraries as linked objects, instead of as a bunch of plain .o files.
eyalitki
·9개월 전·discuss
OP here, it was also my opinion that the handling of static libraries should significantly be improved, and ld should have a "--static-lib" flag to properly handle it. Sadly, the ELF committee prefers a more subtle approach, hence even the proposed build of the static bundle object is done on top of the existing "ld -r", and the output is still wrapped inside a .a archive for compatibility.

I hope that once integrated to linkers the adoption of this new format will help convince that it deserves significantly better tooling.
eyalitki
·9개월 전·discuss
The article is a follow up for an earlier thread of mine that was published here a few months ago: https://news.ycombinator.com/item?id=44613791.

While the previous article presented the problem domain (multiple issues with using .a archives of plain object-code files for static libraries), this article presents the technical white paper that formally proposes an alternative format (accompanied by a POC on top of GNU's ld), as well as the gist of the ELF committee's discussion about the proposal.

Given the decision of the ELF committee, the format will be judged by adoption in practice and the feedback it receives from users. In other words, your opinion is more than welcome.
eyalitki
·10개월 전·discuss
In the world we have more than just bugs. We also have features, and refactoring and whatnot. Prioritization should be done across all tasks, so a bug could be "medium" but the team might not even work on bugs this week unless they are a show stopper.

Isn't this policy overruling the judgement of the team/product lead and focuses too much "only" on the bugs?
eyalitki
·10개월 전·discuss
It would be interesting to know how many of bugs are triaged and declared as "won't fix" in order to comply with the zero bugs policy.

Aside from that, while it might seem like an ideal engineering culture, I find it a bit extreme. The harsh SLA leaves little room for prioritization. Sometime the team is in fact working on a tough integration deadline, and medium-level bugs can wait for it to finish.

Going over my current list of bugs, some are minor and can wait to the last mile of the release and some will be resolved by new features we have in planning. I do aim to minimize the list of bugs and even my email inbox is based on a "zero inbox" policy. Still "zero" in this case is some small epsilon that is under control, and will go down to zero if no new bugs/emails arrive in the meantime. Call it a sliding window of epsilon width, but it almost never really reaches zero.