Circuitscape / Circuitscape.jl

Algorithms from circuit theory to predict connectivity in heterogeneous landscapes
https://circuitscape.org
MIT License
128 stars 35 forks source link

Questions from your “average user” #179

Closed elkoen closed 5 years ago

elkoen commented 5 years ago

Hi, I just started using CS.jl recently. I think of myself as your “average user”. First, I would like to thank you for all of your work – so far, I can run larger grids much faster than I could with CS 4.0. As an average user, there are a few things that make CS.jl seem intimidating. Starting this conversation might help other “average users” ensure that we are fully utilizing the power of CS.jl.

  1. The part of your github page that tells me what to type into Julia is great (thanks for this). But, I am unsure of what information my .ini file should have. My work-around has been to start up CS 4.0 and after it writes the .ini, I call that into Julia.
  2. This may be a silly question but I will ask it anyway. Can my regular Windows desktop computer run CS.jl in parallel? Do I just write parallelize = True in the .ini file? (when I tried this, it didn’t seem to speed things up). Do I have to change max_parallel = 0 to something else?

I hope that answers to some of these questions will make CS.jl more accessible. Thanks!! Erin

ranjanan commented 5 years ago

Hi @elkoen, thank you for your questions. The answers to both of them need shall be put up on the README, with your help.

  1. To get started with an INI file, you could simply copy an INI file from the tests: https://github.com/Circuitscape/Circuitscape.jl/tree/master/test/input, depending on what data type and scenario you're running. For example, if you want to run raster pairwise, you should simply create a new file on your computer, copy the contents of this file, save it, and then try running it.

  2. You can definitely do parallel runs on Windows, in fact that's one of the main differences between Circuitscape.jl and the older Python package. To run in parallel, you add parallelize=true and then max_parallel = n where n is the number of parallel processes you'd like Circuitscape to spawn and run. Ideally, you should choose n to be the number of cores on your machine. On an i7 processor, that number is typically 4, and for an i5 it's typically 2, although this does vary depending on your configuration.

On a side note, we currently don't support raster pairwise mode in parallel if your point file has polygons in it.

Does this help? I'm happy to provide clarifications. Once you're happy with these answers, I'll put these explanations up on the README.

elkoen commented 5 years ago

Thank-you for responding so quickly!

  1. I am not sure why I hadn't thought of this - it is simpler than what I was doing
  2. This is also helpful. I am trying it now and it seems to be running in parallel. Thanks!
ranjanan commented 5 years ago

Great, I'll put this up on the README and then close this.