igraph-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [igraph] iGraph functions in parallel?


From: Juan Manuel Tirado
Subject: Re: [igraph] iGraph functions in parallel?
Date: Tue, 15 Sep 2009 13:28:20 +0200

Thank you very much for your answer.

I'm considering to split the shortest path calculation using snowfall, it seems feasible.

By the way does anybody know about any published igraph evaluation of performance?


2009/9/15 Tamas Nepusz <address@hidden>
Hi Juan,

igraph does not contain native support for openMP or any other
parallelization solution yet. However, an obvious way to distribute the
computational load of diameter calculations (if your computer has
multiple CPU cores) is to start independent shortest path calculations
from each of the nodes and aggregate the results later. For instance, if
you have 4 CPU cores, start four R instances, partition the set of
vertices into four roughly equal sets and calculate shortest paths
individually from each of the vertices s.t. the first R instance
processes paths starting from the first quarter of the vertices, the
second R instance processes paths starting from the second quarter and
so on. Unfortunately this means that you have to load your graph into
the memory four times and if it doesn't fit, you will have problems as
the OS will keep on swapping all the time.

As for snowfall, I haven't tried it and I'm not an R expert, so I won't
try to comment on that part. Since most of igraph's code is in C, igraph
calls are sort of a black box for R: some R objects go in there and some
other R objects come out, but R knows nothing about what happens inside.
Therefore, I don't think that snowfall could magically parallelize
igraph's diameter() call, but it might be possible that the solution I
mentioned above is feasible using snowfall and a _single_ R instance
where snowfall will take care of distributing the individual shortest
path calls.

--
Tamas

On Tue, Sep 15, 2009 at 12:41:54PM +0200, Juan Manuel Tirado wrote:
> Hi everybody,
>
>    I'm currently working with large graphs (about 250,000 nodes and
> 1,500,000 edges). This size seems to be too large for igraph, and some
> operations such as diameter() take more than one day (I stopped the
> operation before it finished), the same thing with the average path length.
>
>    My question is does exist any way to execute igraph in parallel (using
> openMP for example)? I have found an R package called snowfall (
> http://www.imbi.uni-freiburg.de/parallel/) but I'm not sure if it is
> possible to run igraph with this package.
>
>    Regards,
>
>    Juan

> _______________________________________________
> igraph-help mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/igraph-help



_______________________________________________
igraph-help mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/igraph-help


reply via email to

[Prev in Thread] Current Thread [Next in Thread]