PDA

View Full Version : Wilbur is uber slow



ironmetal250
05-24-2009, 08:35 PM
Should it be taking 45+ minutes to use the river flow feature? I've been working on a new map all day (I admit it is pretty large-sized) but these rivers have kept me waiting for a few hours to get them right... is something just wrong with my computer or is Wilbur really this unbearable slow?

waldronate
05-24-2009, 09:27 PM
It depends on the size of the map, speed of your computer, amount of memory, 32-bit vs. 64-bit version, and numerous other factors. Runtime is proportional to the cube of the image size so it can take a very long time for large images.

loogie
05-24-2009, 09:31 PM
short answer... most likely, but it depends what you mean by large. per pixel operations get slow very quick. you may also find that with such a large image the rivers will be fairly thin. depending on what you are trying to do they may not be to your taste.

Sigurd
05-24-2009, 10:43 PM
And on every 5th cycle it travels across the internet and makes Waldronate coffee -- he really likes coffee :)

Lathorien
05-24-2009, 10:46 PM
If rivers are too thin Under the Incise Flow Options is River "Blur" I usually start at a 2.




And yes, I use a 3.5 quad for 64 bit with 6 Gigs (I am not joking) of high speed ram. I still cant run incise flow on a map larger than 4000x4000, without risk of complete does not return from the dead lock up.

ironmetal250
05-24-2009, 11:05 PM
Oh man... well, I finished the map with the tiny rivers (I might go back and redo the rivers later, but for now... no more)... for reference it was a 6000x4200 pixel image at 100 ppi and I have a 2.6 quad with 4gig RAM.

waldronate
05-25-2009, 01:10 AM
What was the total time? just for reference purposes.

ironmetal250
05-25-2009, 02:23 AM
over 30 minutes for generating rivers once (I had to do it a few times due to my own stupidity)... I'm not sure of the exact time because I left after a half-hour to do something else.

Lathorien
05-25-2009, 03:39 AM
over 30 minutes for generating rivers once (I had to do it a few times due to my own stupidity)... I'm not sure of the exact time because I left after a half-hour to do something else.

LoL sounds about right :)

loogie
05-25-2009, 09:35 AM
yeah 6000x4000 isnt large its huge. problem is quadcore/ram/etc doesnt make much of a dent in these operations cause your limited to 2_4 processes... only real way to speed such up would be to use something like nvidias cuda... basically a small supercomputer in a graphics card case... problem is things need to be programmed to utilize it... the manifold gis system is the only system i've seen use it, and while i hate manifold... they have been getting some strong results (a geoprocess that takes 10 min to run took under 5 seconds in a test they did in ottawa at a conference...) seems like it may be the processing way to go... interesting none the less

palehorse
05-25-2009, 10:54 AM
yeah 6000x4000 isnt large its huge. problem is quadcore/ram/etc doesnt make much of a dent in these operations cause your limited to 2_4 processes... only real way to speed such up would be to use something like nvidias cuda... basically a small supercomputer in a graphics card case... problem is things need to be programmed to utilize it... the manifold gis system is the only system i've seen use it, and while i hate manifold... they have been getting some strong results (a geoprocess that takes 10 min to run took under 5 seconds in a test they did in ottawa at a conference...) seems like it may be the processing way to go... interesting none the less

It would probably be cheaper just to buy yourself a little netbook so you can go check your email or surf the web or whatever while it's rendering! :lol:

Seriously, we've got a couple of desktop systems here at the house that are never even connected to the internet any more.

loogie
05-25-2009, 11:22 AM
you'd be surprized... the cheapest cuda card is either 250 - 600... not to shabby for a supercomputer... thats why its a big deal... makes that type of computing possible at a low price... as for cuda, its basically a card with hundreds of small processors, like 600-800 or something... alone they would struggle to match the speed of computers years ago... but together 800 tiny processors eat away at processes like ants eat leaves... intersting idea, and it has been proven... now its just up to the masses to accept it.

Redrobes
05-25-2009, 12:04 PM
CUDA is very good at doing some jobs but not all. I looked into it for my GTS for a while but each time I did the calculations it came out at about 5x faster not because the processing power was not enough but there's other factors too. The calculation process needs to be designed to fit in with the CUDA architecture perfectly before it gets big advantages. The problem in short is that the code needs to be custom designed for CUDA. The advantage of writing for quad cores etc is that there is only the need to make the app multithreaded which is not so painful. Also someone was saying that it was limited to 2-4 processes. Thats not really true. You also have to remember that each core has SSE instructions which are 4 way parallel in places. So for example a 64 bit x64 compiled app on a quad core can do 16 math instructions at once. Also as noted each intel core is worth many CUDA elements. My PC is 38GFlops and a cuda card is about 250 so about 6x faster which admittedly is not shabby but you have to be careful with 10min->5sec type comparisons. Only in extreme circumstances can you go faster than 20x speed. Naturally put a heavy card into an old CPU box and the difference is bigger. Then it can be cheaper to dual card a box than get all the Mobo, CPU, Ram etc to get that same speed increase. CUDA is great but its not without its limitations and its a bitch to program with. No C++ for it yet I believe (at least last time I checked a while ago). Not beyond anyones capability but its not an easy ride either. Its specialist and requires a problem sufficiently narrow to apply it. Wilbur is such a problem but its not necessarily worth the programming effort to do it. I like Joes done the right thing and gone multithreaded not CUDA. The new Intel chips are about 80+GFlops. So a dual quad-core box is on par with CUDA cards and theres no code change at all to do it. Thats what nVidia have to worry about all the time. Theres a reason not many people are writing CUDA apps. Its not just its difficulty.

loogie
05-25-2009, 04:49 PM
oh i am aware of the foibles of cuda, i was just using manifold as an example of what could be done with the correct support... and like you say it takes extra coding... so unless the masses accept it, such coding will be few and far between. the thing is it is the exact thing that cuda is great for... with the right programming... all in all without spending rediculous ammounts on a computer wilbur is going to take a good long while at that size...

waldronate
05-25-2009, 04:53 PM
yeah 6000x4000 isnt large its huge. problem is quadcore/ram/etc doesnt make much of a dent in these operations cause your limited to 2_4 processes... only real way to speed such up would be to use something like nvidias cuda...

I"m waiting for OpenCL drivers to become available to simplify my programming. That way I'll be able to get reasonable speedup on GPU and CPU systems.

loogie
05-25-2009, 05:53 PM
i heart waldy