This doesn't actually have to be volatile.  Sequences should be seen by the same thread all the time and the memory barrier here could potentially affect performance.