add thinking clearly about perf