1. A method for programming non-volatile storage, comprising: applying a program voltage signal to a set of non-volatile storage elements; programming a first subset of said set of non-volatile storage elements to a first target state by increasing said program voltage signal by a first increment value until each non-volatile storage element of said first subset reaches said first target state; and programming a second subset of said set of non-volatile storage elements to a second target state, said programming said second subset includes said increasing said program voltage signal by said first increment value until each non-volatile storage element of said first subset reaches said first target state and increasing said program voltage signal by a second increment value after each non-volatile storage element of said first subset reaches said first target state.