Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sdd.hp.com!spool.mu.edu!uunet!orca!undies!pmartz From: pmartz@undies.dsd.es.com (Paul Martz) Newsgroups: comp.sys.sgi Subject: How to time v3f, etc. (was: n3f v3f timing) Message-ID: <1991Apr29.173254.18921@dsd.es.com> Date: 29 Apr 91 17:32:54 GMT Article-I.D.: dsd.1991Apr29.173254.18921 References: <15146@darkstar.ucsc.edu> <1991Apr29.154346.6866@odin.corp.sgi.com> Sender: usenet@dsd.es.com Reply-To: pmartz@undies.dsd.es.com (Paul Martz) Organization: Evans & Sutherland Computer Corp., Salt Lake City, UT Lines: 21 Nntp-Posting-Host: 130.187.85.56 In article <1991Apr29.154346.6866@odin.corp.sgi.com>, kurt@cashew.asd.sgi.com (Kurt Akeley) writes: > The n3f/v3f calls block only until the vector data have been copied from > your data space, not until the drawing commands have actually been > completed. Typically the data are copied to the head of a several hundred > word fifo, which tail is connected to the graphics hardware. Suppose I'm trying to time my performance. Let's say I get the current clock time in milliseconds, then I send down several bgnpoly()'s, v3f()'s, and endpoly()'s. Then I get the clock time in milliseconds again, subtract it from the start time, and divide by the number of polygons. What have I just timed? Have I timed copying data to a fifo, or have I timed the actual drawing? Does calling endpoly() block until the fifo is empty? If not (and I hope not), what gl function can I call which will? (swapbuffers() wouldn't be what I'd want, because I don't want buffer swaps included in the timing.) -- -paul pmartz@dsd.es.com Evans & Sutherland