{"action":"created","issue":{"url":"https://api.github.com/repos/highfidelity/hifi/issues/10618","repository_url":"https://api.github.com/repos/highfidelity/hifi","labels_url":"https://api.github.com/repos/highfidelity/hifi/issues/10618/labels{/name}","comments_url":"https://api.github.com/repos/highfidelity/hifi/issues/10618/comments","events_url":"https://api.github.com/repos/highfidelity/hifi/issues/10618/events","html_url":"https://github.com/highfidelity/hifi/pull/10618","id":233457976,"number":10618,"title":"Optimized NVTT library with fast gamma conversion","user":{"login":"kencooke","id":13965157,"avatar_url":"https://avatars2.githubusercontent.com/u/13965157?v=3","gravatar_id":"","url":"https://api.github.com/users/kencooke","html_url":"https://github.com/kencooke","followers_url":"https://api.github.com/users/kencooke/followers","following_url":"https://api.github.com/users/kencooke/following{/other_user}","gists_url":"https://api.github.com/users/kencooke/gists{/gist_id}","starred_url":"https://api.github.com/users/kencooke/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kencooke/subscriptions","organizations_url":"https://api.github.com/users/kencooke/orgs","repos_url":"https://api.github.com/users/kencooke/repos","events_url":"https://api.github.com/users/kencooke/events{/privacy}","received_events_url":"https://api.github.com/users/kencooke/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-06-04T20:35:13Z","updated_at":"2017-06-04T20:58:31Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/highfidelity/hifi/pulls/10618","html_url":"https://github.com/highfidelity/hifi/pull/10618","diff_url":"https://github.com/highfidelity/hifi/pull/10618.diff","patch_url":"https://github.com/highfidelity/hifi/pull/10618.patch"},"body":"When creating mipmaps, NVTT spends a huge amount of CPU calling powf() to remove and reapply gamma. This seems to cause a slow startup when entering an uncached/unbaked domain. Texture filtering in linear-light does give a noticeable improvement in texture quality.\r\n\r\nThis PR adds very fast approximations of powf(x, 2.2f) and powf(x, 1/2.2f) with vectorized implementations for SSE2, that are ~15x faster than powf() on i7-4770k with no loss of quality (relative accuracy > 16 bits). The approximation error is shown below.\r\n\r\nMy changes to NVTT are checked in here:\r\nhttps://github.com/kencooke/nvidia-texture-tools/commit/96b73af196bdece35bcfaa8987d2713fdd656995\r\n\r\n\r\n![pow_11_5_poly5](https://cloud.githubusercontent.com/assets/13965157/26765089/6cfc7e62-4929-11e7-928c-44a955770506.png)\r\n![pow_5_11_poly5](https://cloud.githubusercontent.com/assets/13965157/26765091/731bfeda-4929-11e7-9153-7f094aa7dda7.png)\r\n"},"comment":{"url":"https://api.github.com/repos/highfidelity/hifi/issues/comments/306066537","html_url":"https://github.com/highfidelity/hifi/pull/10618#issuecomment-306066537","issue_url":"https://api.github.com/repos/highfidelity/hifi/issues/10618","id":306066537,"user":{"login":"hifi-gustavo","id":4554450,"avatar_url":"https://avatars3.githubusercontent.com/u/4554450?v=3","gravatar_id":"","url":"https://api.github.com/users/hifi-gustavo","html_url":"https://github.com/hifi-gustavo","followers_url":"https://api.github.com/users/hifi-gustavo/followers","following_url":"https://api.github.com/users/hifi-gustavo/following{/other_user}","gists_url":"https://api.github.com/users/hifi-gustavo/gists{/gist_id}","starred_url":"https://api.github.com/users/hifi-gustavo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hifi-gustavo/subscriptions","organizations_url":"https://api.github.com/users/hifi-gustavo/orgs","repos_url":"https://api.github.com/users/hifi-gustavo/repos","events_url":"https://api.github.com/users/hifi-gustavo/events{/privacy}","received_events_url":"https://api.github.com/users/hifi-gustavo/received_events","type":"User","site_admin":false},"created_at":"2017-06-04T20:58:31Z","updated_at":"2017-06-04T20:58:31Z","body":"Windows build is available at: https://deployment.highfidelity.com/jobs/pr-build/label%3Dwindows/407/HighFidelity-Beta-PR10618-024499bdc440acd1112946935244af1b6b5fc79d.exe"}}
{"actor":{"display_login":"hifi-gustavo"}}