I have been investigating on the performance of fobs. I have found that the decoding is not the main bottleneck, but it is the renderer that is slow. Using a CPU of 1.2GHz, I am getting these results:
- mplayer - 46% CPU
- fobs - 95% CPU
- jmf - 100% CPU
Therefore, the decoding does help speed it up a little bit, but the renderer is still a killer.
One immediate question. Will enabling the opengl pipeline (using -Dsun.java2d.opengl=True) in my Swing app improve the rendering? I am not even sure if opengl can help, but it has direct access to the graphics card, and I thought maybe there is a renderer that can use this advantage.
Keith
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I was already in the process of creating an OpenGL renderer (from the code provided by Robert) but it makes use of JOGL project instead if what you suggest. I'll have a look because I didn't know about this JVM param.
THANKS!
Cheers.
Jose San Pedro
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank you for looking into this. I would like to participate more in the testing/development of fobs, but I can't seem to get Java working with OpenGL on my linux box.
I am using an onboard video (Intel 845G chipset), and glxinfo reports a glx client version of only 1.2 (vendor SGI). glxgears works fine with hardware rendering, etc. It's just Java that requires GLX 1.3 and above! I have tried so hard to look for GLX 1.3 drivers but could not find anything on google, etc.
I assume JOGL (your renderer) also uses GLX, thus I will have the same problem?
Keith
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi,
Having tried -Dsun.java2d.opengl=True, it proved slower on my machine, p4 3.0Ghz with ATI Radeon 9200 than normal swing. About glx, I'm not really sure how you have to do it. It depends on what driver you use with your xserver (XfFree/ Xorg). I might be wrong but I think you have the choice between Intel's proprietary drivers and mesa+dri. I hope you get better results than I did.
Good luck
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
It'll be soon enough, need to try some stuff before. I've just crossed the ocean and I'm back in Spain so please be patient until I get over the jet-lag ;)
Note that it seems you'll need to install Cg in addition to JOGL native library for your system.
I will tell you when it's commited!
cheers
Jose San Pedro
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi
I have been investigating on the performance of fobs. I have found that the decoding is not the main bottleneck, but it is the renderer that is slow. Using a CPU of 1.2GHz, I am getting these results:
- mplayer - 46% CPU
- fobs - 95% CPU
- jmf - 100% CPU
Therefore, the decoding does help speed it up a little bit, but the renderer is still a killer.
One immediate question. Will enabling the opengl pipeline (using -Dsun.java2d.opengl=True) in my Swing app improve the rendering? I am not even sure if opengl can help, but it has direct access to the graphics card, and I thought maybe there is a renderer that can use this advantage.
Keith
Hi,
I was already in the process of creating an OpenGL renderer (from the code provided by Robert) but it makes use of JOGL project instead if what you suggest. I'll have a look because I didn't know about this JVM param.
THANKS!
Cheers.
Jose San Pedro
Hi Jose
Thank you for looking into this. I would like to participate more in the testing/development of fobs, but I can't seem to get Java working with OpenGL on my linux box.
I am using an onboard video (Intel 845G chipset), and glxinfo reports a glx client version of only 1.2 (vendor SGI). glxgears works fine with hardware rendering, etc. It's just Java that requires GLX 1.3 and above! I have tried so hard to look for GLX 1.3 drivers but could not find anything on google, etc.
I assume JOGL (your renderer) also uses GLX, thus I will have the same problem?
Keith
Hi,
Having tried -Dsun.java2d.opengl=True, it proved slower on my machine, p4 3.0Ghz with ATI Radeon 9200 than normal swing. About glx, I'm not really sure how you have to do it. It depends on what driver you use with your xserver (XfFree/ Xorg). I might be wrong but I think you have the choice between Intel's proprietary drivers and mesa+dri. I hope you get better results than I did.
Good luck
Hi
I have decided to buy a NVIDIA card because it supports GLX 1.3. Is the new renderer (using JOGL) in CVS?
Keith
Hi,
It'll be soon enough, need to try some stuff before. I've just crossed the ocean and I'm back in Spain so please be patient until I get over the jet-lag ;)
Note that it seems you'll need to install Cg in addition to JOGL native library for your system.
I will tell you when it's commited!
cheers
Jose San Pedro