> > Hello, > > I wonder how Asterisk scales when we increment the Core's or CPU's of > one computer. > > I see that Asterisk is only one process (I guess that it uses threads). > But because Asterisk is only one process, this process is always > executed in the same CPU. So we can have a 8 Cores server, with one Core > running Asterisk, another Core running operating system stuff/other > small daemons and 6 idle cores. > > Is this correct? Why not? > > If this is correct, increasing CPU number of Asterisk server box would > not increase the performance. > > I don't see any other process that could use other Cores (like > transcoding processes, executing dialplan, etc.) > > Thank you for your information, > > -- > Carles Pina i Estany GPG id: 0x8CBDAE64 > http://pinux.info Manresa - Barcelona
Carles, Asterisk is one process, but as you mentioned multi-threaded as well. Because it is multi-threaded it can run on multiple cores/CPU's at a time. I don't know the internals of Asterisk that well so I can't site specific examples, but I know that there are some scalability bottlenecks people are looking at, specifically with the IAX protocol and how the threads send/receive packets. I'm sure that an Asterisk developer can chime in and give several examples of how Asterisk uses its threads to increase scalability. That said, there will be a point where the number of core/CPU's won't be the bottleneck so adding more won't help anything. Ryan _______________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users