Comment by andrewflnr

Comment by andrewflnr 4 days ago

8 replies

I took that to mean the tool was IO-bound, so it wasn't using much CPU to start. So if there was even that tiny sliver of slack CPU (and that's almost definitely the case on a desktop or other dev machine), then saving that tiny bit of CPU actually saved no money, since it was already riding on the spare capacity of other investments. That just leaves the cost in engineer-hours to rewrite the program.

ants_everywhere 3 days ago

IO-bound doesn't mean it doesn't use much CPU. A tool can use a lot of IO and also a lot of CPU.

> then saving that tiny bit of CPU actually saved no money

this doesn't follow

> since it was already riding on the spare capacity of other investments

nor does this

Take for example a CLI that downloads and verifies the Bitcoin blockchain. It may spend most of its time downloading blocks, but it spends a ton of time calling SHA256 to verify those blocks. Similarly with a tool that downloads and checksums large files like Docker images.

If you have a fleet of 650K developer machines all running this util, then at some point it becomes cost effective to optimize the CPU usage.

Whether that point was reached in this example is not something I know. It seems like the L7 and their manager believed it was. But OP believes it wasn't. Either way, we don't know from OP's description of the situation.

  • andrewflnr 3 days ago

    Sure, something like that is technically consistent with the description, but unlikely to be relevant. If you're thinking of a program that downloads a bunch of data and then does a bunch of cryptographic operations on it, what are the odds that the first description in your mind is "spends most of its time on HTTP requests"? Slim, I'd say, even if it's technically the majority of the time.

    • ants_everywhere 3 days ago

      The question isn't the "hey what's the first description that comes to mind?" The question is why people on HN are mocking the idea that saving HUGE_NUMBER*B is a bad investment just because there is some other A satisfying A > B.

      • andrewflnr 3 days ago

        Because B is quite possibly 0 in this case, given the limited information we have here.