Exploring Cache Behavior under Ideal Memory: Understanding Data Locality