From: Linus Torvalds Date: Sun, 19 Nov 2006 23:26:12 GMT Subject: Re: [WISH] Store also tag dereferences in packed-refs Message-ID: In-Reply-To: On Sun, 19 Nov 2006, Marco Costalba wrote: > > Excuse me for my ignorance, but isn' it the job of OS disk schedulers? The OS disk scheduler does exactly that but ONLY IF IT'S GIVEN DATA TO WORK ON IN PARALLEL If an application gives it read requests one by one, the OS has no choice but to just do the accesses one by one. Writes are easier, since you can just buffer them. But you can't "buffer" a read. When the user asks for a readdir(), you'd better give it to the user, and there's not anything you can do about it. So disk schedulers only work for - parallel workloads - writes (where "parallel workloads" can be asynchronous reads - where the user says "I will _start_ this read, notify me when it's done" and then gives multiple independent reads to do in parallel). So the OS cannot add parallelism - it can only take advantage of what parallelism the application gives it.