[#6143] — Christophe Poucet <christophe.poucet@...>

Hello,

17 messages 2005/10/04
[#6147] Re: patch.tgz — nobu.nokada@... 2005/10/04

Hi,

[#6199] Kernel rdoc HTML file not being created when rdoc is run on 1.8.3 — James Britt <ruby@...>

When 1.8.3 came out, I grabbed the source and ran rdoc on it. After

9 messages 2005/10/08

[#6251] RubyGems, upstream releases and idempotence of packaging — Mauricio Fern疣dez <mfp@...>

[sorry for the very late reply; I left this message in +postponed and forgot

14 messages 2005/10/12

[#6282] Wilderness: Need Code to invoke ELTS_SHARED response — "Charles E. Thornton" <ruby-core@...>

Testing the My Object Dump and I am trying to cause creation

13 messages 2005/10/14
[#6283] Re: Wilderness: Need Code to invoke ELTS_SHARED response — Mauricio Fern疣dez <mfp@...> 2005/10/14

On Fri, Oct 14, 2005 at 05:04:59PM +0900, Charles E. Thornton wrote:

[#6288] Re: Wilderness: Need Code to invoke ELTS_SHARED response — "Charles E. Thornton" <ruby-core@...> 2005/10/14

Mauricio Fern疣dez wrote:

[#6365] Time for built-in Rational and Complex classes? — Gavin Sinclair <gsinclair@...>

There has been some support for, but no comment on, RCR #260 ("Make

12 messages 2005/10/24
[#6366] Re: Time for built-in Rational and Complex classes? — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/24

On Mon, 24 Oct 2005, Gavin Sinclair wrote:

[#6405] Re: [PATCH] Pathname.exists?() — "Berger, Daniel" <Daniel.Berger@...>

12 messages 2005/10/25
[#6406] Re: [PATCH] Pathname.exists?() — TRANS <transfire@...> 2005/10/25

On 10/25/05, Berger, Daniel <Daniel.Berger@qwest.com> wrote:

[#6408] Re: [PATCH] Pathname.exists?() — Gavin Sinclair <gsinclair@...> 2005/10/25

On 10/26/05, TRANS <transfire@gmail.com> wrote:

[#6442] Wilderness: I Have formatted README.EXT into an HTML Document — "Charles E. Thornton" <ruby-core@...>

I have taken README.EXT (English Version Only) and have reformatted

14 messages 2005/10/27

[#6469] csv.rb a start on refactoring. — Hugh Sasse <hgs@...>

For a database application I found using CSV to be rather slow.

50 messages 2005/10/28
[#6470] Re: csv.rb a start on refactoring. — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/28

[#6471] Re: csv.rb a start on refactoring. — James Edward Gray II <james@...> 2005/10/28

On Oct 28, 2005, at 8:53 AM, Ara.T.Howard wrote:

[#6474] Re: csv.rb a start on refactoring. — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/28

On Fri, 28 Oct 2005, James Edward Gray II wrote:

[#6484] Re: csv.rb a start on refactoring. — James Edward Gray II <james@...> 2005/10/29

On Oct 28, 2005, at 9:58 AM, Ara.T.Howard wrote:

[#6485] Re: csv.rb a start on refactoring. — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/29

On Sat, 29 Oct 2005, James Edward Gray II wrote:

[#6486] Re: csv.rb a start on refactoring. — James Edward Gray II <james@...> 2005/10/29

On Oct 28, 2005, at 8:25 PM, Ara.T.Howard wrote:

[#6487] Re: csv.rb a start on refactoring. — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/29

On Sat, 29 Oct 2005, James Edward Gray II wrote:

[#6491] Re: csv.rb a start on refactoring. — James Edward Gray II <james@...> 2005/10/29

On Oct 28, 2005, at 8:43 PM, Ara.T.Howard wrote:

[#6493] Re: csv.rb a start on refactoring. — James Edward Gray II <james@...> 2005/10/29

On Oct 28, 2005, at 10:06 PM, James Edward Gray II wrote:

[#6496] Re: csv.rb a start on refactoring. — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/29

On Sun, 30 Oct 2005, James Edward Gray II wrote:

[#6502] Re: csv.rb a start on refactoring. — James Edward Gray II <james@...> 2005/10/30

On Oct 29, 2005, at 12:11 PM, Ara.T.Howard wrote:

[#6505] Re: csv.rb a start on refactoring. — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/30

On Mon, 31 Oct 2005, James Edward Gray II wrote:

[#6511] Planning FasterCSV (was Re: csv.rb a start on refactoring.) — James Edward Gray II <james@...> 2005/10/30

I've decided to create a FasterCSV library, based on the code we

[#6516] Re: Planning FasterCSV (was Re: csv.rb a start on refactoring.) — "Ara.T.Howard" <Ara.T.Howard@...> 2005/10/31

On Mon, 31 Oct 2005, James Edward Gray II wrote:

[#6518] Re: Planning FasterCSV (was Re: csv.rb a start on refactoring.) — "NAKAMURA, Hiroshi" <nakahiro@...> 2005/10/31

-----BEGIN PGP SIGNED MESSAGE-----

Re: Digest Articles 6370-6395 (3/3) (ruby-core ML)

From: Brent Roman <brent@...>
Date: 2005-10-25 16:21:01 UTC
List: ruby-core #6400
Hi Wink,

 I'm the guy that presented the Robotic Underwater Marine Laboratory at
rubyconf2005 and, yes, I'm quite interested in the lightweight messaging
approach
you describe.  In fact, I cobbled together a very similar threading
library framework
for our application.  It is a very common technique for real-time
systems programming,
after all.

We push all the real-time constraints down to firmware coded on custom
microcontrollers in 'C', so I've never had much cause to look at the
performance
of the Ruby's threading scheduler.  It's "adequate" for a dozen or so
threads on
a 200Mhz ARM9.  However, we are looking at Ruby for other applications where
we won't have the luxury of throwing a bunch of microprocessors at problem.

Soooo:

I'd like to review and help you test your O(1)ish scheduler in the hopes
that we might convince the core maintainers to accept it.

- brent

> Subject:
> Threading performance
> From:
> Wink Saville <wink@saville.com>
> Date:
> Tue, 25 Oct 2005 16:06:39 +0900
>
> To:
> ruby-core@ruby-lang.org
>
>
> Hello all,
>
> I would like to first apologize in advance for posting to the core as
> a newbie, but this seems like the right place. Anyway, I'm interested
> in adding light weight asynchronous messaging to Ruby. My idea is to
> create messaging components which are composed of a thread and a queue
> with messages are sent between components via the Queue. This allows
> for significant parallelism but decreased issues thread safety issues
> as each message is processed by the component one at a time. Of course
> any shared objects would have thread safety issues, but if a component
> only operates on its own objects the issues should be significantly
> reduced. Currently we have implemented a similar system in C for a
> consumer audio product and it has worked OK, but I would like to use a
> higher level language and Ruby looks like a good. But performance is a
> concern, especially since we are using 100MHZ ARM7's.
>
> Anyway, I've done a trial implementation and noticed that the as I
> increased the number of messaging components the number of messages
> per second was dropping. So I look into why and have done some
> measurements using the following program:
>

.... snip ....

> Soooooooo:
>
> 1) What are the issues using  _THREAD_SAFE for cygwin?
>
> 2) If I were to create a more efficient implementation of
> rb_thread_schedule, shooting for O(1), would that be interesting to
> anyone?
>
> 3) To do a more efficient implementation I've already taken the first
> step and split eval.c into 4 files eval.h, thread.c and thread.h, is
> anyone interested in these files? Of course they would need to be
> evaluated by some experts and probably changed, but I think
> refactoring out the threading code makes sense. Note: Evan originally
> suggested this to me when we talked at the Ruby Conference.
>
> 4) Is anyone interested in a light weight asynchronous messaging for
> Ruby? By light weight I mean the performance decrease due to message
> passing is low (use binary for marshaling) and by asynchronous I mean
> that sending a message never blocks nor returns a value. Messages are
> placed on a queue that the receiver will processes at a time of its
> choosing.
>
> Cheers,
>
> Wink
>
>

-- 
 Brent Roman                                   MBARI
 Software Engineer               Tel: (831) 775-1808
 7700 Sandholdt Road,         Moss Landing, CA 95039
 mailto:brent@mbari.org  http://www.mbari.org/~brent


In This Thread

Prev Next