There is no solution. The error you are getting suggests that you don’t have OpenGL support on the X11 server you are running, but even if you fix that, it still will not work. The particles and other examples which use CUDA-OpenGL interoperability are intended to be run on a display GPU. They can’t be used remotely via a remote X or forwarded X connection.
I believe you can use VirtualGL to tunnel OpenGL from a CUDA host to a remote client, I’ve only done this once but it worked reasonably well. More info is at:
thanks for you reply. I installed it and it works, (but not so fast).
However, something bothering me is that the openGL is designed using a sever-client sides mechanism, which means it is not a problem whether the graphical cards or display monitor are on the same machine or not. The hint is that no special software should be required to invoke the graphical cards remotely. I don’t know what I am missing here.