The following articles explore the advantages and disadvantages of the
-E start-up option:
Focus on Fast Track : Understanding the –E Startup Parameter
-E changes the proportional fill algorithm. Rather than moving on to the next file after a single extent allocation, the movement occurs after 64 extents have been allocated.
These extent allocations do not need to come from a single table. For example, when loading two tables in parallel with
–E enabled, both tables consume the 64 extents in the single file before moving on to the next file.
-E does not alter the fact that SQL Server allocates one extent at a time.
The purpose of
–E is to enable large-I/O read-ahead. If two tables that share the same files/filegroup are loaded in parallel then the advantage of
–E is removed. The extents will be fragmented resulting in small-I/O read-ahead.
-E was originally put into the code to allow index builds and rebuilds to use 256KB of each file before round-robining, and so get better sequential I/O for large data warehouses. It was originally a 'benchmark special' and had very little testing, it was only documented because it was used during benchmarks (and so had to be documented).
Microsoft White Paper (pdf)
Community Wiki answer generated from a comment on the question by @Kin