<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
I solved this by coercing <br>
<pre wrap="">(get-internal-real-time)</pre>
into a double float.<br>
<br>
<div class="moz-cite-prefix">Looks like the epoch start time for
these functions is different from lisp to lisp.<br>
<br>
ACL: (get-internal-real-time) => 8456209511<br>
ABCL: (get-internal-real-time) => 1401814359707<br>
<br>
Does anyone know the date from which the value for
(get-internal-real-time) is computed for abcl?<br>
</div>
<blockquote cite="mid:87lhtfqk2y.fsf@gmail.com" type="cite">
<pre wrap="">bonasso <a class="moz-txt-link-rfc2396E" href="mailto:bonasso@traclabs.com"><bonasso@traclabs.com></a> writes:
</pre>
<blockquote type="cite">
<pre wrap="">The RAPs system I'm running in abcl makes extensive use of the
difference between two sequential get-internal-real-time calls. But I
get significantly different results in abcl than in acl.
Here's an example:
In acl:
CL-USER(24): (setf foo (/ (get-internal-real-time)(float
internal-time-units-per-second)))
8212185.5
CL-USER(25): (setf bar (/ (get-internal-real-time)(float
internal-time-units-per-second)))
8212195.0
CL-USER(26): (- bar foo)
9.5 ;; nine+ seconds
In abcl:
CL-USER(15): (setf foo (/ (get-internal-real-time)(float
internal-time-units-per-second)))
1.40157018E9
CL-USER(16): (setf bar (/ (get-internal-real-time)(float
internal-time-units-per-second)))
1.40157018E9
CL-USER(17): (- bar foo)
0.0 ;; 0 seconds
Thus, lots of time has to elapse between the calls before any
difference is produced. (/ (get-internal-real-time)(float
internal-time-units-per-second)) is the primitive time call used in
the RAPs system.
Of course the first thing I noticed is that the single floats in acl
don't have the E notation.
Is there a setting in abcl I can use to get the same behavior as in
acl, or is there another problem going on?
</pre>
</blockquote>
<pre wrap="">(get-internal-real-time) => 1401731099641, that's too big to be
represented precisely as a single float. double float will work better.
And better divide by internal-time-units-per-second before doing
division. Even better would be to avoid converting into floats.
</pre>
</blockquote>
<br>
</body>
</html>