Evan Martin (evan) wrote in evan_tech,
Evan Martin


A nice post about the many hoops Chromium jumps through for performance -- not in the throughput sense, but latency.

From build.chromium.org, you can click the "perf" link in the upper left to see some of the metrics we track over time. This drill-down into startup shows around r2800 we regressed startup by about 3ms, and you'd be surprised to see how much effort has been put into getting those three milliseconds back. (Normally you'd just revert the commit, but that one in particular contained about six months of work on WebKit. Large jumps on other perf graphs are related to that as well.)

Linux apparently has no way to do non-blocking IO to the disk. (Many people hear that and begin with "What about the aio/myfavoritescheme functions?" but the answer as far as I can tell is that those don't work.) It's not too hard to put disk operations on yet another thread, but it's unclear to me which parameters of a thread pool would help -- there's a trade-off between thrashing between multiple spots on the disk vs getting more data in front of the disk scheduling algorithms, etc. Anyone have anything smart to say about it?
Tags: chromium, linux

  • inspiration

    _why: "when you don't create things, you become defined by your tastes rather than ability. your tastes only narrow & exclude people. so create."

  • exceptions

    This bug makes me a little sad. From one of the patches for fixing: - @string = (str.string rescue str) + @string = str.respond_to?(:string) ?…

  • minimal openid consumer

    Here's a minimal OpenID consumer using the Ruby OpenID libraries. (Their included examples only contain Rails spew.) This example is useful for…

  • Post a new comment


    default userpic
    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.