Pentium M and P4 question / and a failed test

Jan Doornaert jan.doornaert at
Tue Oct 2 12:55:12 CEST 2007


The Pentium-M supports the P4 instruction set, but some instructions
which are very "efficient" on the P4 are rather "inefficient" in the P-M.
So code optimised for the P4 may run slower than code optimised for the
I think there's support for the P-M in GCC, though I don't know from
which version on.

BTW: I was not aware to have replied in private to you - will reply to
everyone from now on (I blame it on the clunky interface ;-).

The floating mode may indeed bite you - as I develop, compile and run
under Linux (Ubuntu), I'm afraid I cannot be of much help to you there...


  ----- Original Message -----
  From: "Josh Scholar"
  To: "Jan Doornaert"
  Subject: Re: Pentium M and P4 question / and a failed test
  Date: Mon, 1 Oct 2007 15:25:36 -0700

  On 10/1/07, Jan Doornaert <jan.doornaert at> wrote:


    The Pentium-M is derived from the PIII core, with some features
    of the P4 added (like SSE2). For more technical info:

    As for the long build time: if it's not the processor (Banias?
    Dothan? GHz?) that's throttling performance, it probably is the
    (lack of) memory.
    How much is there - and how much is actually useable (subtract
    video memory for shared memory cards!)?

    CU, JDO

  Thank you for your answer.  According to the docs I have the Pentium
  M has the same instruction set as the Pentium 4.  I thought that
  maybe the Pentium 4 code was using the new instructions that the P M
  also has..  But maybe that's not what the optimization consists of,
  maybe it's a matter of optimizing the pipeline or something.

  As for the long build, the problem was that sys-internal's Process
  Explorer, for some reason decided not to count the time that the
  processor was spending in the MSys shell and subprocesses.  So while
  I thought the processor was only half busy, it was really reporting
  that half of the processor usage was in FireFox (wasting cycles on
  flash adverts and javascript). So that must have doubled my build

  I have more questions, but I should probably post them on the list.

  One weirdness is that it's my understanding the GCC expects the
  processor to be in 80 bit float mode (not rounding till store) but
  I'm driving GMP from a Visual C program, and Visual C sets the mode
  to 64 bit float mode.  I wonder if that (calling GCC compiled
  routines from Visual C programs) can cause any problems in GMP. 

  Josh Scholar

We've Got Your Name at !
Get a FREE E-mail Account Today - Choose From 100+ Domains

-------------- next part --------------
An HTML attachment was scrubbed...

More information about the gmp-discuss mailing list