comp.lang.ada
 help / color / mirror / Atom feed
From: Lutz Donnerhacke <lutz@iks-jena.de>
Subject: Re: High CPU in tasking
Date: Thu, 24 Jun 2004 20:25:09 +0000 (UTC)
Date: 2004-06-24T20:25:09+00:00	[thread overview]
Message-ID: <slrncdme55.brv.lutz@belenus.iks-jena.de> (raw)
In-Reply-To: 2k0fllF160eotU1@uni-berlin.de

* Nick Roberts wrote:
> I'm obviously only guessing at the details of your application, Lutz, but
> gleaning what I can, I'm surprised that you seem to be talking about one
> buffer.

Yep. The goal of the job is to decode a single data source and redistribute
the gained data to an unknown number of parallel readers with different
speeds.

> Do you not have a separate buffer for each reader (of a single
> demultiplexed stream)?

Yep. I do have a ringbuffer with a single "writer" and an indetermined
number of "readers". The data structure is a protected type with an entry
family for all readers.

> Also, what were the priorities of the tasks?

All the same. I'm currently testing with a data source of 1GB/h and eight
data sources of about half the rate. Each data source allocates a ringbuffer.

There are controlling tasks: A logger task writing to /dev/log, because
syslog(3) is not thread safe, and a supervisor task for handling the
commands on each the TCP session.



  reply	other threads:[~2004-06-24 20:25 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-24 15:43 High CPU in tasking Lutz Donnerhacke
2004-06-24 17:00 ` Nick Roberts
2004-06-24 20:25   ` Lutz Donnerhacke [this message]
2004-06-24 21:56     ` Nick Roberts
2004-06-25  7:34       ` Lutz Donnerhacke
2004-06-25 17:03         ` Nick Roberts
2004-06-28  8:32           ` Lutz Donnerhacke
2004-06-29 17:26             ` Nick Roberts
2004-06-30 12:26               ` Lutz Donnerhacke
2004-06-30 23:39                 ` Randy Brukardt
2004-07-01  7:02                   ` Lutz Donnerhacke
2004-06-25 21:15 ` Mark Lorenzen
2004-06-26  8:01 ` Wojtek Narczynski
2004-06-28  8:17   ` Lutz Donnerhacke
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox