again i'm wrong :(

On Friday, August 4, 2017 at 10:30:14 AM UTC+3, Sebastien Binet wrote:
>
>
>
> On Fri, Aug 4, 2017 at 9:24 AM, <dja...@gmail.com <javascript:>> wrote:
>
>> Ok, 
>> i'm not right,pow in C is :
>> float powf(float x, float y);
>>        long double powl(long double 
>>
>> use float32 pow for proper comparison or use powl for C double wersion.
>>
>
> C'pow is with doubles (like Go's math.Pow):
>  https://linux.die.net/man/3/pow
>
> ```
> Synopsis
>
> #include <math.h>
>
> double pow(double x, double y);
> ```
>
> -s
>
>
>> This is demonstartion how when you use go long time, you lose ability to 
>> read other languages :)
>>
>>
>> On Friday, August 4, 2017 at 10:15:06 AM UTC+3, dja...@gmail.com wrote:
>>>
>>> You are comparing apples to oranges( integer vs float64 pow),
>>> use integer pow and compare again:
>>>
>>>
>>> func Pow(a, b int) int {
>>>          p := 1
>>>          for b > 0 {
>>>                  if b&1 != 0 {
>>>                          p *= a
>>>                  }
>>>                  b >>= 1
>>>                  a *= a
>>>          }
>>>          return p
>>> }
>>>
>>>
>>> On Friday, August 4, 2017 at 9:20:41 AM UTC+3, Dorival Pedroso wrote:
>>>>
>>>> I've noticed that this C code:
>>>>
>>>> #include "math.h"
>>>> int main() {
>>>>         double x = 2.5;
>>>>         int Nmax = 10000000;
>>>>         for (int N=0; N<Nmax; N++) {
>>>>                 for (int i=0; i<20; i++) {
>>>>                         pow(x, i);
>>>>                 }
>>>>         }
>>>> }
>>>>
>>>> can run up to 50x faster than this Go code:
>>>>
>>>> package main
>>>>
>>>> import "math"
>>>>
>>>> func main() {
>>>> x := 2.5
>>>> Nmax := 10000000
>>>> for N := 0; N < Nmax; N++ {
>>>> for i := 0; i < 20; i++ {
>>>> math.Pow(x, float64(i))
>>>> }
>>>> }
>>>> }
>>>>
>>>> The C code was compiled with: gcc -O2 ccode.c -o ccode -lm
>>>> then run with time ./ccode
>>>>
>>>> The Go code was compiled with: go build gcode.go
>>>> then run with  time ./gcode
>>>>
>>>> I've used the time command on Linux (Ubuntu) to get some estimate.
>>>>
>>>> So the question is: how can we make the Go code faster?
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "golang-nuts" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to golang-nuts...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to