summaryrefslogtreecommitdiffstats
path: root/cc/ThrottledTextureUploader.cpp
Commit message (Collapse)AuthorAgeFilesLines
* cc: Measure texture upload time individually.brianderson@chromium.org2012-10-031-24/+23
| | | | | | | | | | | | | Measures each texture's upload time idividually to calculate an expected texture upload rate. Removes the need for beginUpload and endUpload. BUG=152631 Review URL: https://chromiumcodereview.appspot.com/11031018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159837 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Never block on uploads from previous frame and increase max pending uploads.reveman@chromium.org2012-10-021-5/+33
| | | | | | | | | | | | | | | | By discarding pending uploads after drawing we allow multiple frames with reasonable amounts of uploads in the pipeline at the same time. Also increase maxPendingUpdateIntervals to allow an estimated 16ms of texture uploads per frame without blocking. BUG=152631 TEST=manual Review URL: https://chromiumcodereview.appspot.com/11008017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159654 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Move max pending uploads decision to update controller.reveman@chromium.org2012-09-291-29/+14
| | | | | | | | | | | | | | | | | | Replace TextureUploader::isBusy() function with TextureUploader::pendingUploads() so that the update controller can instead make the decision about how many pending uploads to allow. Use number of uploads rather than number of queries to determine when more uploads are allowed. This provides more fare scheduling of small upload batches. BUG=145825 TEST=cc_unitests Review URL: https://chromiumcodereview.appspot.com/10989040 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@159418 0039d316-1c4b-4281-b951-d872f2087c98
* cc: Do not report old query values when reusedbrianderson@chromium.org2012-09-201-0/+1
| | | | | | | | | BUG=150881 Review URL: https://chromiumcodereview.appspot.com/10957007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157698 0039d316-1c4b-4281-b951-d872f2087c98
* Adaptively throttle texture uploadsbrianderson@chromium.org2012-09-191-5/+62
| | | | | | | | | | | | | | | | | We need adaptive texture uploading because we run on a wide variety of systems and a one size fits all policy will not work. This patch maintains a tick rate of 4ms and default upload count of 12 textures per tick, but allows for more textures per tick if we've measured that we can be faster. The number of partial updates allowed is also communicated from the impl thread to the main thread at the beggining of each frame. BUG=145825 Review URL: https://chromiumcodereview.appspot.com/10916292 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@157473 0039d316-1c4b-4281-b951-d872f2087c98
* Change cc files from namespace WebCore to ccenne@chromium.org2012-09-141-1/+1
| | | | | | | | | | | | | | | | | | These files no longer are part of WebCore, so it doesn't make any sense to keep that namespace. Due to being unable to forward declare typedefs in C++, the stubs files (like FloatSize) now define cc::FloatSize as being derived from WebCore::FloatSize. With enough constructors, this lets them be used interchangably in the short term until those geometry classes become real and not dependent on WebCore files. This allows (nearly) all the forward declarations and uses of these types in cc stay as-is with minimal churn. BUG=none Review URL: https://codereview.chromium.org/10914268 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@156905 0039d316-1c4b-4281-b951-d872f2087c98
* Here are gyp targets and stubs for compiling libcc and the webkit_compositor ↵jamesr@chromium.org2012-08-251-0/+118
bindings in chromium. Everything is guarded behind the off-by-default use_libcc_for_compositor gyp variable. I haven't included the actual code here, but there are scripts to sync. I plan to land + manually sync the code into place until we're ready to flip the gyp switch. Snapshot from r126652 BUG= Review URL: https://chromiumcodereview.appspot.com/10828381 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153354 0039d316-1c4b-4281-b951-d872f2087c98