some progress on perf