Graphviz Issue Tracker
Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001082graphvizNeatopublic2006-03-13 20:352011-04-28 04:03
ReporterPhilip Schlesinger 
Assigned Toerg 
PlatformOSx86-Windows-2000 Server fully paOS Version
Summary0001082: NEATO will create SVG and PS2, but not PNG, not GIF, not JPG?

Hi! I can create PS2 and SVG, but not PNG, GIF or JPG.

Here is the output from an attempt to create a JPG. I would love to blame running out of memory, but my memory meter (FreeMeter)
is not edging past 46% used and I have 1.5GB of RAM. Help?

C:\Program Files\ATT\Graphviz\bin>neato -v -Tjpg c:\neatofile.txt -o c:\neato2.j
    render : canon cmap cmapx dia dot fig gd gd2 gif hpgl imap ismap jpeg
jpg mif mp pcl pic plain plain-ext png ps ps2 svg svgz vrml vtx wbmp xdot
    layout : circo dot fdp neato nop nop1 nop2 twopi
    textlayout :
    device :
    usershape : png-gd
neato: fontname=Times-Roman fontpath=C:\WINNT\FONTS/times.ttf
Scanning graph _neato_cc0, 1041 nodes
model 0 smart_init 0 iterations 200 tol 0.000100
convert graph: 1041 nodes 0.06 sec
Calculating shortest paths: 0.56 sec
Setting initial positions: 0.00 sec
Setting up stress function: 0.02 sec
Solving model: 340307.075 98876.510 96091.301 95463.224 95055.390 94586.938 9396
2.817 93101.892 91889.403 90230.571
88126.191 85657.281 83116.933 80770.642 78739.673 77144.450 75943.125 75052.398
74383.923 73862.692
73435.677 73076.502 72766.691 72504.404 72284.339 72106.774 71956.217 71821.579
71697.358 71589.908
71488.141 71382.096 71267.667 71171.447 71090.913 71018.495 70949.028 70889.710
70835.129 70781.706

final e = 70727.911703 200 iterations 38.26 sec
Adjusting _neato_cc0 using Voronoi
Number of iterations = 1840
Number of increases = 90
Creating edges using line segments
neato: allocating a -1177490K PaletteColor GD image
Error: gdImageCreate returned NULL. Malloc problem?

C:\Program Files\ATT\Graphviz\bin>
Forgive me, but I cannot divulge the actual file, as it contains trade secrets.

The file is
digraph G {

and 17,000 lines of:

a -> b;
c -> d;

followed by a

Additional Information

[erg]If you have the postscript output, find the line with %%BoundingBox and send the numbers.
Otherwise, rerun neato without a -T flag and send the value of bb in the output. Thanks.

It looks like a numerical overflow problem, since the verbose output has
    neato: allocating a -1177490K PaletteColor GD image
and that number is the product of two supposedly positive ints divided by 1024. I would guess that
some int is bigger than 2^31 so it goes negative. libgd could be tweaked to use unsigned ints but to
really use your address space, it should use longs or long longs. But even if it did that, are you sure
you want image files bigger than 4GB? Actually, that won't be true. You're removing overlaps via
the default Voronoi technique, using 90 increases, so the vast number of pixels will be white. The
output formats should compress most of this white. In any case, resulting pictures are probably not
going to be very useful. You might want to consider other values for the overlap attribute, other
layout styles, or other ways to reduce the size of the resulting layout.

[pschlesinger] Here's the info you wanted:
%%BoundingBox: 36 36 2904972 3719818
File ended up being about 14MB

[erg] So, as expected, the final bitmap would have about
10552702280 bytes, which is bigger than 2^32.
TagsNo tags attached.
VERSION     2.8
Attached Files

- Relationships

-  Notes
There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
2011-04-28 04:03 user1 New Issue
2011-04-28 04:03 user1 Assigned To => erg

MantisBT 1.2.5[^]
Copyright © 2000 - 2011 MantisBT Group
Powered by Mantis Bugtracker