diff options
author | dmurph@chromium.org <dmurph@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-18 22:53:31 +0000 |
---|---|---|
committer | dmurph@chromium.org <dmurph@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-07-18 22:53:31 +0000 |
commit | baa5a89286a0d55e331a779ee6b2f2b5161252b2 (patch) | |
tree | 379b3801ee97cd17433805dd1c8e96bae9b70b22 /gpu/command_buffer_service.gypi | |
parent | 6c8e0471391c2061644e1eb1ec2808f2d23a1bea (diff) | |
download | chromium_src-baa5a89286a0d55e331a779ee6b2f2b5161252b2.zip chromium_src-baa5a89286a0d55e331a779ee6b2f2b5161252b2.tar.gz chromium_src-baa5a89286a0d55e331a779ee6b2f2b5161252b2.tar.bz2 |
Current status of patch:
- In-memory cache
- maximum in memory limit (currently 6mb)
- lru eviction
- Cache includes saving the attribute + uniform mappings
Wiring:
- Added bindings for glProgramBinary and glGetProgramBinary
- Plumbed the shader cache from gl_channel_manager to program_manager
Refactoring:
- moved the meat of DoCompile to the ProgramManager
New:
- added field to ShaderInfo to store if we have a possible pending cache compile
- exposed attrib_map and uniform_map in ShaderInfo for the cache
- program_cache base class with in-memory status storage
- Simple memory_program_cache implementation, stores programs with lru eviction
- Added caching logic to DoCompileShader in gles2_cmd_decoder and Link in program_manager
Design doc: https://docs.google.com/document/d/1Vceem-nF4TCICoeGSh7OMXxfGuJEJYblGXRgN9V9hcE/edit
BUG=88572
Review URL: https://chromiumcodereview.appspot.com/10534173
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@147328 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer_service.gypi')
-rw-r--r-- | gpu/command_buffer_service.gypi | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gpu/command_buffer_service.gypi b/gpu/command_buffer_service.gypi index 4fbd06f..46ffcf0 100644 --- a/gpu/command_buffer_service.gypi +++ b/gpu/command_buffer_service.gypi @@ -57,6 +57,8 @@ 'command_buffer/service/id_manager.cc', 'command_buffer/service/mailbox_manager.cc', 'command_buffer/service/mailbox_manager.h', + 'command_buffer/service/memory_program_cache.h', + 'command_buffer/service/memory_program_cache.cc', 'command_buffer/service/mocks.h', 'command_buffer/service/program_manager.h', 'command_buffer/service/program_manager.cc', @@ -64,6 +66,10 @@ 'command_buffer/service/query_manager.cc', 'command_buffer/service/renderbuffer_manager.h', 'command_buffer/service/renderbuffer_manager.cc', + 'command_buffer/service/program_cache.h', + 'command_buffer/service/program_cache.cc', + 'command_buffer/service/program_cache_lru_helper.h', + 'command_buffer/service/program_cache_lru_helper.cc', 'command_buffer/service/shader_manager.h', 'command_buffer/service/shader_manager.cc', 'command_buffer/service/shader_translator.h', |