Re: [Inkscape-devel] [Inkscape-user] Future plans for speeding up Inkscape?
I think the most bang for the buck and most general would come from using 3D HW accel and moving to the extra memory provided by 64-bit. I know that running out of memory is where Adobe Illus. quickly fails on larger vector drawings, especially in the undo/redo system.
Honestly, It is hard to find people who are Interested and have the skills and time to implement it. We are just waiting for the stars to align and the right contributor(s) to show up.
It's amazing what Inkscape can do and how easy it is to do thing when it comes to vector stuff, but my version (.47) doesn't seem real stable after I've been running it for a while. All of my long edit sessions in _playing_ with advanced features have ended by it crashing.
I wasn't trying to do anything in particular so I don't remember the workflow I did each time, but it was usually after it had been up a while. Only once did I actually get to a point of saving an output w/o it crashing. I'm a complete novice when it comes to computer art/SVG art, so I'd sure I was doing something that was 'unreasonable'... :-)
'unreasonable' behavior is the kind that finds bugs the fastest, and provides us with new use cases. Please report your bugs .
http://www.inkscape.org/report_bugs.php?lang=en
I didn't try to report the bug at the time as I'm sure the developers have their plate full with other problems and since I'm not real familiar with correct operation, I didn't want to be told that I wasn't using the product 'the right way' and by being a beginner, the crashes were due to me trying to do things that I should have done differently (though I tend to believe programs shouldn't crash in such situations, but there could be workarounds that would be known if I was more adept with the program).
I recommend enabling the auto-save feature in Preference it has saved me a few times.
I can try to report bugs if I'm not made to feel worthless for reporting them if I don't also include fixes for them...like I have got on some projects...(oh the joys of open source projects
We want and need all the feedback you can give us for Inkscape. If you have issue with any inkscape contributor making you feel worthless for trying to be helpful please let us know, here or on the Devel ML. Appropriate action will be taken.
Joshua L. Blocher verbalshadow
On 1/5/10, Joshua L. Blocher wrote:
I think the most bang for the buck and most general would come from using 3D HW accel and moving to the extra memory provided by 64-bit.
You know it's amazing how much people trust in 3D acceleration and 64bit. I just hope we won't try to fix existing performance issues by neglecting them and going for 3D/64bit/whatever.
Alexandre
Wed, 6 Jan 2010 00:39:56 +0300 Alexandre Prokoudine <alexandre.prokoudine@...400...> kirjoitti:
I think the most bang for the buck and most general would come from using 3D HW accel and moving to the extra memory provided by 64-bit.
You know it's amazing how much people trust in 3D acceleration and 64bit. I just hope we won't try to fix existing performance issues by neglecting them and going for 3D/64bit/whatever.
This talk about 64-bit confuses me... I've been using 64-bit Inkscape for years already, ever since I got my first 64-bit computer. (no significant performance boosts there, though I haven't done side-by-side comparision between 64-bit and 32-bit Inkscape)
As for rendering performance, I've been thinking about parallerizing the rendering. Rendering SVG can be thought as a graph. The nodes are rendering operations: draw this shape, draw this text, composite these images... and the edges are dependencies: before compositing, the to-be-composited images must be rendered, so there's an edge from each of those to the composite operation. This graph should be a DAG.
The main idea here is: some number of worker threads is spawned and whenever there is an idle worker thread and some ready-to-be-executed rendering operation, the operation is given to that thread. (ready-to-be-executed: all operations it depends on have been finished but the operation itself has not been started yet)
A small extra benefit also: if it happens that the graph is not a DAG, it could be detected. As it stands, Inkscape crashes in such situation. (see https://bugs.launchpad.net/inkscape/+bug/195320 )
I'd guess this would require massive changes to Inkscape renderer. As we're moving towards Cairo rendering, implementing this might not be that useful anyhow.
participants (3)
-
Alexandre Prokoudine
-
Joshua L. Blocher
-
Niko Kiirala