You can use a vertex attribute, or just use the extra texcoord sets to store your extra data. Then you upload it the same way you send a vertex array or VBO.
If you use a VBO you can render multiple instances of the same particle emitter pretty quickly, with only the particle processing overhead of one emitter.
If you use a VBO you can render multiple instances of the same particle emitter pretty quickly, with only the particle processing overhead of one emitter.