[Mesa-dev] st_TexSubImage: unaligned memcpy performance

Vasilis Liaskovitis vliaskov at gmail.com
Wed Apr 8 01:27:41 PDT 2015


Hi,

I have an issue where st_TexSubImage causes very high CPU load in
__memcpy_sse2_unaligned (Mesa 10.1.3, Xorg 1.15.1, radeon driver, HD 7870).

Any obvious causes / tips for this? e.g. align textures or use different
format/type? I 've tried using GL_BGRA/GL_UNSIGNED_BYTE and
GL_BGRA/GL_UNSIGNED_INT_8_8_8_8_REV

__memcpy_sse2_unaligned () at
../sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S:85
85    ../sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S: No such file or
directory.
(gdb) bt
#0  __memcpy_sse2_unaligned () at
../sysdeps/x86_64/multiarch/memcpy-sse2-unaligned.S:85
#1  0x00007fffb572f154 in memcpy (__len=7680, __src=<optimized out>,
__dest=0x7fff5835f800) at /usr/include/x86_64-linux-gnu/bits/string3.h:51
#2  st_TexSubImage (ctx=0x1b91420, dims=<optimized out>,
texImage=0x1f81710, xoffset=0, yoffset=0, zoffset=0, width=1920,
height=1080, depth=1, format=32993, type=5121, pixels=0xdacf90,
unpack=0x1bad590)
    at ../../../../src/mesa/state_tracker/st_cb_texture.c:752
#3  0x00007fffb56c283d in texsubimage (ctx=0x1b91420, dims=dims at entry=2,
target=3553, level=0, xoffset=0, yoffset=0, zoffset=zoffset at entry=0,
width=1920, height=1080, depth=depth at entry=1,
    format=format at entry=32993, type=type at entry=5121,
pixels=pixels at entry=0xdacf90)
at ../../../../src/mesa/main/teximage.c:3445
#4  0x00007fffb56c659c in _mesa_TexSubImage2D (target=<optimized out>,
level=<optimized out>, xoffset=<optimized out>, yoffset=<optimized out>,
width=<optimized out>, height=<optimized out>,
    format=32993, type=5121, pixels=0xdacf90) at
../../../../src/mesa/main/teximage.c:3483
#5  0x00007ffff346191a in ?? () from
/opt/build/Qt/5.4/gcc_64/lib/libQt5Gui.so.5
#6  0x00007ffff345e6ab in ?? () from
/opt/build/Qt/5.4/gcc_64/lib/libQt5Gui.so.5
#7  0x00007ffff345ea32 in QOpenGLTexture::setData(int,
QOpenGLTexture::PixelFormat, QOpenGLTexture::PixelType, void*,
QOpenGLPixelTransferOptions const*) ()
   from /opt/build/Qt/5.4/gcc_64/lib/libQt5Gui.so.5


thanks for any help,

- Vasilis
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20150408/5ed89b25/attachment.html>


More information about the mesa-dev mailing list