| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
BUG=443151
Review URL: https://codereview.chromium.org/1027823003
Cr-Commit-Position: refs/heads/master@{#321952}
|
|
|
|
|
|
|
|
| |
BUG=295792
Review URL: https://codereview.chromium.org/1025303006
Cr-Commit-Position: refs/heads/master@{#321941}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This entry didn't match because the parens were interpreted as regexp
grouping instead of literal characters. I didn't notice the problem
before given that K+ Adreno 3xx devices are also covered by the OpenGL ES
3.0 policy. This should actually expand the Ganesh whitelist to all pre-K
Adreno 3xx devices as originally intended by r307526.
BUG=467581,424970
Review URL: https://codereview.chromium.org/1025803003
Cr-Commit-Position: refs/heads/master@{#321910}
|
|
|
|
|
|
|
|
|
|
|
| |
shell can register an implementation only when this is rolled into the Mojo repo.
R=jamesr@chromium.org,piman@chromium.org
BUG=453591
Review URL: https://codereview.chromium.org/1023673009
Cr-Commit-Position: refs/heads/master@{#321899}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gpu::GLES2Interace and for each entry point either defers to Mojo C thunk if we expose an entry point or check fails.
The code in its current form makes use of MojoGLES2GetGLES2Interface if
html_viewer makes use but we do not have a Mojo C thunk.
I'll be adding Mojo C thunks for other functions used by html_viewer and
eventually remove MojoGLES2GetGLES2Interface.
R=jamesr@chromium.org,davemoore@chromium.org
BUG=453591
Review URL: https://codereview.chromium.org/993253003
Cr-Commit-Position: refs/heads/master@{#321886}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
properties.
With this patch we benchmark both of these upload techniques.
When using glTexSubImage2D the texture storage is specified with
glTexStorage2D when available, or glTexImage2D passing an empty pointer as data.
Trying to re-land this patch after it broke the perfbots (crbug.com/468748).
BUG=468748
Review URL: https://codereview.chromium.org/1027623002
Cr-Commit-Position: refs/heads/master@{#321519}
|
|
|
|
|
|
|
|
|
| |
R=piman@chromium.org
BUG=468936
Review URL: https://codereview.chromium.org/1016193003
Cr-Commit-Position: refs/heads/master@{#321489}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch tests GL_LUMINANCE only when OpenGL is not ES3
and tests GL_RED when on OpengGL ES3.
This change should allow crrev.com/1022603002 to run on Android perf
bots. Without this patch crrev.com/1022603002 fails on perf bots because
glTextureStorage2D doesn't always accept GL_LUMINANCE8 as
internalformat.
glTextureStorage2D has been added to OpenGL ES3 and it's available
as an extension (GL_{EXT,ARB}_texture_storage) prior to that.
If glTextureStorage2D is availabe via the extension it accepts
GL_LUMINANCE8_EXT as internal format, otherwise it doesn't.
BUG=468748
Review URL: https://codereview.chromium.org/1022923002
Cr-Commit-Position: refs/heads/master@{#321462}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
glTexImage2D. (patchset #2 id:80001 of https://codereview.chromium.org/1022603002/)
Reason for revert:
This is causing gpu_perftests to fail on android perfbots. See http://crbug.com/468748
Original issue's description:
> gpu: Measure texture uploads with glTexSubImage2D and glTexImage2D.
>
> glTexImage2D and glTexSubImage2D could have different performance
> properties.
> With this patch we benchmark both of these upload techniques.
>
> When using glTexSubImage2D the texture storage is specified with
> glTexStorage2D when available, or glTexImage2D passing an empty pointer as data.
>
> BUG=423481
>
> Committed: https://crrev.com/1b9c0f6571baefe70dad41d504cbe3136ce41ae4
> Cr-Commit-Position: refs/heads/master@{#321300}
TBR=reveman@chromium.org,dcastagna@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=423481
Review URL: https://codereview.chromium.org/1011343005
Cr-Commit-Position: refs/heads/master@{#321350}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
glTexImage2D and glTexSubImage2D could have different performance
properties.
With this patch we benchmark both of these upload techniques.
When using glTexSubImage2D the texture storage is specified with
glTexStorage2D when available, or glTexImage2D passing an empty pointer as data.
BUG=423481
Review URL: https://codereview.chromium.org/1022603002
Cr-Commit-Position: refs/heads/master@{#321300}
|
|
|
|
|
|
|
|
| |
BUG=429053
Review URL: https://codereview.chromium.org/1000483002
Cr-Commit-Position: refs/heads/master@{#321263}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*re-re-land with SwiftShader fix*
*re-land with fix to components_browsertests*
This logic allows us to record traces and histograms easily within
ANGLE's code. It also gives a flexible design that we can extend
with further methods later, without breaking compilation. The
design is based on blink::Platform.
Also add two new histogram descriptions to histograms.xml, and
move the GPU Process metrics init to before InitializeOneOff, so
ANGLE can record histograms during Renderer initialization.
BUG=436191
TBR=jam@chromium.org, asvitkine@chromium.org, piman@chromium.org, maruel@chromium.org, kbr@chromium.org
Review URL: https://codereview.chromium.org/1007513006
Cr-Commit-Position: refs/heads/master@{#321225}
|
|
|
|
|
|
|
|
|
|
| |
BUG=445653
TEST=gpu_unittests
R=piman@chromium.org
Review URL: https://codereview.chromium.org/1013853006
Cr-Commit-Position: refs/heads/master@{#321072}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SystemInfo.getInfo was not properly waiting for GPU information to be
collected when the GPU was available. Made this call asynchronous in
the browser DevTools protocol and hooked up GpuDataManager observers
to respond when it's collected. Return the data immediately when there
is no GPU available.
Note that it was not possible to wait for full GPU information to be
collected on Windows. This takes so long that internal 10-second
timeouts in the tests are hit in Debug mode on Windows. Fixed a bug in
MergeGpuInfo where the GpuDataManager would never think that full
information had been collected on Windows. Unfortunately it was not
easy to write a regression test for this fix.
Added a regression test in the gpu_process page set ensuring that the
gl_renderer string will always be available on the GPU bots.
BUG=454906
Review URL: https://codereview.chromium.org/999643002
Cr-Commit-Position: refs/heads/master@{#321058}
|
|
|
|
|
|
|
|
|
|
|
| |
GLSL precision qualifiers have no effect in OpenGL.
On Mac the precision qualifiers cause the shader not to compile.
BUG=
Review URL: https://codereview.chromium.org/1011503002
Cr-Commit-Position: refs/heads/master@{#320976}
|
|
|
|
|
|
|
|
|
|
| |
BUG=456004
TEST=gpu_unittests, about:gpu page
R=kbr@chromium.org
Review URL: https://codereview.chromium.org/1018463002
Cr-Commit-Position: refs/heads/master@{#320942}
|
|
|
|
|
|
|
|
|
|
| |
R=sievers@chromium.org
BUG=466725
TEST=trybots
Review URL: https://codereview.chromium.org/1006093002
Cr-Commit-Position: refs/heads/master@{#320814}
|
|
|
|
|
|
|
|
|
|
| |
This fixes some files not compiling with the proper flags for component mode.
The device_event_log target in GN is a source set in GN and a component in GYP. This difference was causing some errors. I changed this to be a static library in GYP. It only has 2 files in it so making a whole shared library for this target seems wasteful.
Review URL: https://codereview.chromium.org/1011823002
Cr-Commit-Position: refs/heads/master@{#320805}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This affetcs TexImage*D, TexStorage*D, CopyTexImage2D.
Note that this is working progress to allow these ES3 enums. More validation
code needs to be modified to make them work.
BUG=429053
TEST=gpu_unittests
R=sievers@chromium.org
Review URL: https://codereview.chromium.org/1007523002
Cr-Commit-Position: refs/heads/master@{#320612}
|
|
|
|
|
|
|
|
| |
BUG=429053
Review URL: https://codereview.chromium.org/998423005
Cr-Commit-Position: refs/heads/master@{#320607}
|
|
|
|
|
|
|
|
| |
This has been disabled for years (due to some crashes it caused), and D3D11 support is working fine without it.
Review URL: https://codereview.chromium.org/1001663002
Cr-Commit-Position: refs/heads/master@{#320590}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLContext that it is current to.
This is a step towards executing the command buffer for the browser
compositor's LayerTreeImpl inside the CAOpenGLLayer callback.
This exposes an issue where the GLSurface's CAOpenGLLayer's drawing
function, drawInCGLContext, changes some of the underlying
CGLContextObj's GL state. This is done partially inside the draw function,
and partially outside of the draw function.
To work around this, mark the context as having been dirtied whenever
the CAOpenGLLayer's drawInCGLContext function is called. Check if this
has happened whenever the context is made current, and also in places
where drawInCGLContext may be called while parsing the command buffer.
Because the CAOpenGLLayer may outlive its owning GLSurface and the
virtual GLContext that it was current to, have it hold a base::Closure
that it gets (ultimately) from the real GLContext. This way, it is guaranteed
that the real GLContext will always be informed when the CAOpenGLLayer's
drawInCGLContext method is called (even if the virtual GLContext which
hooked the two of them together has been destroyed).
BUG=423163
Review URL: https://codereview.chromium.org/995963002
Cr-Commit-Position: refs/heads/master@{#320470}
|
|
|
|
|
|
|
|
|
|
|
|
| |
The default precision for float is not necessarly defined for fragment
shaders and some drivers complain about it rejecting to compile the
shader.
BUG=
Review URL: https://codereview.chromium.org/1004943002
Cr-Commit-Position: refs/heads/master@{#320431}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
By default the value of GL_PACK_ALIGNMENT is set to 4. This means the
alignment that OpengGL expects for the start of each pixel row in memory
is 4 bytes.
This patch adds padding to the generated buffers that are uploaded as a
texture to satisfy this requirement. The code that compares the final
pixels read from the framebuffer to the original pixels uploaded as a
texture has been updated to reflect this change.
Review URL: https://codereview.chromium.org/998373003
Cr-Commit-Position: refs/heads/master@{#320422}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tested with the following command lines on Linux:
$ gn gen out-gn
$ ninja -C out-gn gles2_conform_support
$ ninja -C out-gn gpu/gles2_conform_support
$ gn check out-gn //gpu/gles2_conform_support
BUG=432959
TEST=see above
R=dpranke@chromium.org,sievers@chromium.org
Review URL: https://codereview.chromium.org/1002813002
Cr-Commit-Position: refs/heads/master@{#320407}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(patchset #1 id:1 of https://codereview.chromium.org/1006573002/)
Reason for revert:
Revert because I accidentally modify the build_gles2_cmd_buffer.py (CopyTextureInternalFormat split from TextureInternalFormat) without running the script. So there is a bug the next person will catch if they run this script.
Original issue's description:
> Add a bunch of ES3 only enums for texture related functions.
>
> This doesn't enable them for WebGL 2 though, because some combined validations
> will fail them (like type/format, or internalformat/format). This will be dealt
> separately.
>
> Also, TexStorage case isn't handled in this CL.
>
> BUG=429053
> TEST=gpu_unittests
> R=sievers@chromium.org
>
> Committed: https://crrev.com/e56e40ab960d63450a4198cc77ed8d3e45f9430e
> Cr-Commit-Position: refs/heads/master@{#320345}
TBR=sievers@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=429053
Review URL: https://codereview.chromium.org/1004913002
Cr-Commit-Position: refs/heads/master@{#320396}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://chromium.googlesource.com/chromium/src/+/d78b086e4459077f2f5ceac61c3a8b968eff6353
Patch seems to becausing a large number of GPU process crashes in the latest canary.
BUG=466735
TBR=jmadill
Review URL: https://codereview.chromium.org/1003993002
Cr-Commit-Position: refs/heads/master@{#320389}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change the output of gpu_perftest so that values exported with perf_test
will be grouped by format and texture size.
In this way it should be easier to compare the cpu/gpu cost breakdown
on different devices given a combination of format and texture size.
The values for the "renaming" test are also going to be grouped on
a single graph.
BUG=
Review URL: https://codereview.chromium.org/1008553002
Cr-Commit-Position: refs/heads/master@{#320378}
|
|
|
|
|
|
|
|
|
|
| |
Uniform initialization is not supported on Android and Mac.
BUG=466624
Review URL: https://codereview.chromium.org/1003833002
Cr-Commit-Position: refs/heads/master@{#320366}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This doesn't enable them for WebGL 2 though, because some combined validations
will fail them (like type/format, or internalformat/format). This will be dealt
separately.
Also, TexStorage case isn't handled in this CL.
BUG=429053
TEST=gpu_unittests
R=sievers@chromium.org
Review URL: https://codereview.chromium.org/1006573002
Cr-Commit-Position: refs/heads/master@{#320345}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GL_VERSION on the device is: "OpenGL ES 3.1V@104 (GIT@abc)"
Our current GL_VERSION parsing expects a space " " after the version "3.1"
in 3rd token.
Changing to match a regular expression for 3rd token.
BUG=466454
BUG=443060
Review URL: https://codereview.chromium.org/999983002
Cr-Commit-Position: refs/heads/master@{#320247}
|
|
|
|
|
|
|
|
| |
BUG=423481
Review URL: https://codereview.chromium.org/985843003
Cr-Commit-Position: refs/heads/master@{#320234}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For now, we delegate the call to glDrawElements, i.e., ignoring start,end
constraints, which is actually ES3 compliant.
BUG=429053
TEST=gpu_unittests
R=piman@chromium.org
Review URL: https://codereview.chromium.org/954183006
Cr-Commit-Position: refs/heads/master@{#320213}
|
|
|
|
|
|
|
|
|
|
| |
BUG=429053
TEST=gpu_unittests
R=piman@chromium.org
Review URL: https://codereview.chromium.org/996913002
Cr-Commit-Position: refs/heads/master@{#320194}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*re-land with fix to components_browsertests*
This logic allows us to record traces and histograms easily within
ANGLE's code. It also gives a flexible design that we can extend
with further methods later, without breaking compilation. The
design is based on blink::Platform.
Also add two new histogram descriptions to histograms.xml, and
move the GPU Process metrics init to before InitializeOneOff, so
ANGLE can record histograms during Renderer initialization.
BUG=436191
TBR=jam@chromium.org, asvitkine@chromium.org, piman@chromium.org, maruel@chromium.org, kbr@chromium.org
Review URL: https://codereview.chromium.org/923223002
Cr-Commit-Position: refs/heads/master@{#319930}
Review URL: https://codereview.chromium.org/997143002
Cr-Commit-Position: refs/heads/master@{#320182}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This target is necessary for implementing gles2_conform_support target.
Which will be done later on.
Tested with the following command lines on Linux:
$ gn gen out-gn
$ ninja -C out-gn gles2_c_lib_nocheck
$ ninja -C out-gn gpu/command_buffer/client:gles2_c_lib_nocheck
$ gn check out-gn //gpu/command_buffer/client:gles2_c_lib_nocheck
BUG=432959
TEST=see above
R=dpranke@chromium.org,sievers@chromium.org
Review URL: https://codereview.chromium.org/994903005
Cr-Commit-Position: refs/heads/master@{#320178}
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a followup to the update to disable Xvfb for OS=="linux"
use_x11==0 that converts additional targets.
BUG=440882
TEST=isolate.py run -s out_ozone/Debug/<various>
TBR=maruel
Review URL: https://codereview.chromium.org/996173004
Cr-Commit-Position: refs/heads/master@{#320143}
|
|
|
|
|
|
|
|
|
|
|
| |
This is helpful when implementing new shader translator functionality
especially in combination with the --gl-shader-interm-output flag.
BUG=angleproject:941
Review URL: https://codereview.chromium.org/995013002
Cr-Commit-Position: refs/heads/master@{#320059}
|
|
|
|
|
|
|
|
|
|
| |
R=zmo@chromium.org
BUG=465921
TEST=Trybots
Review URL: https://codereview.chromium.org/971983002
Cr-Commit-Position: refs/heads/master@{#320051}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
reland if this is not the case.
http://build.chromium.org/p/chromium.win/builders/XP%20Tests%20%281%29
Revert "Add ANGLE Platform implementation."
This reverts commit efe950c2db75b0cfd043e068a4cfc68ab393dac4.
R=jmadill@chromium.org
BUG=
Review URL: https://codereview.chromium.org/999623003
Cr-Commit-Position: refs/heads/master@{#320036}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When a GL context is created on an integrated GPU using a compatibility profile on Macbook Pro, GL_EXT_timer_query is the only timing extension available. This extension predates the two extensions currently used by gpu_timing: GL_ARB_timer_query and GL_EXT_disjoint_timer_query. Unfortunately, GL_EXT_timer_query only supports a subset of the features supported by the two newer extensions. It does not support getting the current GPU time, therefore making it harder to get a precise delta between GPU and CPU timings. It also does not support getting single timestamps from the GPU--only time deltas. This makes it harder to implement interleaved timers.
This patch partially implements the classes defined in gpu_timing. The offset is not available, and the GPUTimers created cannot be interleaved.
GPUTracer has been modified in order to avoid capturing GPU timing if the offset is not available.
TextureUploadPerfTest has been modified in order to avoid interleaved timers.
BUG=
Review URL: https://codereview.chromium.org/992713003
Cr-Commit-Position: refs/heads/master@{#320025}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLES2 implementations that use IdHandler, which includes Pepper3D,
require strict context ordering in glDelete* calls and have a high
overhead.
Now we can change this to use OrderingBarrier for lower overhead.
BUG=465593
Review URL: https://codereview.chromium.org/987243003
Cr-Commit-Position: refs/heads/master@{#319981}
|
|
|
|
|
|
|
|
|
|
| |
BUG=429053
TEST=gpu_unittests
R=piman@chromium.org
Review URL: https://codereview.chromium.org/960013002
Cr-Commit-Position: refs/heads/master@{#319966}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tested with the following command lines on Linux:
$ gn gen out-gn
$ ninja -C out-gn windowless
$ ninja -C out-gn gpu/gles2_conform_support/native:windowless
$ gn check out-gn //gpu/gles2_conform_support/native/*
BUG=432959
TEST=see above
R=dpranke@chromium.org,sievers@chromium.org
Review URL: https://codereview.chromium.org/989233004
Cr-Commit-Position: refs/heads/master@{#319942}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This logic allows us to record traces and histograms easily within
ANGLE's code. It also gives a flexible design that we can extend
with further methods later, without breaking compilation. The
design is based on blink::Platform.
Also add two new histogram descriptions to histograms.xml, and
move the GPU Process metrics init to before InitializeOneOff, so
ANGLE can record histograms during Renderer initialization.
BUG=436191
Review URL: https://codereview.chromium.org/923223002
Cr-Commit-Position: refs/heads/master@{#319930}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Although ultimately we want to remove validators from command buffer, but the
fastest way to allow an experimental WebGL 2 is actually appending the current
validators.
Appended the BufferTarget as an sample to make sure code generator works.
BUG=463599
TEST=gpu_unittests, webgl conformance tests
R=sievers@chromium.org
Review URL: https://codereview.chromium.org/987123003
Cr-Commit-Position: refs/heads/master@{#319819}
|
|
|
|
|
|
|
|
|
|
|
| |
The two formats GL_LUMINANCE and GL_RED_EXT are now been tested in addition to GL_RGBA.
GL_LUMINANCE and GL_RED_EXT are used for yuv resources that are uploaded by VideoLayerImpl.
BUG=423481
Review URL: https://codereview.chromium.org/974913003
Cr-Commit-Position: refs/heads/master@{#319788}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
webgraphicscontext3d_impl.h.
Having 'using' declarations in header files polutes the global
namespace and that is not what we want.
BUG=438860
R=piman@chromium.org
Review URL: https://codereview.chromium.org/972713002
Cr-Commit-Position: refs/heads/master@{#319766}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Tested with the following command lines on Linux:
$ gn gen out-gn
$ ninja -C out-gn native
$ ninja -C out-gn gpu/gles2_conform_support/native
$ gn check out-gn //gpu/gles2_conform_support/native/*
BUG=432959
TEST=see above
R=dpranke@chromium.org,sievers@chromium.org
Review URL: https://codereview.chromium.org/992463002
Cr-Commit-Position: refs/heads/master@{#319765}
|
|
|
|
|
|
|
|
|
|
| |
Some old devices are getting lollipop update without updated drivers.
BUG=
Review URL: https://codereview.chromium.org/982153002
Cr-Commit-Position: refs/heads/master@{#319762}
|