On Sun, May 12, 2013 at 9:02 PM, Nikita Popov <nikita....@gmail.com> wrote:

> I think this is a misunderstanding. I do not suggest to use GMP for all
> arithmetic and also do not suggest to auto-promote to GMP for large numbers.
>
> The operator overloading only comes into play if one of the operands is
> already a GMP instance.
>
> Regarding performance: The addition of the operator overloading does have
> a measurable impact on performance.
>
Ooops, that was a typo. I wanted to say "does NOT have a measurable impact
on performance".


> The switch of GMP from resources to objects also does not show any clear
> change either way. What does become faster is if a gmp function gets a
> non-gmp argument and needs to cast it to GMP (this is faster because now
> only the mpz_t instance is created and not a full resource). Obviously when
> the overloaded operators are used rather than the functions it's faster too.
>
I tweaked the implementation a bit and now it seems to be faster in any
case. I added some numbers in
https://wiki.php.net/rfc/operator_overloading_gmp#performance

Nikita

Reply via email to