git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] mingw: emulate write(2) that fails with a EPIPE

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Dec 17, 2015, 17:08 UTC
Message-ID
<alpine.DEB.2.20.1512171807480.6483@virtualbox>
In-Reply-To
<xmqqegelc9k8.fsf@gitster.mtv.corp.google.com>
Hi Junio,
On Thu, 17 Dec 2015, Junio C Hamano wrote:
Show 16 quoted lines
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> 
> > My intuition (which I honestly did not verify using performance tests) was
> > that write() is called *much* more often than, say, open(),...
> 
> My gut feeling agrees with yours, but I do not think the frequency
> at which write() is called should be the primary factor when you
> decide to make its wrapper inlined.  Once you call write(2), you
> will hit either the disk or the network doing I/O, and at that point
> I'd expect that the cost of making an extra layer of wrapper call
> would be lost in the noise.  I'd worry a lot more about from how
> many callsites write() is called---by inlining the extra code that
> is run only when the underlying write(2) returns an error to many
> callsites, we would make the program as a whole bigger, and as the
> result other code needs to be evicted out of the instruction cache,
> which also would hurt performance.
That argument convinced me. v2 coming shortly.

Ciao, Dscho

Previous: Junio C HamanoNext: Eric Sunshine
Message 5 of 13 in “mingw: emulate write(2) that fails with a EPIPE”
  1. mingw: emulate write(2) that fails with a EPIPEJohannes Schindelin, Dec 16, 2015
  2. Junio C HamanoDec 16, 2015
  3. Johannes SchindelinDec 17, 2015
  4. Junio C HamanoDec 17, 2015
  5. Johannes SchindelinDec 17, 2015
  6. Eric SunshineDec 16, 2015
  7. Junio C HamanoDec 16, 2015
  8. Johannes SchindelinDec 17, 2015
  9. mingw: emulate write(2) that fails with a EPIPEJohannes Schindelin, Dec 17, 2015
  10. Junio C HamanoDec 17, 2015
  11. Johannes SchindelinDec 18, 2015
  12. Johannes SixtDec 18, 2015
  13. Junio C HamanoDec 21, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.