use abstract class when you have some implementation that a group of subclass should use.
Also use abstract class to make sure that its instance cannot be created.
use an interface when you want all other classes to implement all methods in interface though those classes are not from same inheritance tree. interface generally defines a role that implementing classes should play.
and as for performance, i am not sure. may be both perform at same speed or may be its
java virtual machine dependent. and why do you care about such a minute change in speed?