[cello-devel] High CPU load also on Linux!

Frank Goenninger frank_goenninger at t-online.de
Wed Mar 10 22:13:12 UTC 2004

On Wed, 2004-03-10 at 22:35, Frank Goenninger wrote:

> Yep. I think we actually have one. A beast. But some ideas hereto:
> You already coded an idle callback function and also get the "OS 
> real time" in that function. So why not just save the realtime when
> a redisplay has been posted? The next redisplay only gets posted if
> there is a certain difference between the last posting and the current
> one!
> This difference should be settable such that one can tune the app
> here to differing needs.
> Will try that and report back.

Tried. No luck. What I did:

(defun w-post-redisplay (self)
  (let ((w (glut-get-window))
        (gw (glutw self)))
    (c-assert gw)
    (glut-set-window gw)
    (count-it :post-redisplay)

    ;; HACK: ADDED by frgo ...
    (when (> (- (os-TickCount) (tickCount self)) 100000)
      (print "Posting REDISPLAY !")      
      (trc nil "posting redisplay" self (glutw self) :currentw w)
      (setf (tickCount self) (os-TickCount)))
    (c-assert w)
    (glut-set-window w)))

With that I do receive only very rarely that "Posting REDISPLAY !" 
message. CPU load remains high.

No switching to searching in freeglut. But not today. There's some
real business waiting still to be done, unfortunately.

Offline until weekend!

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <https://mailman.common-lisp.net/pipermail/cello-devel/attachments/20040310/d8ade421/attachment.sig>

More information about the cello-devel mailing list