As said, if you have pretty much filled up your hard drive, then deleted stuff to make space, files are scattered everywhere so you need to defrag the hard drive (i.e. move all the scattered stuff together).
You can pay for iDefrag, or the free option which isn't really the most convenient but reformatting your hard drive (reinstalling OS X) then partitioning once that is complete.