Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
petethepig
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
11 ms
·
61.
▲
by
petethepig
6y ago
For people interested in this kind of stuff there's a good book on visualizations from WSJ: https://www.amazon.com/Street-Journal-Guide-Information-Grap... It's pretty concise and full of helpful rules like that
62.
▲
by
petethepig
6y ago
Not right now but we'll add that feature soon.
63.
▲
by
petethepig
6y ago
Right now they are all mixed together. Based on our experience and talking to early users, for some types of applications this is not too big of a deal. You can always zoom in on a particular endpoint and dive deeper if you want to. And in
64.
▲
by
petethepig
6y ago
Not very familiar with JVM unfortunately. Maybe someone else can chime in and tell us about how it stores profiling data?
65.
▲
by
petethepig
6y ago
We measured it at some point and the numbers were around 1-2% CPU usage increase per 1 profiled process at 100 Hz. Did not measure memory overhead, but it should be pretty minimal, less than 10 MBs per process.
66.
▲
by
petethepig
6y ago
Thanks! We loved geeking out on all of these data structures and algorithms. RE comparisons: Do you mean comparisons of some production profiling data with versus without this compression?
67.
▲
by
petethepig
6y ago
Thanks!
68.
▲
by
petethepig
6y ago
That’s a great idea. We were thinking we could integrate Pyroscope with CI tools, so that you would be able to see how much time is spent in different tests. This seems to be an area where a lot of people are looking for quick ways to cut t
69.
▲
Show HN: O(log n) makes continuous profiling possible
(github.com)
166 points
by
petethepig
6y ago
|
37 comments
70.
▲
O(log n) makes continuous profiling possible
(github.com)
2 points
by
petethepig
6y ago
|
0 comments
71.
▲
by
petethepig
6y ago
This is a cool idea, I've always wanted to expand this kind of thing to other similar usecases like getting notified after long CI jobs. I think the repo is private though.
72.
▲
Show HN: Alert yourself after a long-running task in terminal
(gist.github.com)
86 points
by
petethepig
6y ago
|
50 comments
73.
▲
by
petethepig
6y ago
Yes, this kind of data would definitely be great to have as well and we're planning to add that at some point. I think in Go there's at least a clear path to that, afaik pprof already has something for memory profiling, but with o
74.
▲
by
petethepig
6y ago
The way we see it right now Pyroscope pros: * it's open source, you can use it locally, or deploy it in your infra * our timeline UI is more intuitive imo, e.g you can easily zoom in on particular time ranges you're interested in,
75.
▲
by
petethepig
6y ago
Yes, this is pretty close. In our case each new layer has 10 elements and there's no overlaps, so something like this: ABCDEFGHIJ KLMNOPQRST + + | | +-+-+-+-+++
76.
▲
by
petethepig
6y ago
Adding support for this feature might be tricky on some platforms, but I agree, it is important to be able to look at both.
77.
▲
by
petethepig
6y ago
RE perf — we're planning to add eBPF support — AFAIK it's a modern equivalent of perf and the output there should be similar to perf. RE allocations graph, this should be possible, we'll definitely look into integrating it as
78.
▲
by
petethepig
6y ago
Reminds me of IP over Avian Carriers thing [0] [0] https://en.wikipedia.org/wiki/IP_over_Avian_Carriers
79.
▲
by
petethepig
6y ago
We write profiles to DB with 10 second resolution, so 1 profile with approximately 1000 samples per 10 seconds. When we later read this data, if we're talking about 1 minute of data, we need to merge 6 profiles (1 per 10 seconds). Howe
80.
▲
by
petethepig
6y ago
I think for languages like Java we're gonna have the profiler run inside the profiled process. This is how it currently works in our Go integration. RE continuous profiling and things: that's our hope as well. At my last job I got
81.
▲
by
petethepig
6y ago
Hi Maciej, vmprof is cool! For Python we currently use py-spy. The way it works is it reads certain areas of process's memory to figure out what the current stack is. It's a clever approach that I like because that means you can a
82.
▲
by
petethepig
6y ago
Hi there, I'm very happy you found it easy to install. This has definitely been one of our priorities from the beginning — I personally feel like it's a very important, but often overlooked detail, particularly in open source proj
83.
▲
Launch HN: Pyroscope (YC W21) – Continuous profiling software
102 points
by
petethepig
6y ago
|
29 comments
84.
▲
by
petethepig
6y ago
I once tried to model tax forms as code and one thing I learned is that using observable / computable model (as in mobX / knockout.js) works pretty well for computing tax. For example: this.totalDeductions = this.computed(() =
85.
▲
by
petethepig
6y ago
Author here. We started working on Pyroscope a few months ago. I did a lot of profiling at my last job and I always thought that profiling tools provide a ton of value in terms of reducing latency and cutting cloud costs, but are very hard
86.
▲
Show HN: Continuous profiling demo with 1 year of data
(demo.pyroscope.io)
12 points
by
petethepig
6y ago
|
1 comments
87.
▲
by
petethepig
6y ago
Open source continuous profiling software https://github.com/pyroscope-io/pyroscope I did a lot of profiling at my last job and it was always kinda frustrating because you usually have to do it adhoc on your machine, a
88.
▲
by
petethepig
6y ago
This happens because there's NAT (network address translation) happening somewhere. Without NAT the only 2 parties that need to know anything about a TCP connection are client and server. With NAT you have this problem where the router
89.
▲
by
petethepig
6y ago
When thinking about modern distributed systems one abstraction I love to use is a Queueing System. If you think about it, everything can be described as a system with an input, some buffer (queue), a bunch of workers doing work in parallel,
90.
▲
by
petethepig
6y ago
Ironically, if you spell it out it only gets more confusing, because it does a lot more than just packer filtering these days.
More ›