Bug 52820
| Summary: | REGRESSION(nightly build): My asteroids WebGL game pauses frequently beneath CALayerDisplayIfNeeded | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | astrodud |
| Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED WONTFIX | ||
| Severity: | Major | CC: | ap, bfulgham, cmarrin, ggaren, kbr, simon.fraser, zmo |
| Priority: | P2 | ||
| Version: | 528+ (Nightly build) | ||
| Hardware: | Mac (Intel) | ||
| OS: | OS X 10.6 | ||
| URL: | http://astrodud.isgreat.org/asteroids/?speed=default | ||
astrodud
The previous nightly worked great but with the latest nightly build, my WebGL game pauses frequently (I'm assuming because of garbage collection).
Nothing in my game's code has changed between the two tests.
Please see http://astrodud.isgreat.org/asteroids/?speed=default for an example.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Geoffrey Garen
Is there anything special you need to do to get the game to pause?
Geoffrey Garen
I sample a nightly running this app. I saw a little GC activity in the sample, but this backtrace was 17X more prominent:
7718 Thread_390378 DispatchQueue_1: com.apple.main-thread (serial)
6412 0x10000a1c0
6412 NSApplicationMain
6412 -[NSApplication run]
6412 0x1000162f4
6412 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
6412 _DPSNextEvent
6412 BlockUntilNextEventMatchingListInMode
6412 ReceiveNextEventCommon
6412 RunCurrentEventLoopInMode
6412 CFRunLoopRunSpecific
6412 __CFRunLoopRun
5991 __CFRunLoopDoObservers
5956 CA::Transaction::commit()
5955 CA::Context::commit_transaction(CA::Transaction*)
5954 CALayerDisplayIfNeeded
5921 -[WebGLLayer display]
5916 -[CAOpenGLLayer _display]
5897 CAOpenGLLayerDraw(CAOpenGLLayer*, double, CVTimeStamp const*, unsigned int)
5806 -[WebGLLayer drawInCGLContext:pixelFormat:forLayerTime:displayTime:]
5777 glFinish_Exec
5774 gldFinish
5756 IOConnectCallMethod
5756 io_connect_method
5750 mach_msg
5750 mach_msg_trap
astrodud
(In reply to comment #1)
> Is there anything special you need to do to get the game to pause?
Press 'p'.
astrodud
(In reply to comment #1)
> Is there anything special you need to do to get the game to pause?
By 'pause' I mean very short interruptions in the otherwise smooth animation.
Not sure if it's caused by gc (that was just an assumption).
Seems to happen every couple of seconds and is quite short (fractions of a second).
astrodud
(In reply to comment #3)
> (In reply to comment #1)
> > Is there anything special you need to do to get the game to pause?
>
> Press 'p'.
Oops, misunderstood your question here.
Simon Fraser (smfr)
> with the latest nightly build
Do you have the build number handy?
Brent Fulgham
Closing due to no activity, and inability to access the sample case. The game URL redirects to a link farm now.
Please reopen with new information if you still encounter this problem on a recent nightly.