Difference between revisions of "Performance/IO"

From HaskellWiki
Jump to navigation Jump to search
(hGetBuf, and mmapped IO are options)
 
(Adding Performance infobox and link to Library/Streams)
Line 1: Line 1:
  +
{{Performance infobox}}
'''IO'''
 
  +
==I/O==
   
 
If the standard lazy IO operations are proving to be a bottleneck,
 
If the standard lazy IO operations are proving to be a bottleneck,
Line 5: Line 6:
 
particularly effective when combined with packed strings.
 
particularly effective when combined with packed strings.
   
Some external libraries also provide memory mapped IO.
+
Some external libraries also provide memory mapped IO.
  +
  +
You may also wish to check out [[Library/Streams]] for a new approach to I/O.

Revision as of 19:09, 17 February 2006

Haskell Performance Resource

Constructs:
Data Types - Functions
Overloading - FFI - Arrays
Strings - Integers - I/O
Floating point - Concurrency
Modules - Monads

Techniques:
Strictness - Laziness
Avoiding space leaks
Accumulating parameter

Implementation-Specific:
GHC - nhc98 - Hugs
Yhc - JHC

I/O

If the standard lazy IO operations are proving to be a bottleneck, buffer-based IO is an alternative (hGetBuf/hPutBuf). This can be particularly effective when combined with packed strings.

Some external libraries also provide memory mapped IO.

You may also wish to check out Library/Streams for a new approach to I/O.