Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
the8472
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
33 ms
·
571.
▲
by
the8472
3y ago
As you say, the reported size is not necessarily correct so it should only be treated as a hint. And if os.read directly translates to a read syscall then you're also not handling short reads.
572.
▲
by
the8472
3y ago
https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/... Suggests that it should be usable for even shorter copies. And that's really my point. We should have One True memcpy
573.
▲
by
the8472
3y ago
That seems like a joke of a workflow to me. Surrender everything, including your build process to openai so it can provide a bit of context assist?
574.
▲
by
the8472
3y ago
Well, RES is resident in physical memory. It just is marked so that the kernel can make reclaim it when it needs to. But until then it's resident. If you want to track leaks you need resident-and-in-use metric which may be more diffi
575.
▲
by
the8472
3y ago
Does that compile my local projects?
576.
▲
by
the8472
3y ago
Did you miss the part about inlined calls? I was saying that if it weren't for these issues we could have them turn into a single instruction without worrying about perf.
577.
▲
by
the8472
3y ago
Aiming to please people who panic about their RSS numbers seems... misguided? It seems like worrying about RAM being "used" as file cache[0]. If you want to gauge whether your system is memory-limited look at the PSI metrics inste
578.
▲
by
the8472
3y ago
Are there tools yet that put the compiler in the loop? Maybe even a check-compile-test loop that bails on the first failure and then tries to refine it in the background based on what failed?
579.
▲
by
the8472
3y ago
The sibling comments mention the hardware specific dynamic linking in glibc that's used for function calls. But if your compiler inlines memcpy (usually for short, fixed-sized copies) into the binary then yes you'll have to compil
580.
▲
by
the8472
3y ago
There are two dedicated CPU feature flags to indicate that REP STOS/MOV are fast and usable as short instruction sequence for memset/memcpy. Having to hand-roll optimized routines for each new CPU generation has been an ongoing pa
581.
▲
by
the8472
3y ago
autovectorization is hit and miss. I recently wrote this which has to count the bits in a result mask of vector operations and it turns into popcnt just fine. https://godbolt.org/z/zT9Whcnco
582.
▲
by
the8472
3y ago
we need the equivalent of ipv6 privacy extensions for phone numbers
583.
▲
by
the8472
3y ago
I think most of those things are implementable in userspace with the right combination of O_TMPFILE, rename, fsync, fsync(dir), sync_file_range and io_uring. So all that's needed is encapsulating it in a library that provides those dif
584.
▲
by
the8472
3y ago
https://en.wikipedia.org/wiki/Radioresistance#Radioresistanc... But hopefully the intersection between radio-resistant, antibiotic-resistant and dangerous-to-humans is empty.
585.
▲
by
the8472
3y ago
What are you compiling? I've "cargo install"-ed - which means deps had to be built too - two rust tools today on a 4c/8t laptop and they were done in maybe two minutes each. Building AUR packages of some C tools isn'
586.
▲
by
the8472
3y ago
On the other hand once something works on linux it may do so for a long time without being dependent on the vendor to release a new version for each new major windows version. For me it's a cheap old flatbed scanner where the last wind
587.
▲
by
the8472
3y ago
Doesn't windows have some limitation where a process will only see up to 64 threads by default and it'll have to opt into some new APIs to use more? Maybe some of the results are an artifact of that.
588.
▲
by
the8472
3y ago
At least on linux you can use io_uring to make fsync asynchronous. And you can initiate some preparatory flushing with sync_file_range and only do the final commit with fsync to cut down the latency.
589.
▲
by
the8472
3y ago
Omega appears and tells you your child will have an probability P to be the next Mao, only conditional on the child surviving to adulthood. At which P do you drown the child?
590.
▲
by
the8472
3y ago
It has been tried in chess at least. https://en.wikipedia.org/wiki/Kasparov_versus_the_World
591.
▲
by
the8472
3y ago
For an example how far the kernel goes to get log messages out even on a dying system and how that's used in real deployments: https://netflixtechblog.com/kubernetes-and-kernel-panics-ed6...
592.
▲
by
the8472
3y ago
procmacros are loaded as dylibs, so dynamic linking is necessary. if you want a bootstrap procedure take a look at what guix does, they go through mrustc.
593.
▲
by
the8472
3y ago
That doesn't seem particularly surprising. Lots of software is slow when your storage is slow.
594.
▲
by
the8472
3y ago
Fixed queue, so it'll only take as many as it can process and reject the rest, which can be used to do scaling, if you have a cluster. With shares it would think it has all the CPU cores available and oversize the queue.
595.
▲
by
the8472
3y ago
With shares you're going to experience worse latency if all the containers on the system size their thread pool to the maximum that's available during idle periods and then constantly context-switch due to oversubscription under l
596.
▲
by
the8472
3y ago
The problem here isn't the scheduler. It's resource restrictions imposed by the container but the containerized process (Go) not checking the OS features used to do that when calculating the available amount of parallelism.
597.
▲
by
the8472
3y ago
So did OpenJDK and the Rust standard library.
598.
▲
by
the8472
3y ago
That's only true if the router drops randomly rather than hashing into buckets by host
599.
▲
by
the8472
3y ago
see http://bittorrent.org/bittorrentecon.pdf section 2.4.2
600.
▲
by
the8472
3y ago
> The protocol should prioritize donors with high bandwidth over vast storage space. If you're doing this in bittorrent then you might want a client that's configured to optimize for a different goal than most torrent clients.
More ›