Commit 50fb5cc9 by Shahbaz Youssefi Committed by Commit Bot

Disable GPU perf tracking on D3D

Causes crashes. Bug: angleproject:3310 Bug: 945415 Change-Id: I59c5fee0afaf74c99ac19168fbfd96de04796add Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1534946 Commit-Queue: Shahbaz Youssefi <syoussefi@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent a47e2a23
......@@ -525,7 +525,7 @@ void ANGLERenderTest::step()
void ANGLERenderTest::startGpuTimer()
{
if (mTestParams.trackGpuTime)
if (shouldTrackGpuTime())
{
glBeginQueryEXT(GL_TIME_ELAPSED_EXT, mTimestampQuery);
}
......@@ -533,7 +533,7 @@ void ANGLERenderTest::startGpuTimer()
void ANGLERenderTest::stopGpuTimer()
{
if (mTestParams.trackGpuTime)
if (shouldTrackGpuTime())
{
glEndQueryEXT(GL_TIME_ELAPSED_EXT);
uint64_t gpuTimeNs = 0;
......@@ -545,7 +545,7 @@ void ANGLERenderTest::stopGpuTimer()
void ANGLERenderTest::startTest()
{
if (mTestParams.trackGpuTime)
if (shouldTrackGpuTime())
{
glGenQueriesEXT(1, &mTimestampQuery);
mGPUTimeNs = 0;
......@@ -554,7 +554,7 @@ void ANGLERenderTest::startTest()
void ANGLERenderTest::finishTest()
{
if (mTestParams.trackGpuTime)
if (shouldTrackGpuTime())
{
glDeleteQueriesEXT(1, &mTimestampQuery);
}
......@@ -574,6 +574,15 @@ OSWindow *ANGLERenderTest::getWindow()
return mOSWindow;
}
bool ANGLERenderTest::shouldTrackGpuTime() const
{
bool isD3D = mTestParams.getRenderer() == EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE ||
mTestParams.getRenderer() == EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE;
// TODO: On D3D, tracking GPU time causes crashes. http://anglebug.com/3310
return mTestParams.trackGpuTime && !isD3D;
}
bool ANGLERenderTest::areExtensionPrerequisitesFulfilled() const
{
for (const char *extension : mExtensionPrerequisites)
......
......@@ -155,6 +155,7 @@ class ANGLERenderTest : public ANGLEPerfTest
void startTest() override;
void finishTest() override;
bool shouldTrackGpuTime() const;
bool areExtensionPrerequisitesFulfilled() const;
static EGLWindow *createEGLWindow(const RenderTestParams &testParams);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment