diff --git a/Data/Packed/Vector/MMap.hs b/Data/Packed/Vector/MMap.hs
--- a/Data/Packed/Vector/MMap.hs
+++ b/Data/Packed/Vector/MMap.hs
@@ -102,7 +102,7 @@
   filesize <- withFile path ReadMode hFileSize
   let filesize' :: Int64
       filesize' = fI filesize
-  imgs <- unsafeLazyMMapVectors' filesize' path range vsize
+  imgs <- unsafeInterleaveIO $ unsafeLazyMMapVectors' filesize' path range vsize
   return (nimages range filesize', imgs)
       where
         nimages :: Maybe (Int64, Int64) -> Int64 -> Int64
@@ -160,7 +160,7 @@
 
 -- Maximum size for chunks
 maxChunkSize :: Int64
-maxChunkSize = fI (maxBound `div` 4 :: Int)
+maxChunkSize = fI (maxBound `div` 256 :: Int)
 
 -- Handy alias for 'fromIntegral'
 fI :: (Integral a, Num b) => a -> b
diff --git a/hmatrix-mmap.cabal b/hmatrix-mmap.cabal
--- a/hmatrix-mmap.cabal
+++ b/hmatrix-mmap.cabal
@@ -1,5 +1,5 @@
 Name:           hmatrix-mmap
-Version:        0.0.3
+Version:        0.0.5
 License:        BSD3
 License-File:   LICENSE
 Author:         Daniel Peebles <pumpkingod@gmail.com>, Alan Falloon <alan.falloon@gmail.com>
