Bug 39737

Summary: [bisected] Horrible performance on slower machine
Product: piglit Reporter: Ian Romanick <idr>
Component: infrastructureAssignee: Kenneth Graunke <kenneth>
Status: RESOLVED FIXED QA Contact: Eric Anholt <eric>
Severity: normal    
Priority: medium CC: chadversary
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Ian Romanick 2011-08-01 17:11:13 UTC
I have a Core2 Quad G33 (i915-ish) machine, and piglit performance is horrible recently.  I stopped a test run after an hour and 45 minutes without completing.  My Ironlake system is fine.  Both systems are running Fedora 14 with the Fedora 16 3.0 kernel.  The slow system has a spinning disk, but the fast system has an SSD.  Both systems are using EXT4.

The first bit of the test output is below.  I notice a couple things.  First, after the first three tests complete, there is no interleaving of the tests.  Second, there is a lag of at least one second between on test logging its result and the next test starting.

[Mon Aug  1 17:06:08 2011] ::  running :: asmparsertest/ARBfp1.0/abs-01.txt
[Mon Aug  1 17:06:08 2011] ::  running :: asmparsertest/ARBfp1.0/abs-02.txt
[Mon Aug  1 17:06:08 2011] ::  running :: bugs/crash-cubemap-order
[Mon Aug  1 17:06:08 2011] ::     pass :: asmparsertest/ARBfp1.0/abs-02.txt
[Mon Aug  1 17:06:08 2011] ::     pass :: asmparsertest/ARBfp1.0/abs-01.txt
[Mon Aug  1 17:06:08 2011] ::     pass :: bugs/crash-cubemap-order
[Mon Aug  1 17:06:10 2011] ::  running :: asmparsertest/ARBfp1.0/abs-03.txt
[Mon Aug  1 17:06:10 2011] ::     skip :: asmparsertest/ARBfp1.0/abs-03.txt
[Mon Aug  1 17:06:12 2011] ::  running :: asmparsertest/ARBfp1.0/condition_code-01.txt
[Mon Aug  1 17:06:12 2011] ::     skip :: asmparsertest/ARBfp1.0/condition_code-01.txt
[Mon Aug  1 17:06:13 2011] ::  running :: bugs/crash-texparameter-before-teximage
[Mon Aug  1 17:06:13 2011] ::     pass :: bugs/crash-texparameter-before-teximage
[Mon Aug  1 17:06:15 2011] ::  running :: asmparsertest/ARBfp1.0/cos-01.txt
[Mon Aug  1 17:06:15 2011] ::     pass :: asmparsertest/ARBfp1.0/cos-01.txt
[Mon Aug  1 17:06:17 2011] ::  running :: asmparsertest/ARBfp1.0/cos-02.txt
[Mon Aug  1 17:06:17 2011] ::     pass :: asmparsertest/ARBfp1.0/cos-02.txt
[Mon Aug  1 17:06:18 2011] ::  running :: bugs/fdo10370
[Mon Aug  1 17:06:18 2011] ::     pass :: bugs/fdo10370
[Mon Aug  1 17:06:20 2011] ::  running :: asmparsertest/ARBfp1.0/cos-03.txt
[Mon Aug  1 17:06:20 2011] ::     pass :: asmparsertest/ARBfp1.0/cos-03.txt

I bisected this to the commit below.

commit 84544ba918cbd0c20bf84cc9e228ad7f844ad4d5
Author: Chad Versace <chad@chad-versace.us>
Date:   Mon Jul 18 19:10:36 2011 -0700

    framework: Write each test result to the result file as the test completes
    
    When a test run is interrupted, perhaps by a system crash, we often want
    the test results. To accomplish this, Piglit must write each test result
    to the result file as the test completes.
    
    If the test run is interrupted, the result file will be corrupt. This is
    corrected in a subsequent commit.
    
    CC: Ian Romanick <ian.d.romanick@intel.com>
    Signed-off-by: Chad Versace <chad@chad-versace.us>
Comment 1 Kenneth Graunke 2011-08-03 12:10:31 UTC
Patch on the piglit mailing list:
[PATCH] piglit-run.py: Remove SyncFileWriter as it's not necessary with JSON.
Comment 2 Kenneth Graunke 2011-08-10 23:48:26 UTC
Paul committed this a while back.  Closing.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.