[Mesa-users] glXImportContextEXT / parallel rendering

Joachim Schöberl joachim.schoeberl at tuwien.ac.at
Thu Feb 17 13:31:36 PST 2011


Hello OpenGL / Mesa experts,

I am facing difficulties with glXImportContextEXT.

I want to do parallel rendering from a Linux cluster using shared display 
lists. The master shall create the GLXContext, and the slaves should 
contribute display lists via shared contextes generated by 
glXImportContextEXT.

Works fine on the local machine, but I get crashes from remote access from our 
university super computer. Unfortunately, the linux distribution on the big 
machine includes the rather old mesa 6.5, and that's out of my hands. 

I have attached two simple codes, master and slave (not doing real stuff, but 
reproducing the crashes). 

Running master locally I get:

test/opengl> master -indirect
master: displname = :0
master: extensionstring = GLX_EXT_visual_info GLX_EXT_visual_rating 
GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control 
GLX_EXT_swap_control GLX_EXT_texture_from_pixmap GLX_ARB_create_context 
GLX_ARB_create_context_profile GLX_ARB_multisample GLX_NV_float_buffer 
GLX_ARB_fbconfig_float GLX_NV_swap_group GLX_EXT_framebuffer_sRGB 
GLX_NV_multisample_coverage GLX_NV_copy_image GLX_NV_video_capture 
GLX_ARB_get_proc_address
********** please enter these values for slave  **********
master: drawable  = 56623106
master: contextid = 56623107
**********************************************************



starting the slave from the linux cluster (connected via ssh -Y ..) I get:

[jschoebe at n67 test]$ ./slave
displname = localhost:12.0
************ take values from master *********
drawable = 56623106
contextid = 56623107
display = 0x503010
window-props:  x = 0, y = 0, w = 400, h = 500, depth = 24, root-win = 627
extensionstring = GLX_ARB_get_proc_address GLX_ARB_multisample 
GLX_EXT_import_context GLX_EXT_visual_info GLX_EXT_visual_rating 
GLX_SGI_make_current_read GLX_SGI_swap_control GLX_SGI_video_sync 
GLX_SGIX_fbconfig GLX_SGIX_pbuffer
found VISINFO !!!
attribs = 1 4 8 8 9 8 10 8 12 1
visid = 41
screen = 0
depth = 24
class = 4
rgb mask = 16711680/65280/255
bits_per_rgb = 11
now, import glxcontext ...
Xlib: sequence lost (0x10000 > 0x11) in reply type 0x11!



Running slave on the local network, I can create the shared glxcontext.
Who can tell me what  I have done wrong, or what kind of workaround I need ?

thanks a lot,
Joachim

PS: My application is Netgen  http://sourceforge.net/projects/netgen-mesher/


-------------- next part --------------
A non-text attachment was scrubbed...
Name: slave.cpp
Type: text/x-c++src
Size: 3087 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-users/attachments/20110217/c218d1cf/attachment.cpp>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: master.cpp
Type: text/x-c++src
Size: 2323 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-users/attachments/20110217/c218d1cf/attachment-0001.cpp>


More information about the mesa-users mailing list