orcasound / orca-action-workflow

Github actions to automate Orcasound tasks.
MIT License
7 stars 6 forks source link

Add parallelization #46

Open Molkree opened 3 years ago

Molkree commented 3 years ago

Currently, all workflows just walk over files/segments consequently, so we can parallelize it nicely. Look into multiprocessing module.

Apoorvgarg-creator commented 2 years ago

@Molkree There is one more python package Ray which is faster than multiprocessing. Article1 comparing multiprocessing and Ray Article2, article on the topic Basic Tutorial on Rays. Here is a small example of parallelization with ray and benefits of ray. @Molkree I'd like your views on the same ?

valentina-s commented 2 years ago

@Apoorvgarg-creator Thanks for sharing the Ray's references. Seems Ray may be more useful for complex projects or where one needs shared memory. In this case the task is to processing many files separately, so it may not matter that much. Dask is another similar library which has been popular in scientific computing. Currently I think the free Github Action instance has only 2 cores? so there might not be much speedup. Parallelization may work well in conjunction with a more powerful runner.