Brian Gold
68 posts


I mentioned a DSPy design goal yesterday: make it easy to *localize ambiguity*.
Today’s: make it easy to *start over*. A complete DSPy system is often ~30 LoC. You can evolve simple systems to highly sophisticated ones without feeling committed to them.
Everything is throwaway.
DSPy@DSPyOSS
In building DSPy programs, remember: "A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up. You have to start over with a working simple system." -Gall's Law
English

@kingprotty This is roughly how select() works in my not-worked-on-for-a-year async runtime:
#L766" target="_blank" rel="nofollow noopener">github.com/briangold/vort…
Seems to work. And at some point when async is back in Zig, I’ll get back to this.
English

@fuzzycz If you can run a recent (6+) kernel, you could do this with ublk. There’s a sample app for writing a loop device, which you could modify to inject anything you want in the I/O path.
github.com/ming1/ubdsrv
English

@penberg Intel made network processors (IXP 2400) that had “microengines” supporting multiple task contexts and asm-level suspend/resume. Could suspend on memory access or I/O. I wrote a workshop paper on DB scans and hash joins with it back in 2005. Was fun but niche.
English

@muratdemirbas Reading lists from the very few grad-level storage courses:
CMU: course.ece.cmu.edu/~ece746/readin…
UCSC: users.soe.ucsc.edu/%7Ecarlosm/cmp…
Wisc: pages.cs.wisc.edu/~remzi/Classes…
English

@phil_eaton Otherwise, it depends. Some HPC codes use multi-TB (and beyond!) files. Need to avoid inode contention if you have multiple writers.
Splitting into separate files just moves the problem, though. Now directory inode is contention point.
Depends on access patterns & scale.
English

@phil_eaton For the WAL and LSM examples, you may split to make deletes (reclaiming space) easier. An LSM level/tier is immutable, but after merging the old one needs to get deleted.
English

@palvaro Perhaps: homepages.inf.ed.ac.uk/wenfei/qsx/rea…
I came across this while reading dsf.berkeley.edu/cs286/papers/m…
English
Brian Gold retweetledi

ece.cmu.edu/news-and-event… Today with @AlbaOrbital we launched the Tartan-Artibeus-1 pocketqube (as UNICORN-2TA1), the first batteryless, intermittent, orbital edge computing nanosatellite aboard the @SpaceX Falcon-9 Transporter-3 mission!
English

@jarredsumner @wheybags has a nice starting point (in C++): github.com/wheybags/wcp
There’s a companion blog here: wheybags.com/blog/wcp.html
English

@jarredsumner @andy_kelley @axboe Performant large directory tree traversal is tricky with or without io_uring. This thread may help with some pointers: lwn.net/Articles/84386…
English

@HenryR @palvaro Great list! A lifetime ago I was working with the (inscrutable) register allocator in the hotspot C2 backend.
Preston Brigg’s thesis was a lifesaver and one of the most readable PhD theses I’ve ever seen. cs.utexas.edu/users/mckinley…
English
Brian Gold retweetledi

I'm hiring multiple PhD students for Fall'22 at CMU. My research bridges computer architecture & systems software to enable datacenter computing. If you're interested in related topics, come work with me! RTs appreciated!
More info: akshithasriraman.com
ece.cmu.edu/admissions/ind…
GIF
English

The DAGs that I work on these days are actually graphs, not databases
#AcronymsAreHard
English
Brian Gold retweetledi

@MarkCallaghanDB @andy_pavlo @danavanaken @SocieteGenerale @CBILIEN @Oracle @OtterTuneAI Most storage servers and even SSDs are internally complex “database” systems (with LSM tree or similar structures). So maybe we need to (Otter)tune the whole stack?
English

This is @danavanaken's new #VLDB2021 paper on deploying OtterTune at @SocieteGenerale in collaboration with @CBILIEN. We used OtterTune on a production 1TB @Oracle DBMS and compare 3 ML algos.
TLDR: @OtterTuneAI outperforms human tuning but noisy cloud VMs made it tricky.
PVLDB@pvldb
Vol:14 No:7 → An Inquiry into Machine Learning-based Automatic Configuration Tuning Services on Real-World Database Management Systems vldb.org/pvldb/vol14/p1…
English

@nvachhar @rolanddreier Related - from FAST this year, writing filesystem drivers (in kernel) in rust, with a shim/harness allowing user-space development and testing: usenix.org/conference/fas…
English
Brian Gold retweetledi

Science, engineering, and entrepreneurship, and venture capital at its finest! Congrats to @SilaGene on the fundraise to scale production. (And kudos to @shv and @laserlikemike for believing early!)
English

@codyhosterman I expect to see you sign-off from future emails with “We are FlashArray”. 😂
English










