Fwd: x11perf move test performance

Zhenneng Li lizhenneng at gmail.com
Fri Dec 26 00:01:57 PST 2014


 于 2014年12月26日 09:46, Michel Dänzer 写道:

On 26.12.2014 10:16, 李真能 wrote:

 于 2014年12月25日 10:06, Michel Dänzer 写道:

 On 24.12.2014 18:26, 李真能 wrote:

 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?

 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.

 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.


 Test result:


 -copypixwin500
 -copywinpix500
  CPU: i3, 2.93HZ; OS: RHEL6;  M9000
 482
 519
  CPU: i3, 2.93HZ; OS: RHEL6; HD5450
 4840
 2450

This result should validate your theory that HD 5450 has no dedicated 2D
engine and M9000 has a dedicated 2D engine.
And I have test it in different video card and  platform:


 -copypixwin500
 -copywinpix500
  CPU: ppc 1.2GHZ; OS: RHEL5;  RADEON M9000 2008
 2070
  CPU: ppc 1.8GHZ; OS: RHEL7;  RADEON E6460
 9450
 2320

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?

 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?

 What level (user, X client, X server, ...) does your question apply to?

 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.

 Does new video cards almost have not  this function? If so , I want to
tune performance, what i can do are as follows:
user/X client: Using Open gl to draw pixmaps;
x server: Using 3d engine to do 2d operations in xf86-video-ati.
Is it right?
Do you have any advices?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.x.org/archives/xorg-devel/attachments/20141226/7cfbb09d/attachment.html>


More information about the xorg-devel mailing list