It seems that my app is abandoning memory since the persistent memory of recorded heapshots don't fall to zero and the heap continue to grow when the same set of operations are continuously repeated:
To find out the problems, many people suggest Bill's site that is not useful for me since I am using ARC, whereas he points to reference issues. I then followed Apple docs and watched some videos relating to abandoned memory from the WWDCs. They all say that instruments will help to point to the line of code that might cause the problems. So I reviewed every single object but didn't see anything relating to my code:
It seems that changing Build Settings\Build Options\Debug Information Format from DWARF to DWARF with dSYM File will fix the problem.