SPARCv9 has %tick register which just counts up on each clock cycle. Older SPARCs don't have that. I'd still suspect you'd get non-unique results in a multi CPU machine without additional effort.

On Sat, Dec 2, 2023 at 10:02 PM ron minnich <rminnich@gmail.com> wrote:
SunRPC, among other protocols, needs transaction IDs (XIDs) to distinguish RPCs.For SunRPC, it's important that XIDs not be reused (not for all protocols; 9p has no such requirement). Stateless protocols like NFS and reused XIDs can get messy.

There is a vague, 30 year old memory, I have, that at some point SPARC got a time register, or some other register, that always provided a different answer each time it was read, even if read back to back, in part to enable creation of non-reused XIDs. Note that things like the TSC or RISC-V MTIME register make no such guarantee.

I am pretty sure someone here can fill me in, or tell me I'm wrong, about my SPARC memory.

thanks