Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
javierhonduco
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
10 ms
·
31.
▲
by
javierhonduco
3y ago
Once it’s loaded in memory, if Kernel Samepage Merging is enabled it might not be as bad, but would love to hear of somebody has any thoughts https://docs.kernel.org/admin-guide/mm/ksm.html
32.
▲
by
javierhonduco
3y ago
Haven’t checked the source code yet, wondering if profiling of code without frame pointes is supported. Curious on their approach.
33.
▲
by
javierhonduco
3y ago
There’s Kvrocks. It uses the Redis protocol and it’s built on RocksDB https://github.com/apache/kvrocks
34.
▲
by
javierhonduco
3y ago
FWIW, I never advocated for not explicitly calling Close(). Brought up the finalizer in File, because it seems to have performance implications and it’s called for every file handle. From the docs ( https://pkg.go.dev/os#File
35.
▲
by
javierhonduco
3y ago
Curious what the overhead of dealing with files in Go would be if finalisers were cheaper / not in use. Sorry there’s no link to the source, AFK right now, but files opened with os.Open will be automatically closed once all its referen
36.
▲
DIY pprof profiles using Go
(polarsignals.com)
3 points
by
javierhonduco
3y ago
|
0 comments
37.
▲
Vmdiff: a tool to find everything that changes on your computer
(community.atlassian.com)
4 points
by
javierhonduco
4y ago
|
0 comments
38.
▲
by
javierhonduco
4y ago
Thanks for sharing! I work in this space too (profilers, debuggers, etc) and have seen a good amount of interesting edge cases. Are there any interesting bugs and edge cases that you could share? Always good to hear good war stories from p
39.
▲
by
javierhonduco
4y ago
ptrace is not used in this project, is it possible you meant some other system call or project?
40.
▲
by
javierhonduco
4y ago
Exactly this. I should have mentioned it in the post. Might amend it. Would be interesting to compare the chances of race conditions with inotify vs BPF for this contrived use-case.
41.
▲
by
javierhonduco
4y ago
Author here! As some comments mention, there are other approaches that could make more sense. The aim of this proof-of-concept was to showcase how BPF enables the kernel to be programmable. Many behaviours can be retrofitted without having
42.
▲
by
javierhonduco
4y ago
They are levels in the management track. M: Manager D: Director The rough matching of levels is: M0, E5 or senior engineer, M1 to E6 or staff engineer, M2 for manager of managers, etc. Director is the level above M2.
43.
▲
by
javierhonduco
4y ago
This is a very good point. Thanks for the context on how ORC does it, I was not familiar with how it evolved. In our case this is not an issue yet. We split up the unwind tables in chunks of up to ~1MB so we typically have in very few L2 ca
44.
▲
by
javierhonduco
4y ago
As surprising as it seems, it does! My colleague and I spoke about this in our project in FOSDEM https://fosdem.org/2023/schedule/event/walking_stack_without... . Let us know if you have any questions or feedb
45.
▲
by
javierhonduco
4y ago
This would be ideal. There's some great work by folks at Oracle in this space: SFrame ( https://www.phoronix.com/news/GNU-Binutils-SFrame ) née ctf_frame that I hope will be integrated in the kernel. As this will ta
46.
▲
by
javierhonduco
4y ago
The pervasive lack of frame pointers is the reason why we've developed a custom format derived from DWARF unwind information thanks to some insights: DWARF unwind information is incredibly flexible, it supports many architecture and al
47.
▲
by
javierhonduco
4y ago
Ah! Glad you liked my talk :)
48.
▲
by
javierhonduco
4y ago
7 years of cgroup v2: the future of Linux resource control ( https://fosdem.org/2023/schedule/event/container_cgroup_v2/ ) was particularly enjoyable
49.
▲
by
javierhonduco
4y ago
That would be great! There’s a precedent in Ubuntu, in case it could help to push this forwards `libc6-prof`.
50.
▲
by
javierhonduco
4y ago
I’m looking forward to this change. Ensuring fast, reliable stack traces when debugging under pressure or tracing complex systems is invaluable. Once you try it it’s hard to go back. It’ll take some years until frame pointers become more ma
51.
▲
by
javierhonduco
4y ago
I’m not sure there’s any public write-up on this, sorry
52.
▲
by
javierhonduco
4y ago
Yes! This is something they Facebook’s version of Mercurial implements. It’s called Commit Cloud [0] - [0] https://engineering.fb.com/2022/11/15/open-source/sapling-so...
53.
▲
by
javierhonduco
4y ago
The script was running on a subset of the production machines, which still accounted for a rather large number. The message bus eventually transported bpftrace's output to the database. The roll out was done in phases to ensure that th
54.
▲
by
javierhonduco
4y ago
At my previous job, I wrote a simple bpftrace script [1] to track Python2 invocations. The output of this program was sent to a message bus and eventually stored in a columnar database for exploration. While Python2 got removed from the bas
55.
▲
Design Decisions of a Continuous Profiler
(polarsignals.com)
5 points
by
javierhonduco
4y ago
|
0 comments
56.
▲
by
javierhonduco
4y ago
That's right! There's no "traditional" loops as programs have to be proved to terminate at some point. That being said, very recently support for bounded loops landed [0]. It's very exciting and useful, and I'v
57.
▲
by
javierhonduco
4y ago
Thanks so much! You are right! Hopefully these formats will become standard and implemented in more toolchains. My worry is that there seem to be several "competing" formats for a more compact DWARF debug (as opposed to unwind) in
58.
▲
by
javierhonduco
4y ago
That's very curious! We definitely see way more DWARF opcodes in the wild, including `DW_CFA_remember_state`, `DW_CFA_restore_state`, `DW_CFA_advance_*`, among others. Statistically speaking, a profiler has more chances of bumping into
59.
▲
by
javierhonduco
4y ago
Thanks! As @brancz mentioned, Delve uses DWARF unwind information to produce backtraces (they are stored in the .debug_frame section for Go). You are right, Go enabled frame pointers for all architectures as of 1.17 [0]. This is enabled to
60.
▲
by
javierhonduco
4y ago
Let me check! I don't our approach to be significantly more compact than DWARF's. DWARF is very compact despite being so much more expressive. Funny that you mentioned perfect hashing, I thought about this, but didn't go for
More ›