pcpViewer is a 3D viewer of data gathered through the excellent "Performance Co-Pilot" library (http://oss.sgi.com/projects/pcp). You can see usage of CPU time, net devices, memory, hard drives, and virtually any data exported by the pcp library and daemon.
I first started this "pet project" as a 3D xosview replacement (thanks for inspiration), so one of the goal is to get the same level of responsiveness as xosview.
You NEED to install the Performance Co-Pilot library from SGI to compile this
software, so have a look at: http://oss.sgi.com/projects/pcp/
You NEED an OpenInventor implementation too, so either choose the reference implementation at : http://oss.sgi.com/projects/openinventor/ Or prefer the Coin implementation at : http://www.coin3d.org/
You NEED the toolkit hanlder for OpenInventor: SoQt, SoXt, SoGtk... See http://www.coin3d.org/
Get-it at : http://sourceforge.net/projects/pcpview/
Run configure with the necessary option to choose your toolkit, i.e. for Qt:
./configure --with-soxtRun make.
pcpview will not be installed via make install. I don't consider it mature enough to let you have this silly idea ;-).
However, there are no dependencies, nor documentation or man files for the moment, so the only thing you need to do is copying the COMPILATION_DIR/src/pcpview binary in your path.
I've added the "-h" option to specify a remote host, so by running:
pcpviewyou'll get a graph presenting localhost performance data. If you run:
pcpview -h remotehostyou'll get a graph of performance data on remotehost (assuming pmcd run on remotehost).
Users, i need you!!! To make pcpviewer the best for you, i need you valuable input. Want some new feature? Do you have problem with pcpviewer? Do you want to help?
Go to sourceforge forums and let me hear your voice ;-)
For usage, compilation problems : pcpviewer Help forum
For feature request or general discussions: pcpviewer Open Discussion forum
For developers: pcpviewer Developers forum
To see all metrics exported by your pcp daemon:
pminfoTo see value of a specific metric:
pminfo -f metricname (ex: hinv.cpu.clock)
As you will notice, pcpview is actually not much more than a 3D Xosview, but i think that there is really potential. The pcp library export a vast number of metrics from a system, so many other data could be used. Another thing: pcp can be accessed remotly, meaning that we could create a system to gather data from many hosts without having the application running everywhere (still the pcp daemon that actually is not satisfying on security look). My short term plan (6 month) are:
Hey, it's OSS, so first of all feel free to play with it like i did...
However i would greatly appreciate your help as i hadn't coded c++ since 7
years before starting this projects. I know that debuging in it is actually
an HORROR, and there are many things do do and improve,cd so getting help from a better c++ coder would be greatly
appreciated. Feel free to contact me (o_dot_tarnus__at__free_dot_fr) if you
would like to participate.
Sorry for my english, i am french...