| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GPU can't rely on base because of nacl so it has its own logger. The logger
includes <iostream> in the header, so most gles2 and command buffer files have
std::__ioinit static initializers. Create a common logging.cc which has a
simple method that just returns std::cerr so all the __ioinits collapse down to
one.
BUG=94794
TEST=compiles
R=apatrick
TBR=noelallen
Review URL: http://codereview.chromium.org/7821004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99229 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previous code was resizing, and clearing the front buffer as soon as the back
buffer was resized. It can lead to race conditions where the compositor draws a
black texture if it triggers between the resize and the swap.
BUG=None
TEST=Pepper Flash
Review URL: http://codereview.chromium.org/7795015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98905 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This tool simulates the GPU demands of Chromium's GPU-accelerated compositor. In
the current version, we simulate the performance of the existing forward
rendering model; coming changes will prototype a new model.
BUG=None
TEST=self
This is http://codereview.chromium.org/7718020/ with trivial fixes
Original change by Joshua Trask <joshtrask@google.com>
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=98706
Review URL: http://codereview.chromium.org/7792002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98900 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
The echo message is essentially an async fence with event based notification. The client gets a notification when the GPU process has completed all the work up to the last flush.
I used it to replace the SwapBuffers / OnSwapBuffers synchronization and got rid of some of the callbacks in the lower layers of the stack.
The SwapBuffers callbacks in the GPU process are only needed on mac now and I will replace them with something more generic soon.
Review URL: http://codereview.chromium.org/7762013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98747 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
as possible workaround for crash in NVIDIA driver on Mac. Also fixed
bug ID in comment.
BUG=94103
TEST=none (manually tested some WebGL content)
Review URL: http://codereview.chromium.org/7800006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98729 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This tool simulates the GPU demands of Chromium's GPU-accelerated compositor. In
the current version, we simulate the performance of the existing forward
rendering model; coming changes will prototype a new model.
BUG=None
TEST=self
This is http://codereview.chromium.org/7718020/ with trivial fixes
Original change by Joshua Trask <joshtrask@google.com>
Review URL: http://codereview.chromium.org/7792002
Patch from Joshua Trask <joshtrask@google.com>.
TBR=piman@google.com
Review URL: http://codereview.chromium.org/7792016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98710 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This tool simulates the GPU demands of Chromium's GPU-accelerated compositor. In
the current version, we simulate the performance of the existing forward
rendering model; coming changes will prototype a new model.
BUG=None
TEST=self
This is http://codereview.chromium.org/7718020/ with trivial fixes
Original change by Joshua Trask <joshtrask@google.com>
Review URL: http://codereview.chromium.org/7792002
Patch from Joshua Trask <joshtrask@google.com>.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98706 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
builds with some apps) - Further attempted workarounds for Mac- and NVIDIA-specific crash. Can
not reproduce this crash in house any more, so adding more code along
the lines of the earlier fix which was known to work on some hardware.
BUG=94103
TEST=none (tested manually to verify no regression)
Review URL: http://codereview.chromium.org/7756001
TBR=kbr@google.com
Review URL: http://codereview.chromium.org/7795006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98694 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
not reproduce this crash in house any more, so adding more code along
the lines of the earlier fix which was known to work on some hardware.
BUG=94103
TEST=none (tested manually to verify no regression)
Review URL: http://codereview.chromium.org/7756001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98355 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=94103
TEST=none
Review URL: http://codereview.chromium.org/7740010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98146 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=rolled output into NaCl
Review URL: http://codereview.chromium.org/7669034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98083 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
crashes during resizing. Explicitly delete and re-create the FBO
associated with the "saved texture", to give the driver a hint that
drawing commands targeting the old texture must be flushed.
(Re-land of http://codereview.chromium.org/7685024/ with gpu_unittest
fixes.)
BUG=89557
TEST=none (manually resized window with test case from bug; no crashes)
Review URL: http://codereview.chromium.org/7711020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97776 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mac OS X 10.6 causing GPU process
crashes during resizing. Explicitly delete and re-create the FBO
associated with the "saved texture", to give the driver a hint that
drawing commands targeting the old texture must be flushed.
BUG=89557
TEST=none (manually resized window with test case from bug; no crashes)
Review URL: http://codereview.chromium.org/7685024
TBR=kbr@google.com
Review URL: http://codereview.chromium.org/7708022
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97768 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
crashes during resizing. Explicitly delete and re-create the FBO
associated with the "saved texture", to give the driver a hint that
drawing commands targeting the old texture must be flushed.
BUG=89557
TEST=none (manually resized window with test case from bug; no crashes)
Review URL: http://codereview.chromium.org/7685024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97744 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=97644
Review URL: http://codereview.chromium.org/7671035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97668 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/7671035
TBR=nduca@chromium.org
Review URL: http://codereview.chromium.org/7713001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97645 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/7671035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97644 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DoTexImage2D. This fixes a regression where redefinition using
glTexImage2D of a texture that did not fit in the command buffer would
be silently skipped.
Thanks to gman for help with the unit test.
BUG=93150
TEST=GLES2DecoderTest.TexImage2DRedefinitionSucceeds
Review URL: http://codereview.chromium.org/7670033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97175 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
the EGL helper library.
Also removed redundant enums from the API.
Review URL: http://codereview.chromium.org/7576012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97019 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allowes us to more efficiently manage ids. It is
not OpenGL ES 2.0 compatible though it probably fits most OpenGL ES
programs.
Note that we need to turn this off on Pepper and/or probably
provide a way for Pepper to turn on on. I'm not sure of the
path Pepper takes to setup. Assuming it goes through
GraphicsContext3D then changes to webkit will be needed to
get the flag all the way down through IPC to the GPU process.
TEST=unit tests and ran a few pages in a chrome build
BUG=92260
Review URL: http://codereview.chromium.org/7633060
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96904 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
TEST=none
BUG=none
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96510 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
moved to gl2ext.h. Got rid of gles2_command_buffer.h
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/7623001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96507 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=made demo and tested it.
BUG=91046
Review URL: http://codereview.chromium.org/7604027
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96317 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
Because we aren't using it for anything anymore.
Review URL: http://codereview.chromium.org/7538008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96238 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) Unit tests were incorrectly using TextureInfo
2) GLES2Implementation::TexSubImageImpl was reading 1-7 bytes
too many.
TEST=ran with Dr.Memory
BUG=91786
Review URL: http://codereview.chromium.org/7541074
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95906 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For contexts not sharing resources this means the 3 to 30 calls
to get link status and attrib/uniform locations will go from
3-30 sync calls to 1 sync call.
TEST=unit tests and ran OpenGL ES 2.0 conformance tests
BUG=85966
Review URL: http://codereview.chromium.org/7358006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95836 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When share groups and pooled IDs are in use, a race condition exists when destroying resources since
the IDs are marked as free before the resource is actually freed. Consider:
Context A creates a framebuffer with id 1
Context B is created in the same sharegroup as A
Context A destroys its framebuffer:
- the ID is freed (via FreeIDs(), which is a synchronous call)
- a DeleteFrameBuffersImmediate command is entered into A's command buffer but does not immediately execute
Context B creates a framebuffer
- genFramebuffer() makes a sync call to the service side, which reports that id 1 is available
At this point, if the service side processes and commands in context B's command stream, it will throw kInvalidArguments
because as far as the service side is concerned framebuffer 1 has never been released.
This patch adds a Flush() after destroying a resource so that the service side will process the resource destruction
command before servicing other command streams. There's still a potential race condition if multiple contexts in the
same share groups are making calls from different threads, but today all contexts in the same share group are on the same thread.
BUG=80703
TEST=none
Review URL: http://codereview.chromium.org/7574024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95576 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
TEST=ran tests
BUG=none
TBR=apatrick@chromum.org
Review URL: http://codereview.chromium.org/7575005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95474 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/7564013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95462 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
put all compositor and canvas contexts in the same share group so they can share IDs.
Review URL: http://codereview.chromium.org/7554015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95345 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
We don't want to resolve to the parent texture, as that can cause an accidental swapbuffers when preserveDrawingBuffer is false. Instead create a temporary texture which will stick around for a while.
BUG=55927
TEST=
Review URL: http://codereview.chromium.org/7553018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95332 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
PPB_Graphics3D_Dev::Resize() API.
BUG=62383
Review URL: http://codereview.chromium.org/7529009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95134 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TBR=gman
BUG=none
TEST=tree greens
Review URL: http://codereview.chromium.org/7518023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94898 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
TEST=NONE
BUG=NONE
Review URL: http://codereview.chromium.org/7493008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94883 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
into another.
This is on an individual resource basis rather than general share groups in order to hide be able to hide the full namespace from untrusted plugins.
Accelerated 2D canvas now no longer needs to copy its backing store on every page composite and the redundant backing texture is not needed, saving video memory.
Unit tests for the GPU service to follow.
Patch to delete copyTextureToParentTexture extensions from gpu/ to follow.
BUG=90714
Review URL: http://codereview.chromium.org/7529015
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7518016
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94808 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Required nacl changes are checked into the nacl repo and rolled into the chromium repo.
BUG=89127,89670
Review URL: http://codereview.chromium.org/7488031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94772 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is on an individual resource basis rather than general share groups in order to hide be able to hide the full namespace from untrusted plugins.
Accelerated 2D canvas now no longer needs to copy its backing store on every page composite and the redundant backing texture is not needed, saving video memory.
Unit tests for the GPU service to follow.
Patch to delete copyTextureToParentTexture extensions from gpu/ to follow.
BUG=90714
Review URL: http://codereview.chromium.org/7529015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94743 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
With apatrick's changes in r93066, we no longer need to manually sync up with the
command buffer before handling IPC messages in GpuVideoDecodeAccelerator.
BUG=none
TEST=gles2 example runs without crashing
Review URL: http://codereview.chromium.org/7521015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94561 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This does a CommandBufferHelper flush in UnmapTexSubImage2DCHROMIUM so the gpu process can start
processing texture uploads as soon as the texture is unmapped instead of waiting until the next
hard flush or finish. This increase parallelization for tile uploads, especially during compositor
startup and when the entire root layer is damaged.
On my linux z600, this cuts down on the time taken to initially composite the poster circle page
measured from start of RenderWidget::DoDeferredUpdate to the first SwapBuffers completing from
100ms->50ms
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/7492060
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94504 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Ported pepper 3d demos to use the new graphics3d interface instead of context3d and surface3d.
BUG=86370
TBR=piman
Review URL: http://codereview.chromium.org/7470031
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94348 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
glFlush now has barrier semantics and is now used as an alternative.
This patch is dependent on https://bugs.webkit.org/show_bug.cgi?id=65043, now landed as webkit r91736.
Review URL: http://codereview.chromium.org/7495009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94215 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/7477008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94115 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add support for GL_OES_EGL_image_external to the cmdbuffer code.
Original patch from http://codereview.chromium.org/7458008/
Landing on behalf of Daniel Sievers <sievers@chromium.org>
BUG=
TEST=new unit_tests
Review URL: http://codereview.chromium.org/7480014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94096 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently cross process image transport (on OSX and TOUCH_UI) uses the WebGL code path to render to a texture via FBO. This makes a clean break with path and centralizes the GL context specific IPC communication in one location.
By separating from the WebGL code, I was able to avoid wasting a texture attached to the FBO in the decoder (the old code ignored this attachment --- the new code makes no such attachment at the decoder level).
As a test of the new architecture, I have also implemented XComposite/GLX_texture_from_pixmap image transport (i.e. it's now possible to use the --use-gl=desktop backend on touch_ui builds).
BUG=none
TEST=3D CSS and WebGL on TOUCH_UI.
Review URL: http://codereview.chromium.org/7395020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93681 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
parent to having a parent.
RendererGLContext::SetParent is a no-op if the parent did not change to avoid a redundant sync IPC.
Added SetParentContext to WebGraphicsContext3DCommandBufferImpl. WebKit change to follow.
Original review: http://codereview.chromium.org/7237009
A patch that this was dependent on was reverting, causing this one to break 2D canvas. The patch is relanded. Relanding this one as well.
Review URL: http://codereview.chromium.org/7488001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93677 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
in-proc GL function ptr struct. Required for Ganesh ui rendering.
Review URL: http://codereview.chromium.org/7482003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93673 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I need to make NaCl expect this file so that I can then put the real one on chromium.
The steps are
#1) check in this blank file
#2) make NaCl use this file (update its deps, link in nacl.scons)
#3) commit the real file in chromium
#4) profit
TEST=none
BUG=85966
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7491005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93594 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=none
TEST=none
TBR=gman@chromium.org
Review URL: http://codereview.chromium.org/7493006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93547 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TEST=none
BUG=none
TBR=apatrick@chromium.org
Review URL: http://codereview.chromium.org/7488004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93543 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Also fixed a couple of other related things
TEST=unit tests
BUG=89593
Review URL: http://codereview.chromium.org/7471032
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93541 0039d316-1c4b-4281-b951-d872f2087c98
|