GC causing massive delay

http://pastebin.com/eXWS0qrc

The output above is;

System.out.println(((Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()) / 1024));

and as you can see GC occurs at 1526 and right at that moment my frames drop from solid 60 to 35

I’m using -XX:+UseConcMarkSweepGC as my GC, I tried other types as well but none of them really helped me

Can anyone help me with this?