Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Which graph library is best suited for large graphs?
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  11 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Wolodja Wentland  
View profile  
 More options Dec 11 2009, 5:12 am
Newsgroups: comp.lang.python
From: Wolodja Wentland <wentl...@cl.uni-heidelberg.de>
Date: Fri, 11 Dec 2009 11:12:12 +0100
Local: Fri, Dec 11 2009 5:12 am
Subject: Which graph library is best suited for large graphs?

Hi all,

I am writing a library for accessing Wikipedia data and include a module
that generates graphs from the Link structure between articles and other
pages (like categories).

These graphs could easily contain some million nodes which are frequently
linked. The graphs I am building right now have around 300.000 nodes
with an average in/out degree of - say - 4 and already need around 1-2GB of
memory. I use networkx to model the graphs and serialise them to files on
the disk. (using adjacency list format, pickle and/or graphml).

The recent thread on including a graph library in the stdlib spurred my
interest and introduced me to a number of libraries I have not seen
before. I would like to reevaluate my choice of networkx and need some
help in doing so.

I really like the API of networkx but have no problem in switching to
another one (right now) .... I have the impression that graph-tool might
be faster and have a smaller memory footprint than networkx, but am
unsure about that.

Which library would you choose? This decision is quite important for me
as the choice will influence my libraries external interface. Or is
there something like WSGI for graph libraries?

kind regards

