Yesterday when I turned off the splash of Ubuntu, I saw some interesting messages were printed on the screen when the system was booting.

xor: automatically using best checksumming function: pIII_sse

  pIII_sse  :  5651.000 MB/sec

I did search google, but I still couldn't find what pIII_sse definitely is.

I know it's a checksuming function, so what it is checksuming for? What does 5651.000 MB/sec mean?

And I use athlon, why kernel uses pIII_sse?


It's referring to the assembly language implementation; the checksumming function's result is the same in all cases. In this case, it means the version originally written for the Pentium 3 using the SSE extended instruction set.

The speed printed is the average number of megabytes of data it can pass to the checksumming function per second, a measure of the function's efficiency.

(And the kernel tries all the versions it knows about and uses the one with the highest MB/s; this doesn't necessarily mean one named after your particular CPU. It is, after all, in AMD's best interests to be at least as fast as the equivalent Intel CPU.)

| improve this answer | |
  • Thank you:) Is there any other checksuming functions? For example, the one is written for AMD CPU? – Vayn Jul 4 '11 at 0:21
  • Not counting the generic versions, for 32-bit x86 there is also p5_mmx and pII_mmx (both of which target older instruction set extensions compared to pIII_sse). Presumably AMD CPUs are served well enough by these three assembly implementations not to need a custom implementation. – James Henstridge Jul 4 '11 at 1:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.