Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
pron
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
11 ms
·
61.
▲
by
pron
1mo ago
> you have at most 20% (wildly overestimating) of code that needs to be unsafe Obviously, but that doesn't help me if the complexity in the unsafe parts is made worse, while the safety helps the parts where little help is needed. It
62.
▲
by
pron
1mo ago
I reach for a low-level language only when I want low-level control over what operations happen and when, what memory is used and when etc.. At present, no language offers me this control and safety at the same time. With Rust, when I nee
63.
▲
by
pron
2mo ago
First, it's not a C++ feature. In C++ you tell the compiler how to lay out objects in memory. Here you declare what properties your class has (e.g. whether it needs identity or not), and the compiler decides how to lay out each of its
64.
▲
by
pron
2mo ago
> That’s 640MB of live heap in steady state, which ends up in the “long lived” part of most garbage collectors. It won't, because that is exactly the thing good moving GCs detect and size the young-gen accordingly. > Using RAM to
65.
▲
by
pron
2mo ago
A high allocation rate of long-lived objects is not easy to do. Object "death" rate has to equal the allocation rate, so a high allocation rate of long-lived objects means that somehow you get to allocate, say, 1 GB/s of data
66.
▲
by
pron
2mo ago
> You will have a hard time using theory to justify that SAT is easier than any other NP-complete problem "Easier" perhaps isn't the right word (in terms of reducibility, it certainly isn't), but FPT is just a way to
67.
▲
by
pron
2mo ago
> That is the benefit of non-turing complete languages, though. That's simply untrue. You can write arbitrary proofs about programs in Turing-complete languages, too. In fact, most formal proofs are of programs written in Turing-c
68.
▲
by
pron
2mo ago
The problem is that the people getting good results with AI-assisted formal methods are the same people who get good results with formal methods without AI assistance. They then extrapolate the benefits they are getting from AI today to wha
69.
▲
by
pron
2mo ago
A program that enumerates all theorems in ZFC and stops when it proves a contradiction (e.g. true = false). Encoding a program that is equivalent to that directly as a Turing Machine in merely 748 states: https://www.scottaaronso
70.
▲
by
pron
2mo ago
You say unavoidable, but moving collectors are designed to reduce CPU at high allocation rates by increasing the heap size. Generational moving collectors have a pathological case - a high allocation rate of long-lived objects - but that&#x
71.
▲
by
pron
2mo ago
> Universal quantification over complexity classes of first-order systems, used anywhere in the abstract? I'm not sure what you mean by "complexity classes of first-order systems" and by "in the abstract". But it
72.
▲
by
pron
2mo ago
You're right that managing any resource that isn't just Java heap memory requires manual management, but it isn't what we normally mean by memory management. The two have been somewhat tied together traditionally through re
73.
▲
by
pron
2mo ago
I'm not saying computational complexity restricts itself to the physically realisable, I said it's tied to it and so there will be more papers on models that have some correspondence with physical reality. > we're still
74.
▲
by
pron
2mo ago
I would say that it very much is about the nature of computation, but computation itself has always been tied to the physical. The physicality (even hypothetical physicality) is exactly what separates theoretical computer science from pure
75.
▲
by
pron
2mo ago
> So you can waste more RAM, waste more cycles Just to be clear, the main reason for the use of moving collectors in the first place is to waste less cycles on memory management (otherwise we wouldn't use them). They exist to serv
76.
▲
by
pron
2mo ago
> it usually looks like what you would expect out of a Turing machine's simulation of it You could assign it any cost model you want. Often this doesn't make a difference (as speedup theorems and other "distracting details
77.
▲
by
pron
2mo ago
I just want to point out that complexity theory isn't really about analysing the complexity of a particular algorithm (that's the subject of algorithm and data structure analysis, where students learn big-O notation), but about un
78.
▲
by
pron
2mo ago
I take your correction re graph colouring, but the rest is pointlessly pedantic (especially "FPT in the length", which is trivial and so typically excluded from the definition). Now, I don't know if SAT being FPT (in a parame
79.
▲
by
pron
2mo ago
> I don't get your point here. What analysis are you talking about? Determining any kind of non-trivial property (i.e. a property that isn't true for all or none of the programs in the language). > I believe the claim usuall
80.
▲
by
pron
2mo ago
1. Not all specific cases are solvable. 2. That the worst-case is very hard usually tells you that many instances will be hard (unless you discover an easy subclass), as is the case here. And when many "natural" instances are easy
81.
▲
by
pron
2mo ago
> In rust, I usually just make sure stuff is not Box<>, and try to reuse buffers. That generally gets the memory allocator completely out of the way (except for async). You say "just", but this is easy when programs are s
82.
▲
by
pron
2mo ago
> Does it provide hard latency bounds like Azul does (did?), and are they lower than disk/network latencies on modern hardware? Yes and yes (although we need to be more precise when we talk about latencies; see next paragraph). >
83.
▲
by
pron
2mo ago
> Concretely, what are current tail latencies, worst case? Well under 1ms for ZGC (to the point that OS-caused hiccups are of similar magnitudes). > Ten years ago, “rewrite in C++” was definitely easier than getting the Java GC to sta
84.
▲
by
pron
2mo ago
> Standard complexity theory focuses on answering questions when our substrate behaves like a Turing machine with multiple tapes. This is not true. Complexity theory very much looks at complexity under different models (alphabet size, or
85.
▲
by
pron
2mo ago
> For the mathematicians that created Computation Science, the only interesting solutions are complete solutions to general questions Except that's not really true, which is the whole point of the finer computational classes. If man
86.
▲
by
pron
2mo ago
1. The study of complexity classes isn't intended to dissuade people from writing certain programs. It's intended to understand the nature and theoretical limits of computation. As far as practice goes, it can be used to show wher
87.
▲
by
pron
2mo ago
> you just do all that manual work with environment variables You really don't anymore. For the past several years, Java's GCs mostly pick the right settings automatically, except for heap size, which will be taken care of soon
88.
▲
by
pron
2mo ago
Use ZGC.
89.
▲
by
pron
2mo ago
P.S. > I can guarantee that if you use sane allocation strategies (arenas & freelists, pools, whatever) you spend <1% of your total system resources fucking around with memory allocation. I just spoke with someone on the performan
90.
▲
by
pron
2mo ago
> I've written two separate moving collectors for dynamic language runtimes, as well as done significant work in realtime 3D graphics That's nice. I have ~25 years of experience with large C++ software, including hard and soft
More ›