Commitment. Who really wants to spend 100, 200, or even 300 hrs studying for an exam?
Solution: Call it your temporary part-time job. Get a calendar and mark the days and times you will clock in and clock out. Show up to your job so you don't get fired. Do your best studying during that time and don't think about GMAT outside of those times. I did this for 4hrs a day, 6 days a week, for 1 month. If you think about it, that's a doable 1 month part-time job.