Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
Jonhoo
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
8 ms
·
31.
▲
Chrome guidelines for displaying URLs
(chromium.googlesource.com)
3 points
by
Jonhoo
8y ago
|
1 comments
32.
▲
by
Jonhoo
8y ago
@NovaX it's worth noting that swapping out the underlying hash map that evmap uses is really easy, which is one of the advantages of the design as far as I'm concerned! For example, here's the diff for moving to someone else&
33.
▲
by
Jonhoo
8y ago
Someone else just suggested this on Twitter, but sadly the results are pretty much the same: https://twitter.com/Jonhoo/status/1082014596028715008
34.
▲
by
Jonhoo
8y ago
I did a quick-test now, and with 16 cores + FNV hashing + disabling hyperthreads, I got ~41M ops/s total on those cores. That got me to digging a little further, and I decided to use the same benchmark harness to benchmark just a std
35.
▲
by
Jonhoo
8y ago
I completely agree with that sentiment :) While doing some digging of my own, I noticed that the benchmark is using the default Rust hashing function, SIP, which is cryptographically secure. I should probably re-run with FNV hashing, as tha
36.
▲
by
Jonhoo
8y ago
I'm not sure where you get that from? The benchmark code clones one read handle for each read thread at the beginning, which is then used for the entire benchmark: https://github.com/jonhoo/rust-evmap/blob
37.
▲
by
Jonhoo
8y ago
My hunch would be that the results from the talk wouldn't materially change, except that the Mutex numbers would perhaps be _slightly_ better. The scalability issue would remain though, as it is fundamental to mutexes!
38.
▲
by
Jonhoo
8y ago
I'm glad to hear that you enjoyed it, and that you found the concepts and ideas understandable! It's worth pointing out that this was intended to be a relatively high-level talk. For the more technical details, I'd recommend
39.
▲
by
Jonhoo
8y ago
The mutexes were standard Rust Mutex, which I believe just forwards directly to pthread locks. I'm not sure what kind of spinning behavior they have though.
40.
▲
by
Jonhoo
8y ago
Yup, some synchronization is certainly necessary there too. Take a look at the full code for the read path here if you're curious! https://github.com/jonhoo/rust-evmap/blob/d307999c1ad78d10ec...
41.
▲
by
Jonhoo
8y ago
Hi NovaX! I'm the presenter in the video above. I've read all your comments below, and figured I'd try to give a single overall reply, so here goes. First, it's important to note the difference between Noria (the databas
42.
▲
by
Jonhoo
8y ago
I wrote a tool that lets you do it here: https://github.com/jonhoo/su-extract :)
43.
▲
The Friendlysock Experiment, Subjective Results
(angersock.com)
2 points
by
Jonhoo
9y ago
|
0 comments
44.
▲
by
Jonhoo
9y ago
Originally posted as https://news.ycombinator.com/item?id=14313854
45.
▲
The Story of a Rust Bug
(thesquareplanet.com)
140 points
by
Jonhoo
9y ago
|
16 comments
46.
▲
by
Jonhoo
10y ago
Good point -- it's not really relevant to the example that I'm using a borrow, so I changed it to a u64 instead.
47.
▲
Rust tips and tricks for newcomers
(thesquareplanet.com)
1 points
by
Jonhoo
10y ago
|
2 comments
48.
▲
MIT reading group on Scalability but at what COST?
(dsrg.pdos.csail.mit.edu)
3 points
by
Jonhoo
10y ago
|
0 comments
49.
▲
Fansmitter: Acoustic Data Exfiltration from Speakerless Air-Gapped Computers
(arxiv.org)
60 points
by
Jonhoo
10y ago
|
24 comments
50.
▲
Choosing a Programming Language
(thesquareplanet.com)
4 points
by
Jonhoo
10y ago
|
0 comments
51.
▲
by
Jonhoo
10y ago
Thanks! Glad to hear that you found it interesting :)
52.
▲
by
Jonhoo
10y ago
It was, in fact, originally posted at https://news.ycombinator.com/item?id=11773332 by me (the author), but that post never got much attention :p
53.
▲
by
Jonhoo
10y ago
For self-referential datastructures (your first point above), using an Rc or Arc shouldn't have any overhead. I agree that it would be nice to be able to express this, but it's not really that big of a problem. For partial borrows
54.
▲
by
Jonhoo
10y ago
I think it'd actually be good to show both to show how versatile Rust can be in this regard. I added it to the article with a link back here. Thanks!
55.
▲
by
Jonhoo
10y ago
In my defense, the next sentence is "Unless you explicitly mark your code as `unsafe`, your code simply cannot have data races." That said, I've updated the article text to now say data races in both places.
56.
▲
by
Jonhoo
10y ago
I barely, if ever, use/need a REPL. The shell has all the tools I need for short, one-off tasks.
57.
▲
by
Jonhoo
10y ago
I don't have any numbers to support this claim, but it's certainly true that we are seeing a lot of software being developed in Go, and network software in particular.
58.
▲
by
Jonhoo
10y ago
You can still do dependency injection in Rust..? There even exists a create for it: https://github.com/Nercury/di-rs . There's also some further discussion here: https://users.rust-lang.org/t/h
59.
▲
by
Jonhoo
10y ago
Actually, no. I've found that I'm maybe even more productive in Rust than I am in Python, even for one-off tasks. The one exception is probably plotting, but I'm sure a Rust library for that isn't far off.
60.
▲
by
Jonhoo
10y ago
I agree with your point in that this is written in an excessively functional style. Something more akin to the imperative-style solution given by lifthrasiir below might have been simpler. However, I don't think that code shows that Ru
More ›