The benchmark results I got may be misleading. When the data you are trying to read is not sequential the readahead is wasted. This can slow you down quite a bit in day to day useage. The readahead issue has been addressed by the Linux community and Linus himself. I got this suggestion from a conversation about readahead and small devices:
disk size readahead size
(scale by 4) (scale by 2)
2M 4k
8M 8k
32M 16k
128M 32k
512M 64k
2G 128k
8G 256k
32G 512k
128G 1024k
Read the original article for yourself:
http://thread.gmane.org/gmane.linux.kernel.mm/43753So my device can hold a maximum SD card size of 32GB and I would set my readahead to 512k