some more refactoring, also vs cpu is done