{"action":"created","issue":{"url":"https://api.github.com/repos/eternaldensity/Sandcastle-Builder/issues/1367","labels_url":"https://api.github.com/repos/eternaldensity/Sandcastle-Builder/issues/1367/labels{/name}","comments_url":"https://api.github.com/repos/eternaldensity/Sandcastle-Builder/issues/1367/comments","events_url":"https://api.github.com/repos/eternaldensity/Sandcastle-Builder/issues/1367/events","html_url":"https://github.com/eternaldensity/Sandcastle-Builder/issues/1367","id":102233429,"number":1367,"title":"Performance Tuning","user":{"login":"LuminousLeopards","id":11369983,"avatar_url":"https://avatars.githubusercontent.com/u/11369983?v=3","gravatar_id":"","url":"https://api.github.com/users/LuminousLeopards","html_url":"https://github.com/LuminousLeopards","followers_url":"https://api.github.com/users/LuminousLeopards/followers","following_url":"https://api.github.com/users/LuminousLeopards/following{/other_user}","gists_url":"https://api.github.com/users/LuminousLeopards/gists{/gist_id}","starred_url":"https://api.github.com/users/LuminousLeopards/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/LuminousLeopards/subscriptions","organizations_url":"https://api.github.com/users/LuminousLeopards/orgs","repos_url":"https://api.github.com/users/LuminousLeopards/repos","events_url":"https://api.github.com/users/LuminousLeopards/events{/privacy}","received_events_url":"https://api.github.com/users/LuminousLeopards/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-08-20T20:47:12Z","updated_at":"2015-12-10T02:33:43Z","closed_at":null,"body":"http://imgur.com/laAyp9F\r\n\r\nHere's a CPU profile. You can see that the great majority of the processor load happens on the mNP tick. What I am wondering is whether it would be feasible to move some of the CPU-intensive calculations to a new function that runs opposite Molpy.Think/Molpy.Draw. That would spread out the computational load so those peaks aren't so high. Obviously Molpy.Draw itself would have to run on the mNP tick but I don't see a reason some of the background information can't be pre-calculated and stored between ticks.\r\n\r\nI noticed some time ago that Molpy.getScrolLoc and Molpy.setScrollLoc are very processor-intensive but I have had them disabled for a couple weeks and have tested with different layouts and in classic, and haven't seen anything break. I'm not entirely clear what they're supposed to do, actually.\r\n\r\nAnother thing to keep in mind is to add Molpy.Anything = 1 within functions wherever possible. That will prevent it from getting called 30 times per second."},"comment":{"url":"https://api.github.com/repos/eternaldensity/Sandcastle-Builder/issues/comments/163467023","html_url":"https://github.com/eternaldensity/Sandcastle-Builder/issues/1367#issuecomment-163467023","issue_url":"https://api.github.com/repos/eternaldensity/Sandcastle-Builder/issues/1367","id":163467023,"user":{"login":"pickten","id":6465870,"avatar_url":"https://avatars.githubusercontent.com/u/6465870?v=3","gravatar_id":"","url":"https://api.github.com/users/pickten","html_url":"https://github.com/pickten","followers_url":"https://api.github.com/users/pickten/followers","following_url":"https://api.github.com/users/pickten/following{/other_user}","gists_url":"https://api.github.com/users/pickten/gists{/gist_id}","starred_url":"https://api.github.com/users/pickten/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pickten/subscriptions","organizations_url":"https://api.github.com/users/pickten/orgs","repos_url":"https://api.github.com/users/pickten/repos","events_url":"https://api.github.com/users/pickten/events{/privacy}","received_events_url":"https://api.github.com/users/pickten/received_events","type":"User","site_admin":false},"created_at":"2015-12-10T02:33:43Z","updated_at":"2015-12-10T02:33:43Z","body":"Now clicking buttons scrolls you to the top of the page. Could this be what that function tried to resolve?"}}