--
  .''`.     Wolodja Wentland    <wentl...@cl.uni-heidelberg.de>
 : :'  :    
 `. `'`     4096R/CAF14EFC
   `-       081C B7CD FF04 2BA9 94EA  36B2 8B7F 7D30 CAF1 4EFC

  signature.asc
< 1K Download

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Bearophile  
View profile  
 More options Dec 11 2009, 6:03 am
Newsgroups: comp.lang.python
From: Bearophile <bearophileH...@lycos.com>
Date: Fri, 11 Dec 2009 03:03:03 -0800 (PST)
Local: Fri, Dec 11 2009 6:03 am
Subject: Re: Which graph library is best suited for large graphs?
Wolodja Wentland:

> Which library would you choose?

This one probably uses low memory, but I don't know if it works still:
http://osl.iu.edu/~dgregor/bgl-python/

Bye,
bearophile


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Wolodja Wentland  
View profile  
 More options Dec 11 2009, 6:17 am
Newsgroups: comp.lang.python
From: Wolodja Wentland <wentl...@cl.uni-heidelberg.de>
Date: Fri, 11 Dec 2009 12:17:43 +0100
Local: Fri, Dec 11 2009 6:17 am
Subject: Re: Which graph library is best suited for large graphs?

On Fri, Dec 11, 2009 at 03:03 -0800, Bearophile wrote:
> Wolodja Wentland:
> > Which library would you choose?

> This one probably uses low memory, but I don't know if it works still:
> http://osl.iu.edu/~dgregor/bgl-python/

That project looks not that maintained and graph-tool [1] is based on
boost as well, so I don't see the advantage in choosing bgl-python over
graph-tool.

The point is, that I am not sure if using graph-tool has any advantages
over networkx at all. It looks like a great library, supports filtered
graphs which I find pretty useful, but have not used it yet.

[1] http://projects.forked.de/graph-tool/
--
  .''`.     Wolodja Wentland    <wentl...@cl.uni-heidelberg.de>
 : :'  :    
 `. `'`     4096R/CAF14EFC
   `-       081C B7CD FF04 2BA9 94EA  36B2 8B7F 7D30 CAF1 4EFC

  signature.asc
< 1K Download

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Neal Becker  
View profile  
 More options Dec 11 2009, 8:55 am
Newsgroups: comp.lang.python
Followup-To: gmane.comp.python.general
From: Neal Becker <ndbeck...@gmail.com>
Date: Fri, 11 Dec 2009 08:55:19 -0500
Local: Fri, Dec 11 2009 8:55 am
Subject: Re: Which graph library is best suited for large graphs?

Bearophile wrote:
> Wolodja Wentland:
>> Which library would you choose?

> This one probably uses low memory, but I don't know if it works still:
> http://osl.iu.edu/~dgregor/bgl-python/

> Bye,
> bearophile

How about python interface to igraph?

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Wolodja Wentland  
View profile  
 More options Dec 11 2009, 9:07 am
Newsgroups: comp.lang.python
From: Wolodja Wentland <wentl...@cl.uni-heidelberg.de>
Date: Fri, 11 Dec 2009 15:07:41 +0100
Local: Fri, Dec 11 2009 9:07 am
Subject: Re: Which graph library is best suited for large graphs?

On Fri, Dec 11, 2009 at 08:55 -0500, Neal Becker wrote:
> Bearophile wrote:
> > Wolodja Wentland:
> >> Which library would you choose?
> > This one probably uses low memory, but I don't know if it works still:
> > http://osl.iu.edu/~dgregor/bgl-python/
> How about python interface to igraph?

Don't know :-) as I have not yet worked with it. Why do you recommend it?
--
  .''`.     Wolodja Wentland    <wentl...@cl.uni-heidelberg.de>
 : :'  :    
 `. `'`     4096R/CAF14EFC
   `-       081C B7CD FF04 2BA9 94EA  36B2 8B7F 7D30 CAF1 4EFC

  signature.asc
< 1K Download

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
IngoognI  
View profile  
 More options Dec 11 2009, 10:31 am
Newsgroups: comp.lang.python
From: IngoognI <ingoo...@gmail.com>
Date: Fri, 11 Dec 2009 07:31:18 -0800 (PST)
Local: Fri, Dec 11 2009 10:31 am
Subject: Re: Which graph library is best suited for large graphs?
On Dec 11, 11:12 am, Wolodja Wentland <wentl...@cl.uni-heidelberg.de>
wrote:

> Which library would you choose?

looking at the galery at networx, it seems to be all balls 'n sticks,
how about writing the data to a file POV-Ray can read and render it
there?

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Wolodja Wentland  
View profile  
 More options Dec 11 2009, 11:04 am
Newsgroups: comp.lang.python
From: Wolodja Wentland <wentl...@cl.uni-heidelberg.de>
Date: Fri, 11 Dec 2009 17:04:31 +0100
Local: Fri, Dec 11 2009 11:04 am
Subject: Re: Which graph library is best suited for large graphs?

On Fri, Dec 11, 2009 at 07:31 -0800, IngoognI wrote:
> On Dec 11, 11:12 am, Wolodja Wentland <wentl...@cl.uni-heidelberg.de>
> wrote:
> > Which library would you choose?

> looking at the galery at networx, it seems to be all balls 'n sticks,
> how about writing the data to a file POV-Ray can read and render it
> there?

Huh? I am not really concerned about rendering the graphs but after a
library with a small memory footprint. Preferably one that contains a
number of typical algorithms.
--
  .''`.     Wolodja Wentland    <wentl...@cl.uni-heidelberg.de>
 : :'  :    
 `. `'`     4096R/CAF14EFC
   `-       081C B7CD FF04 2BA9 94EA  36B2 8B7F 7D30 CAF1 4EFC

  signature.asc
< 1K Download

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Neal Becker  
View profile  
 More options Dec 11 2009, 11:57 am
Newsgroups: comp.lang.python
Followup-To: gmane.comp.python.general
From: Neal Becker <ndbeck...@gmail.com>
Date: Fri, 11 Dec 2009 11:57:38 -0500
Local: Fri, Dec 11 2009 11:57 am
Subject: Re: Which graph library is best suited for large graphs?

Wolodja Wentland wrote:
> On Fri, Dec 11, 2009 at 08:55 -0500, Neal Becker wrote:
>> Bearophile wrote:
>> > Wolodja Wentland:
>> >> Which library would you choose?

>> > This one probably uses low memory, but I don't know if it works still:
>> > http://osl.iu.edu/~dgregor/bgl-python/

>> How about python interface to igraph?

> Don't know :-) as I have not yet worked with it. Why do you recommend it?

My understanding is that igraph is a high performance graph library (all
implemented in C).  It seems to have a very active user community.

There is also boost graph library, which IIRC also has a python interface.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
anand jeyahar  
View profile  
 More options Dec 11 2009, 3:59 pm
Newsgroups: comp.lang.python
From: anand jeyahar <anand.ibm...@gmail.com>
Date: Sat, 12 Dec 2009 02:29:30 +0530
Local: Fri, Dec 11 2009 3:59 pm
Subject: Re: Which graph library is best suited for large graphs?
On 12/11/2009 10:27 PM, Neal Becker wrote:
> Which library would you choose?

Hmm.... i have tried python-graph and was happy with it....but the most
use i did was for complete graphs of 60-65 nodes..

Also there is an experimental branch for faster implementations, which
is under development.

--
==============================================
Anand J
http://sites.google.com/a/cbcs.ac.in/students/anand
==============================================
The man who is really serious,
with the urge to find out what truth is,
has no style at all. He lives only in what is.
~Bruce Lee

Love is a trade with lousy accounting policies.
~Aang Jie


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
geremy condra  
View profile  
 More options Dec 11 2009, 9:48 pm
Newsgroups: comp.lang.python
From: geremy condra <debat...@gmail.com>
Date: Fri, 11 Dec 2009 21:48:34 -0500
Local: Fri, Dec 11 2009 9:48 pm
Subject: Re: Which graph library is best suited for large graphs?
On Fri, Dec 11, 2009 at 5:12 AM, Wolodja Wentland

<wentl...@cl.uni-heidelberg.de> wrote:
> Hi all,

> I am writing a library for accessing Wikipedia data and include a module
> that generates graphs from the Link structure between articles and other
> pages (like categories).

> These graphs could easily contain some million nodes which are frequently
> linked. The graphs I am building right now have around 300.000 nodes
> with an average in/out degree of - say - 4 and already need around 1-2GB of
> memory. I use networkx to model the graphs and serialise them to files on
> the disk. (using adjacency list format, pickle and/or graphml).

Huh. Using graphine- which should be somewhat more memory hungry
than networkx- I generated a naive million node 4-cycle graph and wound
up using something under 600 meg of ram. Can you post some code?

Geremy Condra


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Tiago de Paula Peixoto  
View profile  
 More options Dec 12 2009, 7:01 am
Newsgroups: comp.lang.python
From: Tiago de Paula Peixoto <ti...@forked.de>
Date: Sat, 12 Dec 2009 10:01:36 -0200
Local: Sat, Dec 12 2009 7:01 am
Subject: Re: Which graph library is best suited for large graphs?

Hi there,

On 12/11/2009 08:12 AM, Wolodja Wentland wrote:

> I really like the API of networkx but have no problem in switching to
> another one (right now) .... I have the impression that graph-tool might
> be faster and have a smaller memory footprint than networkx, but am
> unsure about that.

I'm the author of graph-tool, so my opinion may be biased. :-)

Nevertheless, I do think that graph-tool will be faster and have a
smaller memory footprint than networkx, since the graph data structures
and most algorithms are written in C++, using the Boost Graph Library,
whereas networkx is mostly pure python. I have made this library due to
my own requirements of being able to work with large graphs.

The only other library I can think of which may be comparable in
performance is igraph, which is implemented in C. But I think
graph-tool's interface is a bit more polished (my opinion
only). Moreover, since graph-tool uses template metaprograming to obtain
specialized versions of algorithms, it may be that it is even faster
than igraph, but I have at the moment no benchmarks to back this up.

Cheers,
Tiago

  signature.asc
< 1K Download

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »