[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/session.php on line 583: sizeof(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/session.php on line 639: sizeof(): Parameter must be an array or an object that implements Countable
Gephi forumsPlease post new questions on facebook group too (https://www.facebook.com/groups/gephi) 2012-02-12T20:00:52+01:00 https://forum-gephi.org/app.php/feed/topic/1231 2012-02-12T20:00:52+01:002012-02-12T20:00:52+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5662#p5662 <![CDATA[Re: Parallel Force Atlas]]> I recently noticed my laptop was able to switch to a non nvidia graphic card, so you have to explicitly set from nvidia settings panel that you want the OS to always use your nvidia, and not an alternative (maybe less energy consuming) chip.
See a screenshot in this discussion: http://forum.jogamp.org/Fail-to-run-a-d ... 15480.html.

That info may help for your doc.

Once changed, I noticed the checkbox does not uncheck itself, so I assume your plugin works :)

By the way, why not using JOCL to compute layout? Maybe easier to embed in a java program :)

Martin

Statistics:Posted by martin.pernollet — 12 Feb 2012 20:00


]]>
2012-02-09T14:58:47+01:002012-02-09T14:58:47+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5639#p5639 <![CDATA[Re: Parallel Force Atlas]]> Statistics:Posted by bumper_boy2000 — 09 Feb 2012 14:58


]]>
2012-02-09T14:34:14+01:002012-02-09T14:34:14+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5638#p5638 <![CDATA[Re: Parallel Force Atlas]]>
pbittner wrote:There is no convergence check at the end of each iteration of PFA. It is up to the user to stop the layout when satisfied with the result. If your graphs are small enough, the layout will stabilize itself quite quickly. If after running the layout for a while some nodes keep moving around from one position to another, you should reduce the speed parameter to help these nodes find a stable position.
alright got it. i have a few graphs to visualize. some are small, and "converge" easily. i will try reducing the speed parameter for the large graphs. thanks! :)

Statistics:Posted by bumper_boy2000 — 09 Feb 2012 14:34


]]>
2012-02-09T11:31:45+01:002012-02-09T11:31:45+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5636#p5636 <![CDATA[Re: Parallel Force Atlas]]> Statistics:Posted by pbittner — 09 Feb 2012 11:31


]]>
2012-02-07T19:27:00+01:002012-02-07T19:27:00+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5621#p5621 <![CDATA[Re: Parallel Force Atlas]]> Statistics:Posted by bumper_boy2000 — 07 Feb 2012 19:27


]]>
2012-01-19T16:43:21+01:002012-01-19T16:43:21+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5482#p5482 <![CDATA[Re: Parallel Force Atlas]]>
Most of the improvements were in the Region and ForceFactory. I think I'm laying out about 20,000 nodes in about 5sec (completed time). A good bit of changes to the buildRegions and converting to using a fast distance calculation when real distance was unnecessary (no need for square root).

Example - the current code does this in the Force Factory.

CODE:

double distance = (float) Math.sqrt(xDist * xDist + yDist * yDist);if (distance > 0) {         double factor = coefficient * n1Layout.mass * n2Layout.mass / distance / distance;}
So you have a sqrt and then divide the mass by distance twice - what's the point there? 200 / 10 / 10 = 2 or 200 /100 = 2. There are two expensive calculations there that don't need to be.

CODE:

double distance = (xDist * xDist + yDist * yDist);if (distance > 0) {         double factor = coefficient * n1Layout.mass * n2Layout.mass / distance;}
In the Barnes Hut, I made some changes to create the sub-regions faster (less loops and less object creation) - important since I was going from 4 to 8 regions for 3D. I added a region limit since computing to 1 node can be expensive when it's unnecessary at first for a quick convergence. I stage it out a bit, only processing to a node level of nodes.size() * .005f for the first 25 steps, then drop it to 0 after that, which is the current value.

So, when you add it all up along with other changes here and there, it can make a big difference.

