aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/gpu
Commit message (Collapse)AuthorAge
* Revert of Add config options to run different GPU APIs to dm and nanobench ↵Gravatar joshualitt2015-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #18 id:340001 of https://codereview.chromium.org/1490113005/ ) Reason for revert: This CL changed 1200 images on gold, when I wouldn't expect any diffs from the description. Original issue's description: > Add config options to run different GPU APIs to dm and nanobench > > Add extended config specification form that can be used to run different > gpu backend with different APIs. > > The configs can be specified with the form: > gpu(api=string,dit=bool,nvpr=bool,samples=int) > > This replaces and removes the --gpuAPI flag. > > All existing configs should still work. > > Adds following documentation: > > out/Debug/dm --help config > > Flags: > --config: type: string default: 565 8888 gpu nonrendering > Options: 565 8888 debug gpu gpudebug gpudft gpunull msaa16 msaa4 > nonrendering null nullgpu nvprmsaa16 nvprmsaa4 pdf pdf_poppler skp svg > xps or use extended form 'backend(option=value,...)'. > > Extended form: 'backend(option=value,...)' > > Possible backends and options: > > gpu(api=string,dit=bool,nvpr=bool,samples=int) GPU backend > api type: string default: native. > Select graphics API to use with gpu backend. > Options: > native Use platform default OpenGL or OpenGL ES backend. > gl Use OpenGL. > gles Use OpenGL ES. > debug Use debug OpenGL. > null Use null OpenGL. > dit type: bool default: false. > Use device independent text. > nvpr type: bool default: false. > Use NV_path_rendering OpenGL and OpenGL ES extension. > samples type: int default: 0. > Use multisampling with N samples. > > Predefined configs: > > gpu = gpu() > msaa4 = gpu(samples=4) > msaa16 = gpu(samples=16) > nvprmsaa4 = gpu(nvpr=true,samples=4) > nvprmsaa16 = gpu(nvpr=true,samples=16) > gpudft = gpu(dit=true) > gpudebug = gpu(api=debug) > gpunull = gpu(api=null) > debug = gpu(api=debug) > nullgpu = gpu(api=null) > > BUG=skia:2992 > > Committed: https://skia.googlesource.com/skia/+/e13ca329fca4c28cf4e078561f591ab27b743d23 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1490113005 > > Committed: https://skia.googlesource.com/skia/+/c8b4336444e7b90382e04e33665fb3b8490b825b TBR=mtklein@google.com,bsalomon@google.com,scroggo@google.com,kkinnunen@nvidia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:2992 Review URL: https://codereview.chromium.org/1536963002
* Add config options to run different GPU APIs to dm and nanobenchGravatar kkinnunen2015-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add extended config specification form that can be used to run different gpu backend with different APIs. The configs can be specified with the form: gpu(api=string,dit=bool,nvpr=bool,samples=int) This replaces and removes the --gpuAPI flag. All existing configs should still work. Adds following documentation: out/Debug/dm --help config Flags: --config: type: string default: 565 8888 gpu nonrendering Options: 565 8888 debug gpu gpudebug gpudft gpunull msaa16 msaa4 nonrendering null nullgpu nvprmsaa16 nvprmsaa4 pdf pdf_poppler skp svg xps or use extended form 'backend(option=value,...)'. Extended form: 'backend(option=value,...)' Possible backends and options: gpu(api=string,dit=bool,nvpr=bool,samples=int) GPU backend api type: string default: native. Select graphics API to use with gpu backend. Options: native Use platform default OpenGL or OpenGL ES backend. gl Use OpenGL. gles Use OpenGL ES. debug Use debug OpenGL. null Use null OpenGL. dit type: bool default: false. Use device independent text. nvpr type: bool default: false. Use NV_path_rendering OpenGL and OpenGL ES extension. samples type: int default: 0. Use multisampling with N samples. Predefined configs: gpu = gpu() msaa4 = gpu(samples=4) msaa16 = gpu(samples=16) nvprmsaa4 = gpu(nvpr=true,samples=4) nvprmsaa16 = gpu(nvpr=true,samples=16) gpudft = gpu(dit=true) gpudebug = gpu(api=debug) gpunull = gpu(api=null) debug = gpu(api=debug) nullgpu = gpu(api=null) BUG=skia:2992 Committed: https://skia.googlesource.com/skia/+/e13ca329fca4c28cf4e078561f591ab27b743d23 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1490113005 Review URL: https://codereview.chromium.org/1490113005
* Fix thread-unsafe construction of GrUniqueKey in GR_DEFINE_STATIC_UNIQUE_KEYGravatar bsalomon2015-12-17
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1530313002 Review URL: https://codereview.chromium.org/1530313002
* Set GL_PACK_ALIGNMENT before calling glReadPixelsGravatar bsalomon2015-12-15
| | | | Review URL: https://codereview.chromium.org/1525193002
* Add option to control maximum GrBatch lookbackGravatar bsalomon2015-12-14
| | | | Review URL: https://codereview.chromium.org/1498653002
* Revert of Add config options to run different GPU APIs to dm and nanobench ↵Gravatar reed2015-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #12 id:220001 of https://codereview.chromium.org/1490113005/ ) Reason for revert: speculative revert to see if it unblocks the DEPS roll https://codereview.chromium.org/1529443002 Original issue's description: > Add config options to run different GPU APIs to dm and nanobench > > Add extended config specification form that can be used to run different > gpu backend with different APIs. > > The configs can be specified with the form: > gpu(api=string,dit=bool,nvpr=bool,samples=int) > > This replaces and removes the --gpuAPI flag. > > All existing configs should still work. > > Adds following documentation: > > out/Debug/dm --help config > > Flags: > --config: type: string default: 565 8888 gpu nonrendering > Options: 565 8888 debug gpu gpudebug gpudft gpunull msaa16 msaa4 > nonrendering null nullgpu nvprmsaa16 nvprmsaa4 pdf pdf_poppler skp svg > xps or use extended form 'backend(option=value,...)'. > > Extended form: 'backend(option=value,...)' > > Possible backends and options: > > gpu(api=string,dit=bool,nvpr=bool,samples=int) GPU backend > api type: string default: native. > Select graphics API to use with gpu backend. > Options: > native Use platform default OpenGL or OpenGL ES backend. > gl Use OpenGL. > gles Use OpenGL ES. > debug Use debug OpenGL. > null Use null OpenGL. > dit type: bool default: false. > Use device independent text. > nvpr type: bool default: false. > Use NV_path_rendering OpenGL and OpenGL ES extension. > samples type: int default: 0. > Use multisampling with N samples. > > Predefined configs: > > gpu = gpu() > msaa4 = gpu(samples=4) > msaa16 = gpu(samples=16) > nvprmsaa4 = gpu(nvpr=true,samples=4) > nvprmsaa16 = gpu(nvpr=true,samples=16) > gpudft = gpu(dit=true) > gpudebug = gpu(api=debug) > gpunull = gpu(api=null) > debug = gpu(api=debug) > nullgpu = gpu(api=null) > > BUG=skia:2992 > > Committed: https://skia.googlesource.com/skia/+/e13ca329fca4c28cf4e078561f591ab27b743d23 TBR=bsalomon@google.com,scroggo@google.com,joshualitt@google.com,kkinnunen@nvidia.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia:2992 Review URL: https://codereview.chromium.org/1528473002
* Add config options to run different GPU APIs to dm and nanobenchGravatar kkinnunen2015-12-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add extended config specification form that can be used to run different gpu backend with different APIs. The configs can be specified with the form: gpu(api=string,dit=bool,nvpr=bool,samples=int) This replaces and removes the --gpuAPI flag. All existing configs should still work. Adds following documentation: out/Debug/dm --help config Flags: --config: type: string default: 565 8888 gpu nonrendering Options: 565 8888 debug gpu gpudebug gpudft gpunull msaa16 msaa4 nonrendering null nullgpu nvprmsaa16 nvprmsaa4 pdf pdf_poppler skp svg xps or use extended form 'backend(option=value,...)'. Extended form: 'backend(option=value,...)' Possible backends and options: gpu(api=string,dit=bool,nvpr=bool,samples=int) GPU backend api type: string default: native. Select graphics API to use with gpu backend. Options: native Use platform default OpenGL or OpenGL ES backend. gl Use OpenGL. gles Use OpenGL ES. debug Use debug OpenGL. null Use null OpenGL. dit type: bool default: false. Use device independent text. nvpr type: bool default: false. Use NV_path_rendering OpenGL and OpenGL ES extension. samples type: int default: 0. Use multisampling with N samples. Predefined configs: gpu = gpu() msaa4 = gpu(samples=4) msaa16 = gpu(samples=16) nvprmsaa4 = gpu(nvpr=true,samples=4) nvprmsaa16 = gpu(nvpr=true,samples=16) gpudft = gpu(dit=true) gpudebug = gpu(api=debug) gpunull = gpu(api=null) debug = gpu(api=debug) nullgpu = gpu(api=null) BUG=skia:2992 Review URL: https://codereview.chromium.org/1490113005
* Add check for highp support in Conic effectGravatar robertphillips2015-12-11
| | | | | | | | | | | | | | | | | | | | | This CL may not really be necessary since it seems that the Android Ones we have fall back to mediump when highp isn't supported. FYI, for bits-of-precision/precision we have: Low Med High Precision-Used A1 (Cherry One - Mali 400) 10 10 0 Med - conic looks bad N5 (Adreno 330) 10 10 23 High - conic looks bad!!! N6 (Adreno 420) 10 10 23 High - conic looks good N7v2 (Adreno 320) 10 10 23 High - conic looks bad!!! N9 (K1) 23 23 23 High - looks good N10 (Mail-604) 10 10 23 High - looks good I suspect derivative computation is broken on the Adreno 300s. BUG=555779,skia:4668 TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1513573009
* Move flush logic into GrAtlasTextBlobGravatar joshualitt2015-12-10
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1518763002
* Move texture drawing utility method to SkGpuDeviceGravatar jvanverth2015-12-08
| | | | | | BUG=skia:4542 Review URL: https://codereview.chromium.org/1506203002
* Remove drawPathsFromRange from GrDrawContextGravatar cdalton2015-12-08
| | | | | | | | | | Replaces drawPathsFromRange with a more general drawPathBatch method. While this still isn't perfect, it's a step in the right direction that removes the need for path range draws to fit in a public API. BUG=skia: Review URL: https://codereview.chromium.org/1506823004
* fix mozilla bugGravatar joshualitt2015-12-04
| | | | | | | TBR=bsalomon@google.com BUG=skia:4621 Review URL: https://codereview.chromium.org/1500023002
* Reduce calls sites where both the GrDrawContext & GrRenderTarget are both passedGravatar robertphillips2015-12-04
| | | | | | TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1494083003
* Add option to draw wireframe batch boundsGravatar bsalomon2015-12-03
| | | | | | Committed: https://skia.googlesource.com/skia/+/26489ef21ff5df33b8cb5943fddfd4604e203960 Review URL: https://codereview.chromium.org/1494473005
* Revert of Add option to draw wireframe batch bounds (patchset #6 id:100001 ↵Gravatar scroggo2015-12-03
| | | | | | | | | | | | | | | | | | | of https://codereview.chromium.org/1494473005/ ) Reason for revert: Looks to be responsible for breaking builds e.g. https://uberchromegw.corp.google.com/i/client.skia/builders/Test-Mac10.9-Clang-MacMini6.2-GPU-HD4000-x86_64-Debug/builds/3030/steps/dm/logs/stdio Original issue's description: > Add option to draw wireframe batch bounds > > Committed: https://skia.googlesource.com/skia/+/26489ef21ff5df33b8cb5943fddfd4604e203960 TBR=joshualitt@google.com,bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1492633007
* Add option to draw wireframe batch boundsGravatar bsalomon2015-12-03
| | | | Review URL: https://codereview.chromium.org/1494473005
* Wire up resource cache stats dumping in nanobenchGravatar joshualitt2015-12-02
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1495543003
* Create a define for nanobench builds to dump statsGravatar joshualitt2015-12-02
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1499453002
* Began logging more gpu stats from nanobenchGravatar joshualitt2015-12-02
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1489033004
* Retract GrRenderTarget a bitGravatar robertphillips2015-12-01
| | | | | | These sites don't necessarily need the full power of a GrRenderTarget object. This is a clean up for switching over to GrRenderTargetProxys. Review URL: https://codereview.chromium.org/1486923004
* Add debug option to clip each GrBatch to its device boundsGravatar bsalomon2015-11-30
| | | | Review URL: https://codereview.chromium.org/1471083002
* Create a static instances of SrcOver XferProcessorGravatar egdaniel2015-11-30
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1471293003
* APIs which took colorPOI / coveragePOI pairs updated to take a ↵Gravatar ethannicholas2015-11-30
| | | | | | | | GrPipelineOptimizations struct TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1480353002
* Make stencil and cover path rendering have more reasonable bounds.Gravatar bsalomon2015-11-23
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1471883002
* Don't create a GXPFactory when blend is SrcOverGravatar egdaniel2015-11-23
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1471053002
* Initial version of external_oes texture support and unit testGravatar bsalomon2015-11-22
| | | | | | Committed: https://skia.googlesource.com/skia/+/27a048700778d4cebfc23301d1780649791b0e03 Review URL: https://codereview.chromium.org/1451683002
* Revert of Initial version of external_oes texture support and unit test ↵Gravatar bsalomon2015-11-20
| | | | | | | | | | | | | | | | | | | (patchset #14 id:260001 of https://codereview.chromium.org/1451683002/ ) Reason for revert: Error wrapping external texture in GrTexture on some devices. Original issue's description: > Initial version of external_oes texture support and unit test > > Committed: https://skia.googlesource.com/skia/+/27a048700778d4cebfc23301d1780649791b0e03 TBR=joshualitt@google.com,egdaniel@google.com,robertphillips@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1459323004
* Initial version of external_oes texture support and unit testGravatar bsalomon2015-11-20
| | | | Review URL: https://codereview.chromium.org/1451683002
* Revert of Make specialized SrcOver XPFactory (patchset #3 id:40001 of ↵Gravatar egdaniel2015-11-20
| | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1455273006/ ) Reason for revert: breaking some builds Original issue's description: > Make specialized SrcOver XPFactory > > BUG=skia: > > Committed: https://skia.googlesource.com/skia/+/a7006d45217d128a94fa53cb4b827cca79bc7049 TBR=bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=skia: Review URL: https://codereview.chromium.org/1464933003
* Make specialized SrcOver XPFactoryGravatar egdaniel2015-11-20
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1455273006
* Remove unsigned < signed comparison.Gravatar mtklein2015-11-19
| | | | | | | | | This triggers -Wsign-compare on some builds. Not sure why none of those builds have -Werror set. BUG=skia:4561 Review URL: https://codereview.chromium.org/1464543002
* Change prealloc number of child FPs be 1 rather than 2Gravatar Brian Salomon2015-11-19
| | | | | | TBR=joshualitt@google.com Review URL: https://codereview.chromium.org/1458913003 .
* Preallocate room for 2 child processors in FPsGravatar bsalomon2015-11-19
| | | | Review URL: https://codereview.chromium.org/1456263003
* Initial implementation of GPU no filter NinePatchGravatar joshualitt2015-11-18
| | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1454933002
* Optionally pass rendertarget to getTestTargetGravatar robertphillips2015-11-16
| | | | | | | | This shouldn't really make any difference but allocating and holding on to a GrRenderTarget for each test target generates image differences for Mali GPUs. This CL allows an existing render target to be used for the test target. TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1447113002
* Increase the amount of debug information printed out by batchesGravatar robertphillips2015-11-16
| | | | | | | | | Untangling MDB bugs requires more information. In particular the render targets. BUG=skia:4094 TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1443763002
* Fix for chrome's skia gl bindings code.Gravatar bsalomon2015-11-16
| | | | | | | TBR=egdaniel@google.com NOTRY=true Review URL: https://codereview.chromium.org/1451743002
* Add support for EGLImage to GrGLInterfaceGravatar bsalomon2015-11-16
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1434813002
* Rename some processor functions from GL to GLSLGravatar egdaniel2015-11-13
| | | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1443743002
* Move XferProcessors to glslGravatar egdaniel2015-11-13
| | | | | | | | | | This is basically a move and rename TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1440073002
* Make all GrFragmentProcessors GL independent.Gravatar egdaniel2015-11-13
| | | | | | | | TBR=bsalomon@google.com BUG=skia: Review URL: https://codereview.chromium.org/1434313002
* Fix GrCoverageSetOpXP unit test on mixed samplesGravatar cdalton2015-11-12
| | | | | | | | | | | Updates GrCoverageSetOpXPFactory::TestCreate to not invert coverage with mixed samples, which is an unsupported configuration. TBR=bsalomon@google.com BUG=skia:4556 Review URL: https://codereview.chromium.org/1442763002
* Revert of Enable stencil clipping in mixed sampled render targets (patchset ↵Gravatar cdalton2015-11-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | #6 id:100001 of https://codereview.chromium.org/1232103002/ ) Reason for revert: Co-centered sample locations are not needed to do stencil clip with mixed samples Original issue's description: > Implement stencil clipping in mixed sampled render targets > > This change enables multisampled clipping for mixed sampled > render targets. Previously clipping in mixed samples config > behaved the same as in the gpu config. > > In order to retrofit non-MSAA draw methods, programmable sample > locations are used in order to colocate all samples at (0.5, 0.5). > Requires support for NV_sample_locations. > > BUG=skia:4399 > > Committed: > https://skia.googlesource.com/skia/+/3e77ba96d56d15db30ac6d8ccb900e30aafcbb16 BUG=skia: Review URL: https://codereview.chromium.org/1415873011
* Revert of Fix setColocatedSampleLocations on ES and GL < 4.5 (patchset #2 ↵Gravatar cdalton2015-11-11
| | | | | | | | | | | | | | | | | | | | | | | id:20001 of https://codereview.chromium.org/1415503008/ ) Reason for revert: Co-centered sample locations are not needed to do stencil clip with mixed samples. Original issue's description: > Fix setColocatedSampleLocations on ES and GL < 4.5 > > Updates setColocatedSampleLocations to use glFramebufferParameteri > when > the DSA version glNamedFramebufferParameteri is not present. > > BUG=skia: > > Committed: > https://skia.googlesource.com/skia/+/98cad6219b430eddf5528473311279f21dbd2e10 BUG=skia: Review URL: https://codereview.chromium.org/1420883007
* Readd "immediate" modeGravatar robertphillips2015-11-11
| | | | | | | | This isn't an exact replacement. The accumulated batches are now flushed at drawContext-entry-point granularity (via the AutoCheckFlush objects) rather than per batch. TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1439533003
* Move GrBatchFlushState from GrDrawTarget to GrDrawingManagerGravatar robertphillips2015-11-11
| | | | | | | | | | | | This CL: moves the flushState disables immediate mode (it was proving difficult to implement) also moves the program unit test to the drawing manager BUG=skia:4094 TBR=bsalomon@google.com Review URL: https://codereview.chromium.org/1437843002
* Revert of Fix mixed samples stencil clip (patchset #5 id:80001 of ↵Gravatar cdalton2015-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1431593006/ ) Reason for revert: Co-centered sample locations are not needed to do stencil clip with mixed samples. Original issue's description: > Fix mixed samples stencil clip > > Fixes rendering bugs and nondeterminism in gm. > > Before, mixed samples stencil clip would try to infer whether the draw > wanted co-centered sample locations from within GrGLGpu, which caused > various errors. This change reworks it so the draw itself can request > the co-centered sample locations when it knows it will need them. > > Also reduces framebuffer binds by moving the code that enables > GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS into flushRenderTarget. > > Committed: https://skia.googlesource.com/skia/+/14184d5567b58085b6d8a6375796d405056f7f73 TBR=bsalomon@google.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1407063011
* Use a struct for client GL texture handlesGravatar bsalomon2015-11-10
| | | | Review URL: https://codereview.chromium.org/1429863009
* apply mozilla patchGravatar reed2015-11-10
| | | | | | BUG=skia:4547 Review URL: https://codereview.chromium.org/1421793009
* Fix mixed samples stencil clipGravatar cdalton2015-11-09
| | | | | | | | | | | | | | Fixes rendering bugs and nondeterminism in gm. Before, mixed samples stencil clip would try to infer whether the draw wanted co-centered sample locations from within GrGLGpu, which caused various errors. This change reworks it so the draw itself can request the co-centered sample locations when it knows it will need them. Also reduces framebuffer binds by moving the code that enables GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS into flushRenderTarget. Review URL: https://codereview.chromium.org/1431593006