Soft updates explained

My latest article for LWN explains (!) soft updates. The “(!)” is because soft updates are notoriously difficult to understand. If you go to a file systems conference and get people drunk, they will eventually confide to you that they don’t really understand soft updates either.

Soft updates, hard problems

This is a free link; if you like the article, please consider subscribing to LWN. You’ll still need an account if you want to make snide comments on the article. :)

8 thoughts on “Soft updates explained”

  1. The Featherstitch filesystem uses clever formal systems techniques to derive softupdates ordering requirements and optimise away unnecessary disk operations. They’ve basically generalized and automated Kirk McKusick’s one-off analysis of FFS’s ordering requirements. This technology means softupdates is no longer difficult.

    http://featherstitch.cs.ucla.edu/

  2. Nifty! At the LWN article, I had commented specifically that it seemed like this ought to be automated, so that you could evolve the filesystem painlessly and so you could optimize. And lo, it seems someone has actually gone and done that. :-)

    It seems like you could also experiment with different aspects of the filesystem at that point, to optimize the filesystem for different objectives. For example, if I wanted to optimize the filesystem layout for spinning rust, I might try to reduce the number of seeks, even if that leads to some redundant writes. If I wanted to optimize for SSDs, it seems like I might want to group as many updates as possible into as few writes as possible, even if that means more “seeking.”

    Of course, I say this as a general “seems like you ought to be able to” idea without actually being an expert in either filesystem design or implementation.

  3. snide comments

    Ah, but we can make snide comments here without a subscription! ;-)

    – Jeff (a very happy LWN subscriber and supporter, who thoroughly enjoys all of your articles… I particularly loved the round-ups of operating system related academic papers you were doing a while back)

  4. Huh. That reminds me, I want to have a long talk about filesystem consistency with you some time over suitable beverages. Probably somewhere out, so we don’t have to keep stopping to make refills, and maybe with some co-conspirators.

    (Basically, I want to better understand why some semaphore strategies don’t work better than I assume that they do to address the problem)

  5. I saw that paper when it was presented and spent some time with the lead author and it is very promising. Would you be interested in reading an LWN article about it? :)

  6. Sure, especially if you have things to say about it that aren’t in the paper. Sadly it seems the project has died of graduation.

Comments are closed.