Statistics:Posted by jeffg — 19 Jan 2012 16:43


]]>
2012-01-19T15:02:28+01:002012-01-19T15:02:28+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5481#p5481 <![CDATA[Re: Parallel Force Atlas]]>
Sorry Martin for not responding earlier, I recently moved to the UK for a new job and I haven't had much time to check the forum. The checkbox unchecks itself when the plug-in is unable to load the libraries used for computation. I have done some testing and it appears that you don't only need a 64bit OS but also a 64bit version of Java. I am going to add that to the plug-in page.

Regarding Force Atlas 2, I have implemented a prototype of the layout using CUDA. It is only a little faster (up to 2x) than Force Atlas 2 for graphs with less than 50,000 nodes but gives a significant speedup for large graphs (10x faster for graphs with more than 500,000 nodes). I plan on releasing a new version of the plug-in with parallel versions of Force Atlas 1 and 2 layouts in about a month.

When the implementation is completed (I am also rewriting the Fortran source code of PFA in C++), I will be looking for someone able to compile the plug-in on Mac (requires to have g++ and the CUDA toolkit installed) so that it can be used on that platform.

For Olive, I should be able to release a 32bit OpenMP version. I put that on my TODO list.

And finally for Jeff, I am very interesting in the optimizations that you’ve done on Force Atlas 2. Can you tell us more about what you’ve done? Is it implemented in Java? The current FA2 implementation used a 2D implementation of the Barnes-Hut algorithm.

Regards,
Paul

Statistics:Posted by pbittner — 19 Jan 2012 15:02


]]>
2012-01-18T20:10:39+01:002012-01-18T20:10:39+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5475#p5475 <![CDATA[Re: Parallel Force Atlas]]> Statistics:Posted by jeffg — 18 Jan 2012 20:10


]]>
2011-12-05T11:23:27+01:002011-12-05T11:23:27+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=5215#p5215 <![CDATA[Re: Parallel Force Atlas]]>
Do you intend to release a 32bit OpenMP version ? Unfortunately, one of the systems I use frequently cannot (for policy reasons...) receive a 64bit OS, and doesn't have a CUDA GPU.

OpenOrd runs fine with 3 threads, but I prefer PFA's layout.

Statistics:Posted by olive22 — 05 Dec 2011 11:23


]]>
2011-09-15T09:30:44+01:002011-09-15T09:30:44+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4716#p4716 <![CDATA[Re: Parallel Force Atlas]]>
The performance gain for the ForceAtlas2 comes a little from its automatic "speed vs. precision" optimization, but it is in majority due to the implementation of a Barnes Hut optimization. If you disable "Approximate Repulsion", ForceAtlas2 will be very close to ForceAtlas. I guess it would be useful to have Parallel + Barnes Hut.

I tried a simple (and naïve) implementation of multi-threading in ForceAtlas2 and it works well (x2.5 performance on my old quad-core laptop). I hope it will be available in the next release of Gephi (I pushed it on my ForceAtlas2 branch on launchpad).

The really amazing innovation will be the usage of the GPU to compute the layout. I guess Barnes Hut + Multithreading + GPGPU = Huge perf boost...

Statistics:Posted by jacomyma — 15 Sep 2011 09:30


]]>
2011-09-12T14:08:42+01:002011-09-12T14:08:42+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4693#p4693 <![CDATA[Re: Parallel Force Atlas]]>
I have not been has lucky as Clément, here's my experience:
1) I added the Parallel FA plugin the 10th september to Gephi 0.8, and tried to run it on a 1600 nodes & 17000 edges graph.
2) FA1 and your version run at the same visual speed: roughly 1 iteration per second
3) When checking "run the layout in parallel" and then clicking "run", the checkbox unchecks itself :) Do you think that this GUI error prevent from really running forces in parallel?
4) Running with OpenMP and Cuda gives the same speed. Using 1, 10 or 100 threads for OpenMP visually gives the same computation speed.

