<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>

<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi, Chris<br>
    I have come out a simple and loose criteria for it. It's simply
that "the lighter memory stress, the bigger object retain rate". <br>
    The piglit case is attached for review. According to the testing
result of this case, it's working well.<br>
    <br>
    Also do you have plan or comment on test cases I sent out, or for
those bugs I reported for this feature? <br>
<table class="bz_buglist" width="100%" cellpadding="4" cellspacing="0">
  <tbody>
    <tr
 class="bz_bugitem
             bz_normal             bz_medium             bz_NEW         
                                           bz_row_odd             ">
      <td class="first-child"><a name="b26126"
 href="https://bugs.freedesktop.org/show_bug.cgi?id=26126">26126</a> <span
 style="display: none;"></span> </td>
      <td style="white-space: nowrap;">nor </td>
      <td style="white-space: nowrap;">med </td>
      <td style="white-space: nowrap;"><a class="moz-txt-link-abbreviated" href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a> </td>
      <td style="white-space: nowrap;">NEW </td>
      <td style="white-space: nowrap;"> <br>
      </td>
      <td style="white-space: nowrap;">Linu </td>
      <td> <br>
      </td>
      <td>[APPLE_object_purgeable] is not working with VBO </td>
    </tr>
    <tr
 class="bz_bugitem
             bz_normal             bz_medium             bz_NEW         
                                           bz_row_even             ">
      <td class="first-child"> <a name="b26127"
 href="https://bugs.freedesktop.org/show_bug.cgi?id=26127">26127</a> <span
 style="display: none;"></span> </td>
      <td style="white-space: nowrap;">nor </td>
      <td style="white-space: nowrap;">med </td>
      <td style="white-space: nowrap;"><a class="moz-txt-link-abbreviated" href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a> </td>
      <td style="white-space: nowrap;">NEW </td>
      <td style="white-space: nowrap;"> <br>
      </td>
      <td style="white-space: nowrap;">Linu </td>
      <td> <br>
      </td>
      <td>[APPLE_object_purgeable] is not working with PBO </td>
    </tr>
    <tr
 class="bz_bugitem
             bz_normal             bz_medium             bz_NEW         
                                           bz_row_odd             ">
      <td class="first-child"> <a name="b26128"
 href="https://bugs.freedesktop.org/show_bug.cgi?id=26128">26128</a> <span
 style="display: none;"></span> </td>
      <td style="white-space: nowrap;">nor </td>
      <td style="white-space: nowrap;">med </td>
      <td style="white-space: nowrap;"><a class="moz-txt-link-abbreviated" href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a> </td>
      <td style="white-space: nowrap;">NEW </td>
      <td style="white-space: nowrap;"> <br>
      </td>
      <td style="white-space: nowrap;">Linu </td>
      <td> <br>
      </td>
      <td>[APPLE_object_purgeable] Purgeable(VOLATILE) should always
return VOLATILE </td>
    </tr>
    <tr
 class="bz_bugitem
             bz_normal             bz_medium             bz_NEW         
                                           bz_row_even             ">
      <td class="first-child"> <a name="b26129"
 href="https://bugs.freedesktop.org/show_bug.cgi?id=26129">26129</a> <span
 style="display: none;"></span> </td>
      <td style="white-space: nowrap;">nor </td>
      <td style="white-space: nowrap;">med </td>
      <td style="white-space: nowrap;"><a class="moz-txt-link-abbreviated" href="mailto:chris@chris-wilson.co.uk">chris@chris-wilson.co.uk</a> </td>
      <td style="white-space: nowrap;">NEW </td>
      <td style="white-space: nowrap;"> <br>
      </td>
      <td style="white-space: nowrap;">Linu </td>
      <td> <br>
      </td>
      <td>[APPLE_object_purgeable] error should be generated when
purgeable/unpurgeable called between Begin()/End() </td>
    </tr>
  </tbody>
</table>
<br>
    The test case for performance testing is still under design.<br>
<br>
    And Following is the output from this piglit case.<br>
[root@moblin-desktop piglit]# bin/object_purgeable-texture -auto<br>
Start test with 10% percent memory stress<br>
   Available free memory: 762818560 Bytes<br>
   Available free memory after creating objects and marking as
purgeable: 654897152 Bytes<br>
   76234752 bytes, 1551 texture objects created:<br>
   Available free memory after marking as unpurgeable: 654897152 Bytes<br>
   after mark objects to purgeable:<br>
   1551 texture objects stay volatile<br>
   0 texture objects get released<br>
   after mark objects to unpurgeable:<br>
   1551 texture objects get retained<br>
   0 texture objects get undefined<br>
   100.000000% objects get retained<br>
Start test with 50% percent memory stress<br>
   Available free memory: 654897152 Bytes<br>
   Available free memory after creating objects and marking as
purgeable: 306110464 Bytes<br>
   327401472 bytes, 6661 texture objects created:<br>
   Available free memory after marking as unpurgeable: 306110464 Bytes<br>
   after mark objects to purgeable:<br>
   6661 texture objects stay volatile<br>
   0 texture objects get released<br>
   after mark objects to unpurgeable:<br>
   2057 texture objects get retained<br>
   4604 texture objects get undefined<br>
   30.881250% objects get retained<br>
Start test with 150% percent memory stress<br>
   Available free memory: 612438016 Bytes<br>
   Available free memory after creating objects and marking as
purgeable: 11595776 Bytes<br>
   918650880 bytes, 18690 texture objects created:<br>
   Available free memory after marking as unpurgeable: 14405632 Bytes<br>
   after mark objects to purgeable:<br>
   18690 texture objects stay volatile<br>
   0 texture objects get released<br>
   after mark objects to unpurgeable:<br>
   2057 texture objects get retained<br>
   16633 texture objects get undefined<br>
   11.005885% objects get retained<br>
PIGLIT: {'result': 'pass' }<br>
<br>
Thanks    <br>
    --Shuang<br>
<br>
</body>
</html>