Abstract. Genetic Programming often uses excessive computational resources because the population size and the maximum number of generations per run are not optimized. We have developed a technique called Virtual Ramping which eliminates the need to find an optimal value for these parameters and allows GP to be applied effectively to more difficult problems. Virtual Ramping continuously increases the size of a virtual population and the number of generations without requiring additional system memory. It also allows sub-populations to evolve independently which reduces premature convergence on suboptimal solutions. Empirical experiments with problems of varying difficulty, confirm these benefits of Virtual Ramping.