re-organize benchmark