[Intel-gfx] intel_gpu_top decode..

Peter Clifton pcjc2 at cam.ac.uk
Thu Oct 7 14:55:02 CEST 2010


On Wed, 2010-10-06 at 15:27 -0700, Eric Anholt wrote:

> Of this, I'd say that you're spending a surprising amount of time in
> texture fetch.  Finding ways to reduce texture bandwidth may pay off,
> assuming that (texture fetch / sampler cache) is the percentage of the
> time you're cache missing.  I'm not sure if that's true or not, though.
> And you said that this data was just for the line drawing, which didn't
> appear to have any texturing going on at all, so I'm just confused.

I cut down my rendering code to almost nothing (just draw a blank
full-viewport quad 30 times):

    int count = 0;
    glBegin (GL_QUADS);
    for (count = 0; count < 30; count++) {
      glVertex3i (0,             0,              0);
      glVertex3i (PCB->MaxWidth, 0,              0);
      glVertex3i (PCB->MaxWidth, PCB->MaxHeight, 0);
      glVertex3i (0,             PCB->MaxHeight, 0);
    }
    glEnd ();


and was able to get this trace:

Texture unit %busy seems to go up with increasing count above.

core clock: 400 Mhz
                     ring idle:   3%: █▍                                       
                    ring space: 60/126976 (0%)
                          task  percent busy

                        UC0 CS:  93%: █████████████████████████████████████▍   
                         VF CS:  92%: █████████████████████████████████████    
                   Row 1, EU 3:  92%: █████████████████████████████████████    
                    Windowizer:  92%: █████████████████████████████████████    
                   Row 0, EU 3:  92%: █████████████████████████████████████    
                   Row 1, EU 2:  92%: █████████████████████████████████████    
                   Row 0, EU 2:  92%: █████████████████████████████████████    
                  Setup Engine:  92%: █████████████████████████████████████    
                   Row 1, EU 1:  92%: █████████████████████████████████████    
                        ISC CS:  92%: █████████████████████████████████████    
                   Row 0, EU 1:  92%: █████████████████████████████████████    
                   Row 1, EU 0:  92%: █████████████████████████████████████    
                   Bypass FIFO:  92%: █████████████████████████████████████    
                    Map filter:  92%: █████████████████████████████████████    
                  Pixel shader:  92%: █████████████████████████████████████    
                     Filtering:  92%: █████████████████████████████████████    
                         CL CS:  79%: ███████████████████████████████▊         
            Texture decompress:  76%: ██████████████████████████████▌          
                 Texture fetch:  74%: █████████████████████████████▊           
                 Sampler cache:  73%: █████████████████████████████▍           
                         GS CS:  70%: ████████████████████████████▏            
                        URB CS:  69%: ███████████████████████████▊             
                        VS0 CS:  54%: █████████████████████▊                   
            Projection and LOD:  50%: ████████████████████▏                    
                    Dispatcher:  39%: ███████████████▊                         
   Dependent address generator:  38%: ███████████████▍                         
         Message Arbiter row 1:  19%: ███████▊                                 
                     EM1 CS CR:   7%: ███                                      
                    SVDR CS CR:   4%: █▊                                       
                    SVSM CS CR:   1%: ▌                                        
                    SVTW CS CR:   0%: ▏                                        
                      GW CS CR:   0%: ▏                                        
                        UC1 CS:   0%: ▏                                        
                    SVRW CS CR:   0%: ▏                                        
                    SVRR CS CR:   0%: ▏                                        
                     EM0 CS CR:   0%: ▏                                        
                     MAW CS CR:   0%: ▏                                        
                    MASM CS CR:   0%: ▏                                        
                    SVDW CS CR:   0%: ▏        


This was just with the following rendering code (and the fragment shader
I posted before, FF vertex pipeline). Without the fragment shader, I got
this (similar) trace:


                        UC0 CS:  82%: █████████████████████████████████        
                         VF CS:  82%: █████████████████████████████████        
                   Row 1, EU 3:  82%: █████████████████████████████████        
                    Windowizer:  82%: █████████████████████████████████        
                   Row 0, EU 3:  82%: █████████████████████████████████        
                        ISC CS:  82%: █████████████████████████████████        
                   Row 1, EU 2:  82%: █████████████████████████████████        
                  Setup Engine:  82%: █████████████████████████████████        
                   Row 0, EU 2:  82%: █████████████████████████████████        
                   Row 1, EU 1:  82%: █████████████████████████████████        
                   Row 1, EU 0:  82%: █████████████████████████████████        
                   Row 0, EU 1:  82%: █████████████████████████████████        
                    Map filter:  81%: ████████████████████████████████▌        
                 Texture fetch:  79%: ███████████████████████████████▊         
                   Bypass FIFO:  77%: ███████████████████████████████          
                  Pixel shader:  75%: ██████████████████████████████▏          
            Texture decompress:  71%: ████████████████████████████▌            
                     Filtering:  71%: ████████████████████████████▌            
                         CL CS:  70%: ████████████████████████████▏            
                 Sampler cache:  70%: ████████████████████████████▏            
                        URB CS:  68%: ███████████████████████████▍             
                         GS CS:  62%: █████████████████████████                
                        VS0 CS:  49%: ███████████████████▊                     
         Message Arbiter row 1:  32%: █████████████                            
                     EM1 CS CR:  13%: █████▍                                   
                    SVDR CS CR:   7%: ███                                      
                    SVSM CS CR:   5%: ██▏                                      
                    SVTW CS CR:   0%: ▏                                        
                      GW CS CR:   0%: ▏                                        
                        UC1 CS:   0%: ▏                                        
                     MAW CS CR:   0%: ▏                                        
                    SVRR CS CR:   0%: ▏                                        
                    SVRW CS CR:   0%: ▏                                        
                     EM0 CS CR:   0%: ▏                                        
                    MASM CS CR:   0%: ▏                                        
                    SVDW CS CR:   0%: ▏                                        
                    MASF CS CR:   0%: ▏                                        
            Projection and LOD:   0%: ▏                                        
                    Dispatcher:   0%: ▏                            


For the shader case, I captured a GPU dump during execution. It is
attached (gzipped)

Is it possible the texture unit is involved in copying buffers? Or is it
just a case of mis-reporting what is active?


-- 
Peter Clifton

Electrical Engineering Division,
Engineering Department,
University of Cambridge,
9, JJ Thomson Avenue,
Cambridge
CB3 0FA

Tel: +44 (0)7729 980173 - (No signal in the lab!)
Tel: +44 (0)1223 748328 - (Shared lab phone, ask for me)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gpu_dump_texture_unit_busy.txt.gz
Type: application/x-gzip
Size: 158631 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20101007/4ebc0055/attachment.bin>


More information about the Intel-gfx mailing list