Cpu refactor