Dear Maxim, Actually I already set the border to be 0 to avoid the padding problem. So I set the range to [0 0.248] didn't help.
When comparing the output, I found that only difference is that when range is [0 1], the TD.D = 1, and when range is [0, 0.25], TD.D = 4. I set the TD.D = 1. , the rendering is fast now, but the scaling is wrong. Anywhere else the TD.D is used in rendering? Maybe that affect the performance? Jinghua On Wed, Feb 18, 2009 at 8:38 AM, Maxim Makhinya <[email protected]> wrote: > > Hello Jinghua, > > Now you did correct test, and as I suspected in my first reply > one of your machines performs bad, as they should render same > amount of data, but the data should be different for different > machines. > > Regarding this difference, when you use range [0 0.25], I could > suspect following: > > 1) 3D textures should have size of power of 2, so if you give > size which is not it will be padded to power of 2 and some > space on your graphics card is wasted. > > 2) eVolve creates small borders of 1-2 voxels on the edges > between two slabs of volume for correct blending between > slabs. > > Form 1) and 2) - if your [0 0.25] is exactly power of 2, 3D > texture will be actually much bigger (twice in fact) because of > the border and that texture overkill. When you render it as > range [0 1] it fits perfectly on GPU and renders faster because > borders are not added. If this is the case - simple solution > would be to render a bit smaller total volume, taking in to > account these borders. > > Check from the source code which borders there are added and > try to render slightly smaller volume than exact power of 2 > (or use smaller ranges, say [0 0.248] or so). > > > Best regards, > > Makhinya Maxim > > > > > On Feb 18, 2009, at 3:18 PM, jinghua wrote: > > > > > Dear Maxim and Stefan, > > > > I am doing tests today, and found out sth. which I believe is my > > problem. > > > > When I do 1 node test, I used to change the .vhf file d value to be > > 256. (I > > change d=2048 for 8 node test and d = 1024 for 4 node test) > > > > w=1024 > > h=1024 > > d=256 > > > > and in my config file the range is [0 1] > > > > It renders at 16 fps. > > > > But today I decided that I don't want to change the .vhf file all > > the time, > > instead I change the config file. So I set d=1024 in .vhf file. For > > 4 node > > test, each node get range [0, 0.25], [0.25 0.5], [0.5, 0.75], [0.75, > > 1.0]. > > With no compund it renders at 6.7 fps. Then I did the 1 node test, > > where the > > range I set as [0 0.25]. it also renders at 6.7 fps! > > > > So that must be the problem right? I am checking my rawVolModel.cpp > > file > > now, see if I did something when loading the data (I don't believe > > so tho). > > Why setting the range to be [0. 0.25] make the 1 node render slow? > > > > Yesterday I sent this post with two attachments of the 4 node and 1 > > node > > statistics screenshots. Somehow it didn't get through. This time I am > > omitting the attachment. > > > > Thanks! > > > > Jinghua > > > > > > > > Maxim Makhinya wrote: > >> > >> > >> Hello Jinghua, > >> > >> Your config file seem to be right, there should be no additional > >> transfers as long as you don't have any input-output frames. > >> > >> Do you have your data locally cached? Do you load it only once > >> per-node? Might be a silly question, but, are you using > >> CXXFLAGS=-O to compile it in release not debug? =) > >> > >> What you can do else is: > >> > >> 1) check what rendering statistics show: > >> > http://www.equalizergraphics.com/documents/design/statisticsOverlay.html > >> (triggered by 's' key, in eVolve and eqPly; one of your nodes > >> should be > >> described as appNode in config file, see "2-node.DB.eqc" example) > >> > >> 2) try "latancy 2" on 3 in your config{ } file > >> http://www.equalizergraphics.com/documents/design/fileFormat.html > >> > >> 3) try to render very small portion of your data "range [ 0 . > >> 001 ]", or > >> something like that, to check equalizer's overhead for your setup. > >> Rendering should be very-very fast, the only thing you will see on > >> statics is equalizer's communications. > >> > >> 4) check your network performance with "netperf" tool. > >> > >> > >> Best regards, > >> > >> Makhinya Maxim > >> > >> > >> On Feb 17, 2009, at 2:31 AM, Jinghua Ge wrote: > >> > >>> Dear Maxim, > >>> > >>> I did some tests today. Since two of my cluster nodes are not > >>> working properly, I just test with single node, 2 nodes, and 4 > >>> nodes. Turns out I was wrong about 4 nodes performance before, in > >>> retrospect, I think I set the window size to be small when I did the > >>> 4nodes test. Anyway, the result I got today is: > >>> > >>> single node: 16 fps > >>> 2nodes: 10 fps > >>> 4nodes: 6 fps > >>> > >>> I also found that in my test, DS compound doesn't improve overall > >>> performance. > >>> > >>> I tried to remove the compound by commenting out all the inputframe, > >>> outframe lines in my config file. (I did remove the whole compound > >>> at first, but found out I must set the range info for each node, > >>> otherwise the data weren't distributed. ) > >>> > >>> The compound looks like this: > >>> > >>> compound > >>> { > >>> channel "channel0" > >>> buffer [ COLOR DEPTH ] > >>> > >>> wall > >>> { > >>> bottom_left [ -.5 -.5 -.75 ] > >>> bottom_right [ .5 -.5 -.75 ] > >>> top_left [ -.5 .5 -.75 ] > >>> } > >>> > >>> compound > >>> { > >>> range [ 0 .25 ] > >>> } > >>> compound > >>> { > >>> channel "channel1" > >>> range [ .25 .5 ] > >>> #outputframe {} > >>> } > >>> compound > >>> { > >>> channel "channel2" > >>> range [ .5 .75 ] > >>> #outputframe {} > >>> } > >>> compound > >>> { > >>> channel "channel3" > >>> range [ .75 1 ] > >>> #outputframe {} > >>> } > >>> #inputframe { name "frame.channel1" } > >>> #inputframe { name "frame.channel2" } > >>> #inputframe { name "frame.channel3" } > >>> } > >>> > >>> The result is about 7fps. I believe the way I did the compound > >>> there are still network transfers going around, just no final > >>> compositing. But I am not sure how to disable all of the network > >>> traffic by editing the config file. Please give more advice here. > >>> Thanks!! > >>> > >>> JInghua > >>> > >>> > >>> > >>> On Mon, Feb 16, 2009 at 10:22 AM, Jinghua Ge <[email protected]> > >>> wrote: > >>> Hi Maxim, > >>> > >>> These tests you suggested in your email really make a lot sense. I > >>> will try them today and hopefully find the bottleneck. Thanks so > >>> much! > >>> > >>> Jinghua > >>> > >>> > >>> On Mon, Feb 16, 2009 at 9:58 AM, Maxim Makhinya > >>> <[email protected]> wrote: > >>> > >>> Hello Jinghua, > >>> > >>> > >>> That sound weird. Are you sure the problem is not with one of your > >>> machines? > >>> I think you should figure out first where is your performance > >>> bottleneck, and > >>> why this happens. You could try following and write back what you > >>> will > >>> get: > >>> > >>> 1) remove all compositing paths, i.e. leave only rendering. As all > >>> nodes will > >>> render the same amount of data without compositing it should not > >>> really > >>> matter how many you use - 4 nodes for 1 Gb or 8 nodes for 2 Gb. > >>> Speed > >>> should remain roughly the same as there is no pictures > >>> transferred. > >>> > >>> 2) try to split config in to two independent parts - i.e. 4 nodes > >>> for > >>> first > >>> 1 Gb of data, another 4 nodes for second Gb, without final > >>> compositing of > >>> this two parts. Again, it should be symmetric and speed shouldn't > >>> change > >>> much. > >>> > >>> 3) if in the second path you will get your 10-12 fps, than just > >>> try to > >>> combine > >>> those results in one additional compositing on top. > >>> > >>> > >>> Best regards, > >>> > >>> Makhinya Maxim > >>> > >>> > >>> On Feb 16, 2009, at 4:01 PM, jinghua wrote: > >>> > >>>> > >>>> Dear Stefan, > >>>> > >>>> I have tried Equalizer's eVolve volume renderer to render a > >>>> 1kx1kx2k, ubyte > >>>> volume over a remote 8-node cluster. I have changed the evolve code > >>>> and > >>>> shader to read in the original volume with one byte per voxel, and > >>>> it all > >>>> worked fine. My cluster has a Nvidia GeForce-9500 card with 1G > >>>> memory on > >>>> each node, and infiband private network among the nodes. I used > >>>> direct send > >>>> compound. Each node get 1kx1kx256 subvolume. Each node renders the > >>>> 256M > >>>> volume locally at 16-20fps. When I used 4nodes to render the 1G > >>>> volume, the > >>>> overall performance is about 10-12 fps. But when I used 8nodes to > >>>> render the > >>>> whole 2G volume, the frame rate drops down to 2fps. I have tried to > >>>> use both > >>>> DB and direct send compound, with ethernet and IB network, it's all > >>>> very > >>>> consistent 2fps performance. Are there something I can do to > >>>> improve > >>>> the > >>>> performance? Thanks a lot! > >>>> > >>>> Jinghua http://n2.nabble.com/file/n2335264/test-8node.res.infi > >>>> test-8node.res.infi > >>>> > >>>> Attached is my config file. > >>>> -- > >>>> View this message in context: > >>> > http://n2.nabble.com/eVolve-render-2G-volume-on-8nodes-at-2fps-tp2335264p2335264.html > >>>> Sent from the Equalizer - Parallel Rendering mailing list archive > >>>> at > >>>> Nabble.com. > >>>> > >>>> > >>>> _______________________________________________ > >>>> eq-dev mailing list > >>>> [email protected] > >>>> http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev > >>>> http://www.equalizergraphics.com > >>>> > >>> > >>> > >>> _______________________________________________ > >>> eq-dev mailing list > >>> [email protected] > >>> http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev > >>> http://www.equalizergraphics.com > >>> > >>> > >>> > >>> -- > >>> Jinghua Ge, Ph.D > >>> Visualization Consultant, CCT > >>> 331 Frey Computing Services Center > >>> Louisiana State University > >>> Phone: (225) 578-7789 > >>> Fax: (225) 334-2061 > >>> > >>> > >>> > >>> > >>> > >>> -- > >>> Jinghua Ge, Ph.D > >>> Visualization Consultant, CCT > >>> 331 Frey Computing Services Center > >>> Louisiana State University > >>> Phone: (225) 578-7789 > >>> Fax: (225) 334-2061 > >>> > >>> > >>> _______________________________________________ > >>> eq-dev mailing list > >>> [email protected] > >>> http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev > >>> http://www.equalizergraphics.com > >> > >> > >> _______________________________________________ > >> eq-dev mailing list > >> [email protected] > >> http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev > >> http://www.equalizergraphics.com > >> > >> > > > > -- > > View this message in context: > http://n2.nabble.com/eVolve-render-2G-volume-on-8nodes-at-2fps-tp2335264p2347050.html > > Sent from the Equalizer - Parallel Rendering mailing list archive at > > Nabble.com. > > > > > > _______________________________________________ > > eq-dev mailing list > > [email protected] > > http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev > > http://www.equalizergraphics.com > > > > > _______________________________________________ > eq-dev mailing list > [email protected] > http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev > http://www.equalizergraphics.com > -- Jinghua Ge, Ph.D Visualization Consultant, CCT 331 Frey Computing Services Center Louisiana State University Phone: (225) 578-7789 Fax: (225) 334-2061
_______________________________________________ eq-dev mailing list [email protected] http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev http://www.equalizergraphics.com

