Article: Parallelism at HotPar 2010
By: rwessel (robertwessel.delete@this.yahoo.com), August 23, 2010 9:50 pm
Room: Moderated Discussions
Steve Underwood (steveu@coppice.org) on 8/23/10 wrote:
---------------------------
>rwessel (robertwessel@yahoo.com) on 8/23/10 wrote:
>---------------------------
>>Steve Underwood (steveu@coppice.org) on 8/23/10 wrote:
>>---------------------------
>>>If they start showing worthwhile gains for problems involving numerous
>>>short vectors (e.g. the endless 40 element vectors in the G.729 speech codec), I
>>>might start to get really interested in them.
>>
>>
>>I assume you meant that as an example of an algorithm using short-ish vectors.
>>There's certainly no reason to apply hardware acceleration to G.729, short of needing to do 100+ streams.
>
>It is actually a very practical application. There is a market for cards to transcode
>hundreds or thousands of concurrent G.729 streams in VoIP server applications. The
>current 4 core xeons can do about 500 channels. People want to go higher (and also
>leave some time for the other functions of the server, of course). More xeons in
>the box is obviously one route. Are cheap GPUs a realistic alternative?
It's a pretty small market (although not an insignificant one). There are just over 100,000 businesses in the United States with more than 100 employees (plus a number of non-business entities, of course). Certainly no one smaller than that will need a 500 stream VoIP server
At best, you'd be looking at about 25,000 units per year in the US, assuming a five year replacement cycle (which would be extremely fast in historical PBX terms).
Worse, it's a declining market. Let's say in 2015, something price equivalent to today's 4 core Xeon, will be four times as fast (eg. less than Moore's Law). The resulting server handing 2000 streams would likely handle almost all entities with fewer than 500 people. There are only about 18,000 businesses with more than 500 people in the US. Or about 5000 units per year. Head out another five years, and the numbers quarter (or worse) again.
Unfortunately the above is highly optimistic - the actual need for active streams per-employee (or station) is far lower than the above implies. And significantly beefier servers are available at modest cost increments.
And many of the active streams can run without the server getting involved at all (for example, VoIP station-to-station non-conference calls). Calls involving access to the regular telco network, and things like voicemail, will require server involvement, but the need for those will clearly decline (with more VoIP stations, more calls will avoid the conversion to 64kbps voice, for both active calls and things like voicemail).
Nor is it clear that there's a real cost issue. Business phones will continue to cost money on a per unit basis to install, let's be conservative and call it $100/ea. The incremental cost for another (low end) server for every 500 stations will be modest. And you may well be adding gear to support other functions (like voicemail) as your PBX grows.
Another business (or way to view the entire market) would be general VoIP service. There are only a few million streams active at the busiest times in the US, perhaps surging to a (very) few tens of millions at select times. A few thousand 2000-stream servers would handle the entire US call volume assuming that every VoIP user was talking to a *non*-VoIP user.
But still there will be some need for large-ish VoIP servers, and GPUs may fit there, but a few thousand units per year is not really going to excite the GPU vendors.
And I’m not forgetting the non-US market, but that will only increase those numbers by a small factor.
---------------------------
>rwessel (robertwessel@yahoo.com) on 8/23/10 wrote:
>---------------------------
>>Steve Underwood (steveu@coppice.org) on 8/23/10 wrote:
>>---------------------------
>>>If they start showing worthwhile gains for problems involving numerous
>>>short vectors (e.g. the endless 40 element vectors in the G.729 speech codec), I
>>>might start to get really interested in them.
>>
>>
>>I assume you meant that as an example of an algorithm using short-ish vectors.
>>There's certainly no reason to apply hardware acceleration to G.729, short of needing to do 100+ streams.
>
>It is actually a very practical application. There is a market for cards to transcode
>hundreds or thousands of concurrent G.729 streams in VoIP server applications. The
>current 4 core xeons can do about 500 channels. People want to go higher (and also
>leave some time for the other functions of the server, of course). More xeons in
>the box is obviously one route. Are cheap GPUs a realistic alternative?
It's a pretty small market (although not an insignificant one). There are just over 100,000 businesses in the United States with more than 100 employees (plus a number of non-business entities, of course). Certainly no one smaller than that will need a 500 stream VoIP server
At best, you'd be looking at about 25,000 units per year in the US, assuming a five year replacement cycle (which would be extremely fast in historical PBX terms).
Worse, it's a declining market. Let's say in 2015, something price equivalent to today's 4 core Xeon, will be four times as fast (eg. less than Moore's Law). The resulting server handing 2000 streams would likely handle almost all entities with fewer than 500 people. There are only about 18,000 businesses with more than 500 people in the US. Or about 5000 units per year. Head out another five years, and the numbers quarter (or worse) again.
Unfortunately the above is highly optimistic - the actual need for active streams per-employee (or station) is far lower than the above implies. And significantly beefier servers are available at modest cost increments.
And many of the active streams can run without the server getting involved at all (for example, VoIP station-to-station non-conference calls). Calls involving access to the regular telco network, and things like voicemail, will require server involvement, but the need for those will clearly decline (with more VoIP stations, more calls will avoid the conversion to 64kbps voice, for both active calls and things like voicemail).
Nor is it clear that there's a real cost issue. Business phones will continue to cost money on a per unit basis to install, let's be conservative and call it $100/ea. The incremental cost for another (low end) server for every 500 stations will be modest. And you may well be adding gear to support other functions (like voicemail) as your PBX grows.
Another business (or way to view the entire market) would be general VoIP service. There are only a few million streams active at the busiest times in the US, perhaps surging to a (very) few tens of millions at select times. A few thousand 2000-stream servers would handle the entire US call volume assuming that every VoIP user was talking to a *non*-VoIP user.
But still there will be some need for large-ish VoIP servers, and GPUs may fit there, but a few thousand units per year is not really going to excite the GPU vendors.
And I’m not forgetting the non-US market, but that will only increase those numbers by a small factor.