[Csnd] parallel rendering, eg via clusters
Date | 2008-01-16 12:05 |
From | Atte André Jensen |
Subject | [Csnd] parallel rendering, eg via clusters |
Hi Is it possible to use multiple processors (or preferably a cluster) to render with csound? Of course realtime would be nice, but deferred rendering to disc would also be ok. If it's possible, where can I read about how to get started? If no: is there a workaround that'll allow this? If not, are somebody working on adding this possibility to csound or does anyone else see a use for it? -- Atte http://atte.dk | http://myspace.com/attejensen http://anagrammer.dk | http://modlys.dk |
Date | 2008-01-16 12:18 |
From | Victor Lazzarini |
Subject | [Csnd] Re: parallel rendering, eg via clusters |
yes, but you are talking here of using the Csound API , either from C or perhaps from Java or Python. With C it's possible to use MPI and build a cluster-csound host. I think Oeyvind has looked into doing something with Python, perhaps he can give you some pointers. Victor At 12:05 16/01/2008, you wrote: >Hi > >Is it possible to use multiple processors (or preferably a cluster) to >render with csound? Of course realtime would be nice, but deferred >rendering to disc would also be ok. > >If it's possible, where can I read about how to get started? > >If no: is there a workaround that'll allow this? If not, are somebody >working on adding this possibility to csound or does anyone else see a use >for it? > >-- >Atte > >http://atte.dk | http://myspace.com/attejensen >http://anagrammer.dk | http://modlys.dk > > >Send bugs reports to this list. >To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe >csound" Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth |
Date | 2008-01-16 12:28 |
From | Richard Dobson |
Subject | [Csnd] Re: Re: parallel rendering, eg via clusters |
Victor Lazzarini wrote: > yes, but you are talking here of using the Csound API , either from C or > perhaps from Java or Python. With C it's possible to use MPI and build > a cluster-csound host. > > I think Oeyvind has looked into doing something with Python, perhaps he can > give you some pointers. > > Victor I would be interested to know what the current best scholarship is on this. Is anyone actively running Csound on a cluster? I was wondering for example if anyone has made/got tools for e.g. splitting a score to run each instrument concurrently on different instances on different processors/cores (handling any dependencies, etc). (Assuming that is a reasonable approach, etc...). Richard Dobson |
Date | 2008-01-16 12:37 |
From | Atte André Jensen |
Subject | [Csnd] Re: Re: parallel rendering, eg via clusters |
Victor Lazzarini wrote: > yes, but you are talking here of using the Csound API , either from C or > perhaps from Java or Python. With C it's possible to use MPI and build > a cluster-csound host. Hmm, sounds promissing. I'm not totally sure what the implications are of "using the Csound API". Would it be possible to throw a regular csd at cluster like this and have it render to disc? > I think Oeyvind has looked into doing something with Python, perhaps he can > give you some pointers. That would be great! Looking forward to any information. -- peace, love & harmony Atte http://atte.dk | http://myspace.com/attejensen http://anagrammer.dk | http://modlys.dk |
Date | 2008-01-16 13:25 |
From | Victor Lazzarini |
Subject | [Csnd] Re: Re: Re: parallel rendering, eg via clusters |
I have started some work on a large cluster, but did not have time to continue. I got as far as build Csound 5 on the cluster and was going to play with MPI, but then I did not have any spare time to pursue it. I am interested in that kind of thing and had experience with MPI. However, there are only 24 hours in the day. Victor At 12:28 16/01/2008, you wrote: >Victor Lazzarini wrote: >>yes, but you are talking here of using the Csound API , either from C or >>perhaps from Java or Python. With C it's possible to use MPI and build >>a cluster-csound host. >>I think Oeyvind has looked into doing something with Python, perhaps he can >>give you some pointers. >>Victor > > >I would be interested to know what the current best scholarship is on >this. Is anyone actively running Csound on a cluster? I was wondering for >example if anyone has made/got tools for e.g. splitting a score to run >each instrument concurrently on different instances on different >processors/cores (handling any dependencies, etc). (Assuming that is a >reasonable approach, etc...). > >Richard Dobson > > > > >Send bugs reports to this list. >To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe >csound" Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth |
Date | 2008-01-16 13:28 |
From | Victor Lazzarini |
Subject | [Csnd] Re: Re: Re: parallel rendering, eg via clusters |
Yes, once Csound lib is available, then it's a case of writing distributed programs, with tools such as MPI. Depending on the cluster and on how the access to it is granted, it might be even possible to collect audio data on a microcomputer connected to it and play it in realtime. Victor At 12:37 16/01/2008, you wrote: >Victor Lazzarini wrote: > >>yes, but you are talking here of using the Csound API , either from C or >>perhaps from Java or Python. With C it's possible to use MPI and build >>a cluster-csound host. > >Hmm, sounds promissing. I'm not totally sure what the implications are of >"using the Csound API". Would it be possible to throw a regular csd at >cluster like this and have it render to disc? > >>I think Oeyvind has looked into doing something with Python, perhaps he can >>give you some pointers. > >That would be great! Looking forward to any information. > >-- >peace, love & harmony >Atte > >http://atte.dk | http://myspace.com/attejensen >http://anagrammer.dk | http://modlys.dk > > >Send bugs reports to this list. >To unsubscribe, send email sympa@lists.bath.ac.uk with body "unsubscribe >csound" Victor Lazzarini Music Technology Laboratory Music Department National University of Ireland, Maynooth |
Date | 2008-01-16 16:29 |
From | "Steven Yi" |
Subject | [Csnd] Re: Re: Re: Re: parallel rendering, eg via clusters |
Attachments | None |
Date | 2008-01-16 21:14 |
From | "Oeyvind Brandtsegg" |
Subject | [Csnd] Re: Re: Re: Re: Re: parallel rendering, eg via clusters |
Attachments | None |
Date | 2008-01-18 21:15 |
From | Mark Van Peteghem |
Subject | [Csnd] Re: parallel rendering, eg via clusters |
An entirely different approach would be to make opcodes themselves parallel. grain is an example of an opcode that may take a lot of time to calculate (depending on the parameters). If the calculation would be shared by two cores of a processor, each with half the density, their results can be simply added (maybe something more is needed to get it right, but I think it is possible). For simpler opcodes like oscil this probably is not possible, but that is a fast opcode anyway. This would almost definitely be possible on multicore CPUs, but I'm not sure if it would be possible with a cluster, because the jobs that are divided are quite small. The advantage of this approach is that you can parallellise without having to worry about the order of instrument invocations, global variables, writing to f-tables etc. The downside is that it may be more work, because you have to modify every opcode that is slow to calculate. And there may be such opcodes that can't be parallellized. For scores that have a huge amount of instrument invocations, with simple opcodes that can't be parallellized (like oscil), this would not improve the speed. -- Mark _________________________________________ When you get lemons, you make lemonade. When you get hardware, you make software. |