Then I noticed my GPU driver was desactivated by Windows, so I update the drivers and now the systems says the GeForce is activated, but nothing change for Parallel FA1.

I don't have much time to dive in your plugin sources and build your work by myself, but if there are log files I can send you, just ask me.

Remark: FA2 is really really faster than FA1 and Parallel FA1

Regards,
Martin

------------------------------
Sys: Windows 7 64 bits
CPU: Intel Core I3 CPU M350 @ 2.27Ghz, 64bit
RAM: 4go
GPU: 1) Intel HD Graphics 2) NVIDIA GeForce 310M (don't really understand why there are two chips on my laptop :s)

Statistics:Posted by martin.pernollet — 12 Sep 2011 14:08


]]>
2011-07-25T07:29:59+01:002011-07-25T07:29:59+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4030#p4030 <![CDATA[Re: Parallel Force Atlas]]> http://www.malibal.com)

Parallel Force Atlas now works fine with the settings set to "GPU", and the eyeball test (^^) says that it runs significantly quicker than with the CPU settings.

For anybody reading this, please realize: I run a (parallel) Force Atlas layout on the Powergrid dataset (4941 nodes, 6594 edges), and it moves from this (screenshot 1) to that (screenshot 2) in 60 seconds.

Really as easily as if it was a 100 nodes, 50 edges graph.

**Thanks** Paul!
Powergrid with PFA after 1 minute.jpg

Powergrid - initial layout.jpg

Statistics:Posted by seinecle — 25 Jul 2011 07:29


]]>
2011-07-24T22:53:44+01:002011-07-24T22:53:44+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4028#p4028 <![CDATA[Re: Parallel Force Atlas]]>
Indeed my current driver is not up to date, but the new one suggested by Nvidia does not install :-(. I contacted my laptop provider and Nvidia to check the issue.

I'll keep you posted,

Best,

Clement

Statistics:Posted by seinecle — 24 Jul 2011 22:53


]]>
2011-07-24T22:10:41+01:002011-07-24T22:10:41+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4026#p4026 <![CDATA[Re: Parallel Force Atlas]]>
The source code of the CPU implementation of Parallel Force Atlas is in the following file: http://bazaar.launchpad.net/~pbittner/g ... tUtils.f90

The repulsion stage of the force atlas algorithm is made of two nested loops that calculate the force between each pair of nodes. Since there are no dependencies between the calculations of individual pairs, it is possible to distribute the outer loop among the different threads.

CODE:

for (int i1=0;i1<nbNodes;i1++) {    for (int i2=0;i2<nbNodes;i2++) {        // calculation on the pair of nodes <i1,i2>    }}
Let me know if you have any other question.

Paul

Statistics:Posted by pbittner — 24 Jul 2011 22:10


]]>
2011-07-24T21:28:03+01:002011-07-24T21:28:03+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4025#p4025 <![CDATA[Re: Parallel Force Atlas]]>
can you (or had you already and I need a new pair glasses) also published the source code of the plugin (CPU version)? I'm currently working on GraphGL and I would like to check parallel FA algorithm since it (theoretically at least) should be possible to implement it with Web Workers. While I can only dream of speedups due to SSE or Fortran's number crunching capabilities, I hope it can provide inspiration for nice speedups nonetheless.

Cheers,
Urban

Statistics:Posted by Neo--- — 24 Jul 2011 21:28


]]>
2011-07-24T18:55:16+01:002011-07-24T18:55:16+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4024#p4024 <![CDATA[Re: Parallel Force Atlas]]>
I observe the same behavior (nodes converging to the center) on the oldest graphic card I have tried. It is due to the CUDA kernel failing to launch when there are not enough resources available (memory, registers...). However, your graphic card is very recent and I am surprised that it does not work on your machine.

Could you make sure that you have the latest driver installed (275.33 in your case). You can get it there: http://www.nvidia.com/Download/index.aspx?lang=en-us

I'll do more testing tomorrow when I have access to the machine on which the GPU implementation is not working either.

