spike general purpose