aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/ops/GrAtlasTextOp.cpp
diff options
context:
space:
mode:
authorGravatar Jim Van Verth <jvanverth@google.com>2017-10-31 14:44:25 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-11-01 13:59:50 +0000
commit56c37143830d8318853663bf2bcd5bc99c960a75 (patch)
tree7816ca7f36b5b0170f46a678fd57c6fb5fd87c2c /src/gpu/ops/GrAtlasTextOp.cpp
parent503bdcda6ee5087f28416d31502118fbe550f63a (diff)
More attempts at clipping perf.
With the 1.5x allocation strategy, it can take more reallocations to reach a similar size as before. Increasing this initial size reduces the number of reallocations. Also reduce size of Geometry struct slightly. Bug: skia:7230 Change-Id: Ied3f275b01b07aa300e0b7e1f24abc5fc3853ea7 Reviewed-on: https://skia-review.googlesource.com/64500 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
Diffstat (limited to 'src/gpu/ops/GrAtlasTextOp.cpp')
-rw-r--r--src/gpu/ops/GrAtlasTextOp.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/gpu/ops/GrAtlasTextOp.cpp b/src/gpu/ops/GrAtlasTextOp.cpp
index f0a9300d9e..2383510a47 100644
--- a/src/gpu/ops/GrAtlasTextOp.cpp
+++ b/src/gpu/ops/GrAtlasTextOp.cpp
@@ -318,19 +318,19 @@ bool GrAtlasTextOp::onCombineIfPossible(GrOp* t, const GrCaps& caps) {
// Keep the batch vertex buffer size below 32K so we don't have to create a special one
// We use the largest possible vertex size for this
static const int kVertexSize = sizeof(SkPoint) + sizeof(SkColor) + 2 * sizeof(uint16_t);
- static const int kMaxGlyphs = 32768 / (4 * kVertexSize);
+ static const int kMaxGlyphs = 32768 / (kVerticesPerGlyph * kVertexSize);
if (this->fNumGlyphs + that->fNumGlyphs > kMaxGlyphs) {
return false;
}
fNumGlyphs += that->numGlyphs();
- // Reallocate space for geo data if necessary and then import that's geo data.
+ // Reallocate space for geo data if necessary and then import that geo's data.
int newGeoCount = that->fGeoCount + fGeoCount;
// We reallocate at a rate of 1.5x to try to get better total memory usage
if (newGeoCount > fGeoDataAllocSize) {
- int newAllocSize = fGeoDataAllocSize + fGeoDataAllocSize/2;
+ int newAllocSize = fGeoDataAllocSize + fGeoDataAllocSize / 2;
while (newAllocSize < newGeoCount) {
newAllocSize += newAllocSize / 2;
}