If you trace the system call activity that happens underneath slurp, at least on Linux and FreeBSD, you'll find that the slurp gets divided into a sequence of read(1) calls. If your intent it raw speed (and the file can fit into memory), you might be better off using sysread(), which will do a single read(1). That removes system call overhead, which on a loaded system will help avoid having other processes get their read(1)/write(1) requests in, which might move the disk head off of the sector that contains your partially-read file. Seeks can be very expensive.
At this level, though, the game is probabilistic. The file might be fragmented, etc.
In reply to Re: Slurp or Read
by dws
in thread Slurp or Read
by Tyke
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |