[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] rails-like framework

From: Alex Shinn
Subject: Re: [Chicken-users] rails-like framework
Date: Sun, 23 Apr 2006 20:30:32 -0500
User-agent: Wanderlust/2.10.1 (Watching The Wheels) SEMI/1.14.6 (Maruoka) FLIM/1.14.6 (Marutamachi) APEL/10.6 Emacs/21.3 (i386-pc-linux-gnu) MULE/5.0 (SAKAKI)

At Sun, 23 Apr 2006 11:15:09 -0400, John Cowan wrote:
> Alex Shinn scripsit:
> > In the absense of any lies^Wstatis^Wbenchmarks, I'd wager Chicken's
> > thread handling is closer to Erlang than to POSIX threads.  And if you
> > look at the conclusions on that Apache comparison, the author suggests
> > the reason Apache doesn't scale has nothing to do with the Apache code
> > itself, but rather because POSIX threads themselves do not scale.
> Well, there's scaling, and then there's scaling.  Lightweight threads
> are wonderful things on uniprocessor machines, but they aren't going
> to be sufficient on multicore boxes, especially not the ones that
> are coming with large numbers of cores.  A way is going to have to
> be found to overcome that problem, or lightweight thread architectures
> are going to be as dead as the dodo on the Web.

It's really not that simple.

For one thing, this is totally a non-issue for high-scale web-servers.
Just run a separate process for each CPU on its own port and have the
load balancer split between them.  Each process can use lightweight
threads resulting in higher scalability overall than a POSIX thread
based solution.

For scientific computing and pure number-crunching, generally either
you have a parallelizable problem, in which case multiple processes
work just as well as threads, or you don't, in which case no threading
architecture will be of any use.

Probably the most important use of SMP-based POSIX threads is video
games, yet the vast majority of games are single-threaded.

Also, it's not clear that multicore is the future, anymore than it is
that RISC is the future :) With AMD's new reverse hyperthreading, they
are using multiple cores to emulate a single core, an approach which
will let people continue to develop single-threaded applications and
count on Moore's law to continue to apply to single-processor machines
for the forseeable future.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]