Path: chuka.playstation.co.uk!news From: James Russell Newsgroups: scee.yaroze.beginners Subject: Re: GPU timeout Date: Tue, 27 Jul 1999 10:00:42 +0100 Organization: Sony Computer Entertainment Europe Lines: 24 Message-ID: <379D753A.743D45F1@scee.sony.co.uk> References: <7nfo9d$i4m23@chuka.playstation.co.uk> NNTP-Posting-Host: mailgate.scee.sony.co.uk Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.51 [en] (Win95; I) X-Accept-Language: en Johan MacLeod wrote: > > Either a 2d graphics question or a beginners question. I thought that it > was more a beginners question, so I've posted to the beginners group :) > Question: Can a "GPU timeout" error be caused by not calling DrawSync(0) > after a non-blocking function? > I noticed that I had missed out a DrawSync(0) in my code, but as the > timeout only seems to happen when it feels like it, I have had no reliable > way of testing whether the problem was caused by the missing DrawSync(0) or > by another problem elsewhere. All help appreciated, GPU timeouts occur when the OT currently being drawn by the GPU gets corrupted. The OT contains pointers (it's essentially a linked list) to the pieces of data it has to send to the GPU, and if this gets corrupted then you get a GPU timeout. You must use DrawSync(0) to wait for the GPU to finish before re-using memory that the current OT is occupying. Alternatively, you can use ResetGraph(1) to break the GPU's operation (but obviously all your polygons won't get drawn!). James -- == James_Russell@scee.sony.co.uk ph: +44 (171) 447-1626 - fax: 390 4324 == Tools and Middleware Licensing Manager - Sony Computer Entertainment Europe This message was written by a Rubber Chicken and his family.