phetsims / number-play

"Number Play" is an educational simulation in HTML5, by PhET Interactive Simulations.
GNU General Public License v3.0
3 stars 1 forks source link

Brief pause when continuously adding/removing objects on iPad #227

Closed Nancy-Salpepi closed 1 year ago

Nancy-Salpepi commented 1 year ago

Test device iPad

Operating System 16.4.1

Browser Safari

Problem description For https://github.com/phetsims/qa/issues/929, on the Ten and Twenty Screen with "Automatically Hear Total" on, there is a brief pause when I hold down the arrow to increase/decrease the number of objects in the play area.

EDIT: I don't see this issue when Audio features or "Automatically Hear Total" are off.

Steps to reproduce

  1. Turn on "Automatically Hear Total"
  2. On the Twenty Screen, hold down the up arrow
  3. Hold down the down arrow

Visuals

https://user-images.githubusercontent.com/87318828/230952082-ca22f42a-df0a-415b-9f6c-bc340954d74f.mov

Troubleshooting information: !!!!! DO NOT EDIT !!!!! Name: ‪Number Play‬ URL: https://phet-dev.colorado.edu/html/number-play/1.1.0-rc.1/phet/number-play_all_phet.html Version: 1.1.0-rc.1 2023-04-07 16:57:36 UTC Features missing: applicationcache, applicationcache, touch Flags: pixelRatioScaling User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Safari/605.1.15 Language: en-US Window: 1258x705 Pixel Ratio: 2/1 WebGL: WebGL 1.0 GLSL: WebGL GLSL ES 1.0 (1.0) Vendor: WebKit (WebKit WebGL) Vertex: attribs: 16 varying: 30 uniform: 1024 Texture: size: 16384 imageUnits: 16 (vertex: 16, combined: 32) Max viewport: 16384x16384 OES_texture_float: true Dependencies JSON: {}
chrisklus commented 1 year ago

From 4/11 standup with @zepumph and @Nancy-Salpepi:

We can try tethering @chrisklus's iPhone and profile what's going on during that lag.

zepumph commented 1 year ago

@Nancy-Salpepi reports not seeing this on her mac or chromebook. Thanks!

samreid commented 1 year ago

@zepumph @chrisklus and I were able to reproduce the problem on iPad A2197. In my opinion, the stutter isn't too distracting to break up the user experience. Still, we wanted to see the explanation. We tethered to Safari, and did performance recordings. It was more difficult to trigger the problem with the performance profiling enabled, but we were able to catch it several times. In those cases, it looks like this:

image

Surprisingly, over these ~500ms, the JS + Layout only accounts for around 100ms. So it is not able to show us where/why the time is being consumed for this problem.

chrisklus commented 1 year ago

Thanks @samreid! With no information from the profiler to keep debugging, and that this bug is not super distracting, and based on our publication timeline, @zepumph and @samreid and I think we've spent enough time on this and are good to close. Thanks @Nancy-Salpepi!