Opened 12 years ago
Closed 10 years ago
#1865 closed defect (fixed)
WinGrass v.buffer memory issue
Reported by: | feppink | Owned by: | |
---|---|---|---|
Priority: | critical | Milestone: | 6.4.4 |
Component: | Vector | Version: | 6.4.3 RCs |
Keywords: | v.buffer | Cc: | |
CPU: | x86-64 | Platform: | MSWindows 7 |
Description
System: Windows 7 64-bit Home Basic, GRASS 6.4.3-RC2, core i7 3612QM, 8Gb RAM.
I have a vector map with a 30,131 primitives and well over 700,000 vertices. I want to create buffers of 50,000 map units (meters) around the centroids of the primitives. If I do this, memory usage of v.buffer steadily creeps up and at some point GRASS runs out of memory and terminates v.buffer.
Change History (6)
follow-up: 2 comment:1 by , 12 years ago
comment:2 by , 12 years ago
Replying to feppink:
Additional info: I specify no other options for v.buffer apart from the units for the major axis. Memory issue starts occurring during "Breaking boundaries".
If possible, try GRASS 7, because v.buffer only works correctly in GRASS 7 and vector memory consumption is much less.
Can you make the input vector map available and post the exact command used to calculate buffers?
Markus M
comment:3 by , 10 years ago
Keywords: | v.buffer added |
---|---|
Milestone: | 6.4.3 → 6.4.4 |
Priority: | normal → blocker |
comment:4 by , 10 years ago
Replying to feppink:
System: Windows 7 64-bit Home Basic, GRASS 6.4.3-RC2, core i7 3612QM, 8Gb RAM.
Here Linux, GRASS 6.4.svn (r59970), 8 GB RAM.
I have a vector map with a 30,131 primitives and well over 700,000 vertices. I want to create buffers of 50,000 map units (meters) around the centroids of the primitives. If I do this, memory usage of v.buffer steadily creeps up and at some point GRASS runs out of memory and terminates v.buffer.
I have made a test with the current v.buffer (which itself now uses GEOS), no (more?) memory issues:
# buffer polygons GRASS 6.4.4svn (eu_laea):~ > v.buffer clc2000_E45N25 out=buf distance=100 100% 100% 100% Breaking polygons... 100% 100% Removing duplicates... 100% Breaking boundaries... date% 100% Removing duplicates... 100% Cleaning boundaries at nodes 100% Building topology for vector map <buf>... Building areas... 100% 200514 areas built 16651 isles built Number of nodes: 239757 Number of primitives: 641559 Number of points: 0 Number of lines: 0 Number of boundaries: 641559 Number of centroids: 0 Number of areas: 200514 Number of isles: 16651 Number of areas without centroid: 200514 Removing dangles... 100% Removing bridges... 100% Attaching islands... Building topology for vector map <buf>... Attaching islands... 100% Number of nodes: 239757 Number of primitives: 641559 Number of points: 0 Number of lines: 0 Number of boundaries: 641559 Number of centroids: 0 Number of areas: 200514 Number of isles: 16651 Number of areas without centroid: 200514 Calculating centroids for all areas... 100% Generating list of boundaries to be deleted... 100% Deleting boundaries... 100% Calculating centroids for areas... 100% Building topology for vector map <buf>... Registering primitives... 1479 primitives registered 10551 vertices registered Building areas... 100% 4 areas built 4 isles built Attaching islands... 100% Attaching centroids... 100% Number of nodes: 1479 Number of primitives: 1479 Number of points: 0 Number of lines: 0 Number of boundaries: 1478 Number of centroids: 1 Number of areas: 4 Number of isles: 4 Number of areas without centroid: 3
And
# buffer centroids GRASS 6.4.4svn (eu_laea):~ > v.buffer test out=buf2 distance=50 type=centroid Buffering features... 100% Cleaning buffers... Building parts of topology... [...] Attaching centroids... 100% Number of nodes: 39266 Number of primitives: 39266 Number of points: 0 Number of lines: 0 Number of boundaries: 19674 Number of centroids: 19592 Number of areas: 19592 Number of isles: 19592
Please try again.
comment:5 by , 10 years ago
Priority: | blocker → critical |
---|
comment:6 by , 10 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
No response on original issue for > 1 year, v.buffer is meanwhile based on GEOS.
Closing, feel free to reopen if needed.
Additional info: I specify no other options for v.buffer apart from the units for the major axis. Memory issue starts occurring during "Breaking boundaries".