Karim Belabas on Sun, 30 Sep 2012 22:46:18 +0200 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: timing in GP |
* Loïc Grenié [2012-09-30 22:18]: > 2012/9/30 Bill Allombert <Bill.Allombert@math.u-bordeaux1.fr>: > > 2) the gettime interface: > > The problem is that it is not reentrant. > > Let say you write functions: > > zet(N,s)=gettime();my(s=sum(n=1,N,n^-s));print("sum:",gettime());s > > vecz(N,n)=gettime();my(v=vector(n,t,zet(N,.5+I*t)));print("vec:",gettime());v [...] > > The final time is wrong. > > > > We should provide a version of gettime that return the time in microseconds > > since the start of the GP session so we could do > > t=gettime2();....;print(gettime2()-t; > > I think getabstime() or something similar would be better but in general > it's a good idea. It would return a t_INT, I suppose; not a C long as gettime does. Otherwise it would wrap within less than an hour on 32-bit archs :-) > > We could also provide a function printtime(t,s,...) which would do > > print("Time ",s," :",gettime2()-t); > > Is it really necessary ? I don't think so either. Cheers, K.B. -- Karim Belabas, IMB (UMR 5251) Tel: (+33) (0)5 40 00 26 17 Universite Bordeaux 1 Fax: (+33) (0)5 40 00 69 50 351, cours de la Liberation http://www.math.u-bordeaux1.fr/~belabas/ F-33405 Talence (France) http://pari.math.u-bordeaux1.fr/ [PARI/GP] `