Added Michael's comments on time-write.chpl performance test (r23253).
Added Michael's comments on time-write.chpl performance test (r23253).

From off-list correspondence, with Michael's permission,
added the following to the top comment in time-write.chpl:

+ Chapel's write() or stdout.write()
actually call printf so that Chapel programs and C
programs can intermix their standard output. They
are also both line buffered which reduces performance.
  Chapel's stdout is using the C stdout FILE*,
and calling fwrite. That means that any data
sent to Chapel's stdout is buffered twice in
the application:
 - once in the QIO channel
 - once in the FILE* buffer
I would expect this to reduce performance.

+ We could revisit that design decision and make
write use file descriptor 1 if we no longer wanted
it to work this way. It would go faster but possibly
result in unexpected intermixings of stdout.

+ The performance lag of Chapel with openfd(1)
is worth investigating regardless of the above.

+ I also think that it's important to compare
locking=false with printf_unlocked.
[See "man unlocked_stdio" - basically it is the C version of printf
that does not lock the FILE* so it's only safe to use in a serial context.]


git-svn-id: 88467cb1fb04b8a755be7e1ee1026be4190196ef@23306 3a8e244f-b0f2-452b-bcba-4c88e055c3ca

sungeunchoi/chapel,hildeth/chapel,sungeunchoi/chapel,chizarlicious/chapel,chizarlicious/chapel,hildeth/chapel,sungeunchoi/chapel,CoryMcCartan/chapel,chizarlicious/chapel,hildeth/chapel,chizarlicious/chapel,hildeth/chapel,sungeunchoi/chapel,chizarlicious/chapel,CoryMcCartan/chapel,CoryMcCartan/chapel,CoryMcCartan/chapel,hildeth/chapel,sungeunchoi/chapel,sungeunchoi/chapel,chizarlicious/chapel,hildeth/chapel,hildeth/chapel,chizarlicious/chapel,sungeunchoi/chapel,sungeunchoi/chapel,CoryMcCartan/chapel,CoryMcCartan/chapel,CoryMcCartan/chapel