| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
First step of a larger refactor to push some of the logic from the
AsyncPixelTransferDelegate to the AsyncPixelTransferManager. This
CL moves a lot of files (async_pixel_transfer_delegate_* -->
async_pixel_transfer_manager_*) and introduces some Manager wrappers.
There is no functional change.
BUG=240504
Review URL: https://chromiumcodereview.appspot.com/16325018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204017 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=241938
R=piman@chromium.org
Review URL: https://codereview.chromium.org/16360018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@204015 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Again, these code is not depending on any content stuff, so moving it to gpu/ side will allow us to disable more gpu tests per GPU.
BUG=230477
TEST=gpu_unittests,tree
TBR=kbr@chromium.org, piman@chromium.org
Review URL: https://codereview.chromium.org/15827008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202690 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Try to reland r201380 with build fix.
This has been suggested by gman, and agreed by kbr and jam, for the following reasons:
1) These are gpu related code, and are independent of content / browser, so putting them under gpu/ is the right thing to do conceptually.
2) This enables us to set up tests in various places with the correct blacklisting/driver_bug_workarounds information. Otherwise, for the moment, gpu/ has no visibility into content/ side, so we have to duplicate the driver_bug_workarounds code and hardwire them for testing purpose. This is going to cause a lot of bugs in the future, as we have the two pieces of code for the same thing (one for chrome and one for testing) and people will easily forget to update one or the other.
As for this patch, I didn't change the logic, and try to minimize the refactoring. All improvements enabled by this relocation will be done in follow-up CLs.
BUG=230477
TEST=tree
TBR=apatrick@chromium.org, joi@chromium.org, kbr@chromium.org, piman@chromium.org, sky@chromium.org
Review URL: https://codereview.chromium.org/15745014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201875 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Move GPU device/driver info related code from content to gpu.
>
> This has been suggested by gman, and agreed by kbr and jam, for the following reasons:
>
> 1) These are gpu related code, and are independent of content / browser, so putting them under gpu/ is the right thing to do conceptually.
>
> 2) This enables us to set up tests in various places with the correct blacklisting/driver_bug_workarounds information. Otherwise, for the moment, gpu/ has no visibility into content/ side, so we have to duplicate the driver_bug_workarounds code and hardwire them for testing purpose. This is going to cause a lot of bugs in the future, as we have the two pieces of code for the same thing (one for chrome and one for testing) and people will easily forget to update one or the other.
>
> As for this patch, I didn't change the logic, and try to minimize the refactoring. All improvements enabled by this relocation will be done in follow-up CLs.
>
> BUG=230477
> TEST=tree
> TBR=gman@chromium.org, joi@chromium.org, kbr@chromium.org, piman@chromium.org
>
> Review URL: https://codereview.chromium.org/15385003
TBR=zmo@chromium.org
Review URL: https://codereview.chromium.org/15619004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201386 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This has been suggested by gman, and agreed by kbr and jam, for the following reasons:
1) These are gpu related code, and are independent of content / browser, so putting them under gpu/ is the right thing to do conceptually.
2) This enables us to set up tests in various places with the correct blacklisting/driver_bug_workarounds information. Otherwise, for the moment, gpu/ has no visibility into content/ side, so we have to duplicate the driver_bug_workarounds code and hardwire them for testing purpose. This is going to cause a lot of bugs in the future, as we have the two pieces of code for the same thing (one for chrome and one for testing) and people will easily forget to update one or the other.
As for this patch, I didn't change the logic, and try to minimize the refactoring. All improvements enabled by this relocation will be done in follow-up CLs.
BUG=230477
TEST=tree
TBR=gman@chromium.org, joi@chromium.org, kbr@chromium.org, piman@chromium.org
Review URL: https://codereview.chromium.org/15385003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@201380 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
- Introduces a new GL extension CHROMIUM_map_image that contains Create/Destroy/Map/Unmap/GetImageParameteriv methods.
- A new data structure called GpuMemoryBufferTracker to track these buffers and images on the client side.
BUG=175012
Review URL: https://chromiumcodereview.appspot.com/14456004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@200505 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
This functionality needs to be exposed in places outside of content/, i.e. gpu/.
Review URL: https://chromiumcodereview.appspot.com/14366008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@196086 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
separate class.
Review URL: https://chromiumcodereview.appspot.com/14308014
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@195002 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use PBOs in gl_helper
swizzle bytes on gpu
flip vertically on gpu
remove gl_helper_thread
Implements GLHelper::CropScaleReadbackAndCleanTexture() to be non-blocking in the client by using shared memory combined with a query (not requiring actual GL PBO support, which would not be available on Android).
Review URL: https://chromiumcodereview.appspot.com/12892005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191737 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=180432
Review URL: https://chromiumcodereview.appspot.com/12502009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@189109 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This CL adds a per-profile disk cache for any shaders that are
complied while using the profile. When the profile is first opened
the shaders will be loaded from disk and used to pre-populate the
GPU memory shader cache.
The disk cache takes the load time for From Dust from ~30 seconds
to ~18 seconds on my Linux machine for any loads after the first.
BUG=166763
Review URL: https://chromiumcodereview.appspot.com/12036056
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@187704 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit a8fb8f44bc56943c45bd06034fc004e22ef5da85 and
fixes the bug related to the WebGL null object test.
BUG=178093
TBR=apatrick@chromium.org
Review URL: https://chromiumcodereview.appspot.com/12542009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186573 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
> Use client side arrays for GL_STREAM_DRAW attributes
>
> Certain GPU/drivers are slow when using constantly changing
> vertex buffers. They also run out of memory as the pipeline
> the buffers so while a buffer is in used being drawn to they
> can't delete it immediately when you upload new data to the
> buffer.
>
> This is an attempt to work around that issue seemlessly by
> using client side arrays for buffers marked as GL_STREAM_DRAW
>
> BUG=178093
>
>
> Review URL: https://chromiumcodereview.appspot.com/12494005
TBR=gman@chromium.org
Review URL: https://codereview.chromium.org/12544006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186459 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Certain GPU/drivers are slow when using constantly changing
vertex buffers. They also run out of memory as the pipeline
the buffers so while a buffer is in used being drawn to they
can't delete it immediately when you upload new data to the
buffer.
This is an attempt to work around that issue seemlessly by
using client side arrays for buffers marked as GL_STREAM_DRAW
BUG=178093
Review URL: https://chromiumcodereview.appspot.com/12494005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186416 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Just a bunch of c4267 build suppressions.
BUG=166496
BUG=167187
TBR=piman@chromium.org
R=piman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/12282017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182979 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Just c4267 build suppressions.
BUG=166496
BUG=167187
TBR=gman@chromium.org
R=gman@chromium.org
Review URL: https://codereview.chromium.org/12261007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@182225 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Just c4267 build suppressions.
BUG=166496
BUG=167187
TBR=piman@chromium.org
R=piman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/12210078
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181453 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building on windows with target_arch=x64, we no longer need win32 targets
forced to be 64-bit. This gates out these targets when target_arch!=ia32.
(Prior CL dropped the minimal set to break the dependency between these targets
and the rest of the build. This eliminates them completely.)
BUG=None
TEST=None
R=jschuh@chromium.org,thestig@chromium.org
TBR=darin@chromium.org,abodenha@chromium.org,apatrick@chromium.org,sra@chromium.org,wtc@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11929039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177959 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This just suppresses warnings for chrome.exe.
More suppressions are needed for the tests.
BUG=166496
BUG=167187
TBR=apatrick@chromium.org
Review URL: https://codereview.chromium.org/12039008
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@177925 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=166020
Review URL: https://chromiumcodereview.appspot.com/11568029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173441 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a generic async pixel transfer interface, a
stub/fallback implementation and mocks/tests.
NOTRY=true
BUG=161337
Review URL: https://chromiumcodereview.appspot.com/11428140
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173430 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=164132
Review URL: https://chromiumcodereview.appspot.com/11566006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@173384 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
I moved gl_mock.h/cc from gpu to gl and made them mostly autogenned
BUG=none
Review URL: https://codereview.chromium.org/11444028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@171744 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Vertex Array Objects were broke for client side arrays
BUG=160482
TBR=brettw@chromium.org
Review URL: https://chromiumcodereview.appspot.com/11413094
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170281 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
I suspect that the target name collision is causing compile failures on Win (e.g. http://build.chromium.org/p/chromium.win/builders/Win%20Builder/builds/4176/steps/compile/logs/stdio)
BUG=none
TBR=jochen@chromium.org
NOTRY=true
Review URL: https://codereview.chromium.org/11412217
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169895 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Also added some tests for it.
Review URL: https://chromiumcodereview.appspot.com/11411054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169509 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds two new types of buffer objects,
GL_PIXEL_PACK_TRANSFER_BUFFER_BINDING_CHROMIUM and
GL_PIXEL_UNPACK_TRANSFER_BUFFER_BINDING_CHROMIUM. The PIXEL_PACK buffer
affects API calls that pack pixel data, such as glReadPixels. The
PIXEL_UNPACK buffer affects API calls that unpack pixel data, such as
glTexImage2D. These new buffer object are backed by shared memory, which
allows clients to update them without any unnecessary copying.
BUG=111096,161337
TEST=unit tests
Review URL: https://chromiumcodereview.appspot.com/10440019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168999 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
instead of hardcoding it all over the place (literally).
This is one of the steps towards use_system_mesa build option.
BUG=161389
Review URL: https://chromiumcodereview.appspot.com/11416085
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@168931 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
I was hoping to uncover a bug here but no luck.
BUG=160247
Review URL: https://chromiumcodereview.appspot.com/11358179
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@167618 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=155557
Review URL: https://chromiumcodereview.appspot.com/11275120
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166442 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=155557
Review URL: https://chromiumcodereview.appspot.com/11301006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164798 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Increases query result size to be 64 bits.
Allows result to be used as input on the query begin.
BUG=
Review URL: https://chromiumcodereview.appspot.com/11235012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163683 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
glLinkProgram is supposed to start using a linked program
immediately if that program is the current program
BUG=110263
Review URL: https://chromiumcodereview.appspot.com/11227045
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@163642 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GLES2Interface is a pure virutal interface. It's likely
that more functions of GLES2Implementation will need have
be declared in GLES2Interface but this is a first step
BUG=155914
Review URL: https://chromiumcodereview.appspot.com/11138021
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162216 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=72612
Review URL: https://chromiumcodereview.appspot.com/10915244
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@158967 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
This removes 'or' and 'and' usage that is outside of quoted strings.
TBR=dmichael@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/10886009
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153660 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This does a couple of things:
- It defines a new wrapper for passing any kind of handle through the PPAPI proxy (SerializedHandle).
- It updates nacl_ipc_adapter to have a more general way to pick apart messages based on their static types (which include the types of all the params).
- It adds support for PPB_Graphics2D and PPB_Graphics3D to the NaCl IPC proxy (e.g., NaCl SDK examples pi_generator and tumbler work in the new proxy with this patch).
The downside is it requires pulling parts of ppapi/shared_impl and ppapi/proxy in to the NaCl Win64 build.
BUG=116317
TEST=
Review URL: https://chromiumcodereview.appspot.com/10828023
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153531 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=141700
Review URL: https://chromiumcodereview.appspot.com/10836185
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@151194 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=116317
TEST=builds,manual
With this change, the IPC-based PPAPI proxy builds all code needed for 3d and OpenGL ES.
Review URL: https://chromiumcodereview.appspot.com/10837145
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150432 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to untrusted build.
BUG=116317
TEST=builds,manual
With this change, the IPC-based PPAPI proxy builds and runs the tumbler example.
Review URL: https://chromiumcodereview.appspot.com/10796038
TBR=bbudge@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10830197
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150345 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=116317
TEST=builds,manual
With this change, the IPC-based PPAPI proxy builds and runs the tumbler example.
Review URL: https://chromiumcodereview.appspot.com/10796038
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@150343 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Makes it possible to asynchronously query GL errors.
TEST=unit tests
BUG=133630
Review URL: https://chromiumcodereview.appspot.com/10577037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@145739 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
TEST=unit test
BUG=120297
Review URL: http://codereview.chromium.org/9836126
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129456 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=114261
TEST=none
TBR=gman
Review URL: https://chromiumcodereview.appspot.com/9617033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@125277 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=114261
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9581018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@124983 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
BUG=114261
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9514020
TBR=rvargas@google.com
Review URL: https://chromiumcodereview.appspot.com/9582024
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@124715 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=114261
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9514020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@124702 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The renderer can't receive UpdateState messages while it's executing javascript or NaCl, causing it to eventually flushsync once it fills up the command buffer or transfer buffer. To avoid this, share a piece of memory between the renderer and gpu process that the GPU can asynchronously update the state. A 4-slot asynchronous communication mechanism is used so that the renderer always receives a consistent copy of the state that was put in by the GPU process.
BUG=
TEST=
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=122034
Review URL: https://chromiumcodereview.appspot.com/9380037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122593 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
There should be no change in behavior.
BUG=114261
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9359055
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@122413 0039d316-1c4b-4281-b951-d872f2087c98
|