how to interpret these results ?

Yariv Sadan <>
Mon Aug 7 23:51:06 CEST 2006


Speaking out of near total ignorance when it comes to how the Erlang
VM is implemented: can't the Erlang emulator spawn a new OS thread(s)
to handle STDIN/STDOUT more efficiently? Using a few OS threads for
special purposes and a single OS thread with non-blocking IO for
everything else seems like it would give the best of both worlds for a
very small cost of a few extra threads.

Yariv

On 8/7/06, Ulf Wiger (TN/EAB) <> wrote:
>
> For one thing, Erlang applications traditionally haven't been that
> dependent on stdin/stdout. They've been embedded systems managing tens
> of thousand signaling sessions at a time. Optimizing the performance of
> stdin/stdout hasn't been an important requirement for any (paying)
> customer.
>
> This also means that Erlang can never do a blocking wait on stdin.
> Non-blocking I/O is much slower than blocking I/O, esp in low-level
> benchmarks. But soft real-time characteristics is much more important
> than raw speed in telecoms applications.
>
> The SMP version of Erlang may be able to improve things, I think. You
> can have I/O threads in blocking wait, and won't have to suspend the
> Erlang processes in order to poll descriptors.
>
> Just my half-educated guesses. Someone else may have a better theory.
>
> BR,
> Ulf W
>
> > -----Original Message-----
> > From: 
> > [mailto:] On Behalf Of James Hague
> > Sent: den 7 augusti 2006 22:47
> > To: Erlang Users' List
> > Subject: Re: how to interpret these results ?
> >
> > >erlang is REALLY bad at using stdin/stdout
> >
> > I've wonderered before why this is.  Ditto for line-oriented
> > I/O being slow in Erlang.  What's the fundamental reason for this?
> >
>



More information about the erlang-questions mailing list