I'm in this situation too. I flashed the LPY rom and reverted to GB soon after that because of the battery getting drained too fast, AND because of this emmc bug..
The simplest way to do this, as I said before, is to have the /data, /system, /cache and /efs read (not sure about the latter, but I tried and it survived).
login as root in a terminal on your phone (I used terminal emulator), get root by using the "su" command, then type these commands, one at a time.
DO NOT USE THESE COMMANDS ON YOUR DEVICE! THEY WILL BRICK YOUR PHONE! THERE - I WARNED YOU!
time dd if=/dev/block/mmcblk0p7 of=/dev/null
time dd if=/dev/block/mmcblk0p9 of=/dev/null
time dd if=/dev/block/mmcblk0p1 of=/dev/null
time dd if=/dev/block/mmcblk0p10 of=/dev/null
The "time" in front of each command is just for "fun" as it will return the time it needed to do the operation, and it will also give you an average read speed result.
I did this on /cache and /efs but I'm not going further
One more thing - I believe the test will be more accurate if you add bs=1 after each command. Example:
time dd if=/dev/block/mmcblk0p1 of=/dev/null bs=1
This way it will read one block at a time, but it will take longer. Reading /efs on my phone (20 MB of data), it took 43 seconds at 475 kB/s speed. If you run it on /data, expect it to finish in 75 minutes. You can always check if the phone is locked by dragging down the notification bar. Also, I'm not sure if the device will just freeze, or if it will get stuck at the next reboot in case bad blocks are encountered.
Again - Please reconsider doing this, it's not safe at all!!!
*ALL OF THE ABOVE IS BASED ON MY AVERAGE EXPERIENCE IN LINUX AND THIS ALONE IS A REASON TO NOT TRY WHAT I POSTED!!