phetsims / gene-expression-essentials

An educational simulation about how genes work to create proteins.
GNU General Public License v3.0
4 stars 6 forks source link

Safari on 10.9.5 slow dragging performance #111

Closed brroberts1231 closed 6 years ago

brroberts1231 commented 6 years ago

Test device: Dirac

Operating System: 10.9.5

Browser: Safari

Problem description: Once there are enough objects floating around on the screen (usually at least a dozen), dragging objects will begin to have very poor performance. The animation of things floating around doesn't seem to degrade, and the frame rate doesn't drop much, but objects you drag around won't follow the cursor well, if at all.

Screenshots: gene-expression

For phetsims/QA#68 Troubleshooting information (do not edit): Name: ‪Gene Expression Essentials‬ URL: https://www.colorado.edu/physics/phet/dev/html/gene-expression-essentials/1.0.0-rc.1/gene-expression-essentials_en.html?profiler Version: 1.0.0-rc.1 2017-11-14 01:00:23 UTC Features missing: touch User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/601.1.56 (KHTML, like Gecko) Version/9.0 Safari/537.86.1 Language: en-us Window: 1279x606 Pixel Ratio: 1/1 WebGL: WebGL 1.0 (2.1 INTEL-8.24.17) GLSL: WebGL GLSL ES 1.0 (1.20) Vendor: WebKit (WebKit WebGL) Vertex: attribs: 16 varying: 15 uniform: 1024 Texture: size: 4096 imageUnits: 16 (vertex: 16, combined: 16) Max viewport: 8192x8192 OES_texture_float: true Dependencies JSON: {"assert":{"sha":"928741cf","branch":"HEAD"},"axon":{"sha":"80b60293","branch":"HEAD"},"babel":{"sha":"0421d844","branch":"master"},"brand":{"sha":"cfca902d","branch":"HEAD"},"chipper":{"sha":"6b338220","branch":"HEAD"},"dot":{"sha":"85ef2bbf","branch":"HEAD"},"gene-expression-essentials":{"sha":"a5872a07","branch":"HEAD"},"griddle":{"sha":"6f1477b5","branch":"HEAD"},"joist":{"sha":"ea429056","branch":"HEAD"},"kite":{"sha":"2c921cba","branch":"HEAD"},"phet-core":{"sha":"c30d15ed","branch":"HEAD"},"phetcommon":{"sha":"b13138d2","branch":"HEAD"},"query-string-machine":{"sha":"c74e454e","branch":"HEAD"},"scenery":{"sha":"92a2872d","branch":"HEAD"},"scenery-phet":{"sha":"d394b9df","branch":"HEAD"},"sherpa":{"sha":"0d590744","branch":"HEAD"},"sun":{"sha":"99a0abef","branch":"HEAD"},"tandem":{"sha":"c1e98f69","branch":"HEAD"}}

arnabp commented 6 years ago

I'm experiencing this problem in OS X 10.11 as well, but only in safari (firefox and chrome run just fine). The issue becomes most prominent specifically during the mRNA transcription animation. During the animation, dragging becomes basically non-responsive.

brroberts1231 commented 6 years ago

Not seeing this on 10.10.5, however

ariel-phet commented 6 years ago

@jbphet this seems like it should be investigated. I would be less concerned if it were only an issue for 10.9.5, but a bit disconcerting that it is happening with latest Mac OS.

It would be good to understand what is causing the issue.

jbphet commented 6 years ago

Okay, sounds good, I'll take a look.

jbphet commented 6 years ago

I was able to duplicate this on the Macbook named "Magnus", OS version 10.11.6 "El Capatain", Safari version 9.1.2. This is a fairly old Safari version, so @phet-steele did an upgrade to Safari version 11.0.2, and the problem went away. We need to figure out the Safari versions where this problem manifests.

jbphet commented 6 years ago

@arnabp - can we get exact versions of the OS and Safari where you saw the problem?

jbphet commented 6 years ago

Here is a table of where we have and haven't seen the problem:

OS version Safari Version Problem Exists?
10.9.5 9.0 yes
10.10.5 9.0.1 no
10.10.5 10.1.2 no
10.11 9.0 yes
10.11.6 9.1.2 yes
10.11.6 11.0.2 no

Edit: I'm adding more entries as more is learned

jbphet commented 6 years ago

This keeps getting weirder. We have now seen the problem go away on a device - Dirac, Mac OS 10.9.5, Safari 9.0. The problem came back once the device was rebooted. But it gets worse. We have had a case on that same device where the problem was occurring in one tab and not occurring in another, and we could switch back and forth between the two tabs, duplicate it one, and then not be able to duplicate it in the other.

jbphet commented 6 years ago

@ariel-phet - @jonathanolson and I just spent a couple hours on this, and we don't see any obvious solution yet. It seem to be something deep in the internals of Safari about how it prioritizes user input events, yet we're not finding anything about it on line. Do you have any guidance about how much time to spend on this?

arnabp commented 6 years ago

My browser version was Safari 9.0 (11601.1.35.2) and my OS was Mac 10.11 (15A204h)

jbphet commented 6 years ago

I've duplicated a scenario several times on Dirac, OS 10.9.5, Safari 9.0 where I close Safari, open it, run the sim in the first tab and it exhibits the problem, then leave that tab in place and open a new one and run the sim and it's fine. I've also done it without loading the sim in the first tab and it still runs fine in the 2nd. This calls into question the results above, since it occurs in different situations on the same machine/OS/browser.

ariel-phet commented 6 years ago

@phet-steele - sounds like we will be dropping 10.9 OS support.

For MacOS 10.11 (where the problem is seen) can Safari always be updated to a later version? If so we can consider ignoring the issue, since we always encourage user to be on the latest browser version

phet-steele commented 6 years ago

For MacOS 10.11 (where the problem is seen) can Safari always be updated to a later version?

Yes.

If so we can consider ignoring the issue, since we always encourage user to be on the latest browser version

Yes, we can consider this. However, since the time the table in https://github.com/phetsims/gene-expression-essentials/issues/111#issuecomment-350051657 was made, more uncertainty has clouded this issue, see https://github.com/phetsims/gene-expression-essentials/issues/111#issuecomment-350111061 and https://github.com/phetsims/gene-expression-essentials/issues/111#issuecomment-350126790. We cannot say for certain anymore if upgrading to the latest version of Safari will do anything for the user.

@jbphet has instructed members of the QA team, including myself, of the ways in which this issue arises. The end goal of an investigation would be a definitive answer on the issue's occurrence in later Safari versions. As of now, it still may be entirely possible to get this problem on the latest and greatest.

@ariel-phet how would you advise QA to move forward? Dig into the reasons of why https://github.com/phetsims/gene-expression-essentials/issues/111#issuecomment-350111061 may be happening, then apply that knowledge to later versions? Or defer?

ariel-phet commented 6 years ago

@phet-steele I would like QA to dig in a bit more. Let's see if QA can do the following:

  1. Get some clearly reproducible cases & steps of this occurring on 10.11

  2. Identify if the latest Safari avoid the issues with these steps.

  3. If latest Safari shows the issue we will get some of JO's time, but it would be good to have some clearer data on the "definitive" steps to recreate the problem.

Time to put your detective hat on...

phet-steele commented 6 years ago

See the above linked issue and my comment: https://github.com/phetsims/QA/issues/76#issuecomment-351450337.

Two full days of looking into this is enough @ariel-phet. Nothing has ever shown to occur in Safari versions greater than Safari 9. And again, OSes greater than 10.9 are able to update to at least Safari 10. So...

Get some clearly reproducible cases & steps of this occurring on 10.11

  1. See https://github.com/phetsims/QA/issues/76#issuecomment-351211002

Identify if the latest Safari avoid the issues with these steps.

It does avoid the issue.

If latest Safari shows the issue we will get some of JO's time, but it would be good to have some clearer data on the "definitive" steps to recreate the problem.

No need for another round of JO!

We should not bother with this for publication.