Thanks,
Paul

Statistics:Posted by pbittner — 24 Jul 2011 18:55


]]>
2011-07-24T10:56:36+01:002011-07-24T10:56:36+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=4021#p4021 <![CDATA[Re: Parallel Force Atlas]]>
I tested this new version of Parallel ForceAtlas on the Powergrid dataset.

I use Win7 64bits and the graphic card is GeForce GTX 560M (CUDA cores: 192 according to the specs)

Results:
GPU (CUDA)
- after a few seconds, the layout starts running. All nodes converge to the center until the graph is a single dot on the screen. Changing the parameters does nothing to that.

CPU (OpenMP)
- the layout works.

Hope it helps!

Best,

Clement

Statistics:Posted by seinecle — 24 Jul 2011 10:56


]]>
2011-07-24T03:19:43+01:002011-07-24T03:19:43+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=3992#p3992 <![CDATA[Re: Parallel Force Atlas]]>

If some of you have Windows 64 bit and a CUDA compatible Nvidia graphic card, I would appreciate some feedback since portability between different generations of Nvidia cards is a bit tricky. I have successfully tested the plug-in with a Quadro 2000 and a Geforce GT 540m but I wasn't able to use it with an older Quadro FX 1700.

The performance of the GPU implementation depends on the specification of the graphic card (number of CUDA cores) and on the number of nodes in the graph. With the Quadro 2000 card, the plug-in needs 0.5s per iteration on a graph of 100,000 nodes. This is about 1,000 times faster than the standard Force Atlas and 20 times faster than the parallel CPU implementation. Because the overhead of CUDA is quite high, the GPU implementation does not perform as well as the CPU implementation under 1,000 nodes.

Otherwise, I have been struggling a bit with making a parallel version of Force Atlas 2. The current prototype runs about 4 times faster but crashes above 100,000 nodes with a stack overflow. With OpenMP, the data private to each thread is allocated on the stack and I am not sure whether it is possible to increase the stack size when using a library through JNI. I'll try to make a non-recursive implementation and see how it performs.

Statistics:Posted by pbittner — 24 Jul 2011 03:19


]]>
2011-07-13T14:52:47+01:002011-07-13T14:52:47+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=3911#p3911 <![CDATA[Re: Parallel Force Atlas]]> Keep the good work :)

Statistics:Posted by eduramiba — 13 Jul 2011 14:52


]]>
2011-07-13T12:52:49+01:002011-07-13T12:52:49+01:00 https://forum-gephi.org/viewtopic.php?t=1231&p=3909#p3909 <![CDATA[Re: Parallel Force Atlas]]>
the work you do is very, very important! Good layouts are an essential for dataviz, and unfortunately there are very few if any very fast performing, good quality layouts.

ForceAtlas stands out for the very intuitive interpretation it affords, but so far it was still much too slow past a certain number of nodes. In practice, this means that good visualizations were simply not available for, say, a 100,000 nodes network. Your work is literally exploding this limit, and this opens new horizons for dataviz.

To illustrate, I just compared the layout of a 9,000 nodes + 15,000 edges network with OpenOrd and Parallel Force Atlas. it took me 20 seconds with each algo to get the final result. See snapshots attached. Main differences in favor of Parallel Force Atlas are:

- quality of the dispersal of nodes: communities appear more clearly
- no overlap of nodes
- possibility to modify the parameters for gravity, etc. while the layout is still running. OpenOrd makes one treatment without possibility to intervene while it runs.
- possibility to explain the mechanism of the layout to the audience. ForceAtlas = expansion + attraction + gravity. OpenOrd = much more difficult to explain in 1 minute.

So... continue the good work if you can, it benefits the community in a huge way!
zoom_on_OpenOrd.jpg

zoom_on_Parallel_ForceAtlas.jpg

OpenOrd.png

ForceAtlas.png

Statistics:Posted by seinecle — 13 Jul 2011 12:52


]]>