<div dir="ltr">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    <div>于 2014年12月26日 09:46, Michel Dänzer 写道:<br>
    </div>
    <blockquote type="cite">
      <pre>On 26.12.2014 10:16, 李真能 wrote:
</pre>
      <blockquote type="cite">
        <pre>于 2014年12月25日 10:06, Michel Dänzer 写道:
</pre>
        <blockquote type="cite">
          <pre>On 24.12.2014 18:26, 李真能 wrote:
</pre>
          <blockquote type="cite">
            <pre>So recently I tested the performance between Radeon Mobility FireGL
9000(RV250) and Radeon HD 5450 with x11perf, the test command is :
x11perf -repeat 3 -subs 2000 -time 3 move -sync -v1.2
enrironment:
os: rhel 7 x64, no desktop environment, only using xorg+x11perf to test
hardware:
CPU: intel pentium dual-core e5800, 3.2GHZ
memory size: 3G
After started Xorg with M9000 or HD 5450, radeon driver is used and
acceleration is enabled, accelmethod is exa, resolution is 1920x1080.

test result are as follows(unit: /sec):

     "Move window"        "Move unmapped window"      "Move window via parent"
M9000   11300                   79200                   1110000
HD5450  7430                    70700                   2810000

M9000 is a more old card,HD 5450 is a newer product than M9000 about 10
years.
>From the test result of "Move window", HD 5450 is lower than M9000, why?
</pre>
          </blockquote>
          <pre>One possible reason is that in contrast to the M9000, the HD5450 doesn't
have a dedicated 2D engine which can do overlapping blits. It has to
emulate those using two copies via a temporary pixmap.
</pre>
        </blockquote>
      </blockquote>
      <pre>BTW, you should be able to validate this theory by comparing the x11perf
-copypixwin500 and -copywinwin500 numbers. If the theory is right, they
should be roughly the same with the M9000, but the former numbers should
be roughly twice as high as the latter with the HD5450.

</pre>
    </blockquote>
    Test result:<br>
    <br>
    <table height="92" border="1" cellpadding="2" cellspacing="2" width="532">
      <tbody>
        <tr>
          <td valign="top"><br>
          </td>
          <td valign="top">-copypixwin500<br>
          </td>
          <td valign="top">-copywinpix500<br>
          </td>
        </tr>
        <tr>
          <td valign="top">CPU: i3, 2.93HZ; OS: RHEL6;  M9000<br>
          </td>
          <td valign="top">482<br>
          </td>
          <td valign="top">519<br>
          </td>
        </tr>
        <tr>
          <td valign="top">CPU: i3, 2.93HZ; OS: RHEL6; HD5450<br>
          </td>
          <td valign="top">4840<br>
          </td>
          <td valign="top">2450<br>
          </td>
        </tr>
      </tbody>
    </table>
    <br>
    This result should validate your theory that HD 5450 has no
    dedicated 2D engine and M9000 has a dedicated 2D engine.<br>
    And I have test it in different video card and  platform:<br>
    <br>
    <table border="1" cellpadding="2" cellspacing="2" width="100%">
      <tbody>
        <tr>
          <td valign="top"><br>
          </td>
          <td valign="top">-copypixwin500<br>
          </td>
          <td valign="top">-copywinpix500<br>
          </td>
        </tr>
        <tr>
          <td valign="top">CPU: ppc 1.2GHZ; OS: RHEL5;  RADEON M9000</td>
          <td valign="top">2008<br>
          </td>
          <td valign="top">2070<br>
          </td>
        </tr>
        <tr>
          <td valign="top">CPU: ppc 1.8GHZ; OS: RHEL7;  RADEON E6460<br>
          </td>
          <td valign="top">9450<br>
          </td>
          <td valign="top">2320<br>
          </td>
        </tr>
      </tbody>
    </table>
    <br>
    According to your theory, the test of m9000  is OK,  but  the
    performance  of -copypixwin500 is nearly  quadruple  performance of
    -copywinpix500 with the E6460,  that is to say, if video card has a
    dedicated 2D engine which can do overlapping blits, GPU will do the
    copy between pix(video memory?) and win(video memory?) ,if video
    card has not a dedicated 2D engine, CPU will do the copy between
    pix(video memory or ram?) and win(video memory?),  is it right?<br>
    <blockquote type="cite">
      <pre></pre>
      <blockquote type="cite">
        <pre>How to detect a video card if it has a dedicated 2D engine, is it
possible to  tune performance for this, can you give me any advice?
</pre>
      </blockquote>
      <pre>What level (user, X client, X server, ...) does your question apply to?
</pre>
    </blockquote>
    Can you recommend us some model numbers or product type of ati video
    card supported dedicated 2D engine? It is best to have video card
    supported this function, and all thing will be ok.<br>
    <br>
     Does new video cards almost have not  this function? If so , I want
    to tune performance, what i can do are as follows:<br>
    user/X client: Using Open gl to draw pixmaps;<br>
    x server: Using 3d engine to do 2d operations in xf86-video-ati.<br>
    Is it right?<br>
    Do you have any advices?<br>
    <br>
  </div>

</div>