Subject: devel-digest V2 #182
From: [email-masked] (devel-digest)
To: [email-masked]

devel-digest           Friday, May 28 1999           Volume 02 : Number 182

In this issue:

    vidcap performance
    Re: Newsgroups vs mailing list
    Re: Newsgroups vs mailing list
    test
    test
    DM Build 15 - pass 2
    Re: vidcap performance
    typo in X config file linux.cf
    Re: vidcap performance
    Re: vidcap performance
    Re: THERE IS NO NEW IMAGE

See the end of this digest for information about devel-digest.

----------------------------------------------------------------------

Date: Thu, 27 May 1999 08:19:11 -0400 (EDT)
From: "Dr. Terrance Boult" <[email-masked]>
Subject: vidcap performance

Some time ago (pre archive days) I did lots of fiddling with the netwinder
video.  The performance limit is the copy from the vga space that is inherent
in vidcapture in the netwinder. (The VGA does the biggest part of  the
capture.)  Transferring data from the vga to user space is done as long-word
transfers over the PCI bus (transparently as you access the associated
addresses).   Each PCI-read takes multiple PCI cycles.. so it slow.
The only thing I saw that might improve the performance would be to use DMA
to get the data across  (freeing up the CPU time and, more importantly,
allowing more efficient transfer..  I did not have (and still don't) have the
time to hack that up.   (I tried modifying the driver in many and for my
application I was able to use a region-of-interest to reduce the bandwidth
so I could get 6-7 fps with all my processing which, given the needs of my
demo and network bandwidth, I though would be sufficient. ))  The netwinder
did not end up as the platform of choice for 
the project mostly because of the lack-of-float performance (one of the other
teams on the project is very FP intensive).
If anyone is interested in the modified driver, which allows one to specify a
region-of-interest as start/end point per row, I can put it up on the site.
(It is from back in build 9 or 10 days.  Since my machines are old DM's with
800M disks, and new images don't fit, I don't upgrade them.  I bought it for
development and don't need/want the gig+ of "apps" and stuff that are
included in the new images.  I would be nice if there was a small version of
new releases.. )

Terry Boult --- Vision and Software Technology Lab, EECS Dept. Lehigh Univ.
[email-masked]		         http://www.eecs.lehigh.edu/~tboult 
- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 08:31:41 -0400
From: Matthew Keller <[email-masked]>
Subject: Re: Newsgroups vs mailing list

Chris Garrigues wrote:
> Let me point out a difficulty with public newsgroups:  SPAM.

	The NG's are username/password protected.
- -- 

             -> Matthew Keller <-
            Distributed Computing
             Windows/UNIX Support
              and Host Services
                 Kellas Hall
   State University of New York at Potsdam	
         http://mattwork.potsdam.edu/
- -
     They wouldn't give you the time of day.
     They said you weren't a player.
     They wouldn't accept your calls.
     They are holding on line three.
- -
 PGP Keys -
    http://mattwork.potsdam.edu/crypto/
- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 07:57:33 -0700
From: Michael Bybee <[email-masked]>
Subject: Re: Newsgroups vs mailing list

- --Boundary_(ID_pnb9y1iHQ7aX3ovAQG7Npg)
Content-type: text/plain; charset=us-ascii
Content-disposition: inline
Content-transfer-encoding: 7BIT

I agree with both points. Newsgroups are too ineffiecent, and too prone to
spam from various sources. I prefer E-Mail.

MB

Chris Garrigues <[email-masked]> on 05/26/99 16:44:50

Please respond to [email-masked]

                                                              
 To:      [email-masked]                                 
                                                              
 cc:      (bcc: Michael Bybee/SAC/HN/FHS)                     

                                                              
 Subject: Re: Newsgroups vs mailing list                      

> From:  [email-masked]
> Date:  Wed, 26 May 1999 19:27:51 -0400
>
> Let me point out another difficulty with private newsgroups: those of us
behind
> firewalls may not be able to access the netwinder news server.

Let me point out a difficulty with public newsgroups:  SPAM.

I'd really like to keep the list.

Chris

- --
Chris Garrigues                 virCIO
+1 512 432 4046                 4314 Avenue C                    O-
http://www.DeepEddy.Com/~cwg/   Austin, TX  78751-3709
                                +1 512 374 0500

  My email address is an experiment in SPAM elimination.  For an
  explanation of what we're doing, see http://www.DeepEddy.Com/tms.html

    Nobody ever got fired for buying Microsoft,
      but they could get fired for relying on Microsoft.

- --Boundary_(ID_pnb9y1iHQ7aX3ovAQG7Npg)
Content-type: application/octet-stream; name=att-1.unk
Content-disposition: attachment; filename=att-1.unk
Content-transfer-encoding: base64

LS0tLS1CRUdJTiBQR1AgTUVTU0FHRS0tLS0tDQpWZXJzaW9uOiAyLjYuMg0KDQppUUIxQXdVQk4w
eUhjSmFRbmFhRklJMmRBUUZ0ZEFNQXFsT1JZSTcxbXMxamt3SDN5dFh5eUh1R2swM2JJT1d1DQor
amVnVTRyd1F4U0VaVW5qR2tsMVJFMExXNElIYU1MTjJkaGk5Zm5yeUI0eXlUNjZ4SUlUZlJJN2xZ
SUVEdW5qDQoySjRtSVNpM2F6bHFCdjVuTU1NNFZLa2JkenBPVm5pSg0KPVMrZEYNCi0tLS0tRU5E
IFBHUCBNRVNTQUdFLS0tLS0NCg0K

- --Boundary_(ID_pnb9y1iHQ7aX3ovAQG7Npg)--
- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 21:29:09 +0000
From: [email-masked]
Subject: test

This is a multi-part message in MIME format.
- --------------0DB46B96F1DCA5A65F03A614
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

test
- -- 
     \|/
    (o o)         Mark Knox
  ^  \ /  ^         Software Engineer
// \\ v // \\         Rebel.com Inc.   http://www.rebel.com
    ( . )
 ----m-m----------------------------------------------------------
- --------------0DB46B96F1DCA5A65F03A614
Content-Type: text/x-vcard; charset=us-ascii;
 name="mark.knox.vcf"
Content-Transfer-Encoding: 7bit
Content-Description: Card for 
Content-Disposition: attachment;
 filename="mark.knox.vcf"

begin:vcard 
n:Knox;Mark
x-mozilla-html:FALSE
org:<a href="http://www.rebel.com"><img src="http://www.rebel.com/images/rebel.gif" border=0></a>
version:2.1
email;internet:[email-masked]
title:Software Engineer
tel;fax:613-230-4888
tel;work:613-788-6008 x6154
adr;quoted-printable:;;Suite 1000=0D=0A150 Isabella Street;Ottawa;Ontario;K1S 1V7;Canada
x-mozilla-cpt:;0
fn:Mark Knox
end:vcard

- --------------0DB46B96F1DCA5A65F03A614--

- ---
This message processed by the Netwinder.Org news2mail gateway.

- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 21:33:20 +0000
From: [email-masked]
Subject: test

This is a multi-part message in MIME format.
- --------------A2F8F0F479394826E65E144B
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

test
- -- 
     \|/
    (o o)         Mark Knox
  ^  \ /  ^         Software Engineer
// \\ v // \\         Rebel.com Inc.   http://www.rebel.com
    ( . )
 ----m-m----------------------------------------------------------
- --------------A2F8F0F479394826E65E144B
Content-Type: text/x-vcard; charset=us-ascii;
 name="mark.knox.vcf"
Content-Transfer-Encoding: 7bit
Content-Description: Card for 
Content-Disposition: attachment;
 filename="mark.knox.vcf"

begin:vcard 
n:Knox;Mark
x-mozilla-html:FALSE
org:<a href="http://www.rebel.com"><img src="http://www.rebel.com/images/rebel.gif" border=0></a>
version:2.1
email;internet:[email-masked]
title:Software Engineer
tel;fax:613-230-4888
tel;work:613-788-6008 x6154
adr;quoted-printable:;;Suite 1000=0D=0A150 Isabella Street;Ottawa;Ontario;K1S 1V7;Canada
x-mozilla-cpt:;0
fn:Mark Knox
end:vcard

- --------------A2F8F0F479394826E65E144B--

- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 21:12:36 -0400
From: "Andrew E. Mileski" <[email-masked]>
Subject: DM Build 15 - pass 2

FYI - I've just started the second build pass for DM build 15 (v3.1)
on a first generation system.  The RPMS will start to replace those
currently in my home directory.

Hopefully this will resolve some of the issues of DM build 14, and the
first pass of DM build 15 itself.

In the spirit of being open, my current build 15 problems are:
  - XF86_SVGA seems to have a problem with ptys
    (console messages are causing screen corruption)
  - Anything using an event handler in libXt (most X apps) faults
    [I suspect a compiler (binutils?) bug that went away in gcc but is
     back again in egcs.]
  - PAM authentication is entirely broken (I hope pass 2 will fix this)
    If you play with my stuff, you should substitute bash for mgetty or
    you may not be able to login.
  - I've not yet moved to a 2.2 kernel, though many of the apps have
  - I've not yet managed to rebuild every single RPM, so some are
    not of the same generation.
I built a versioned glibc 2.1.1-7 RPM; don't use it, as it was only a
test and everything else requires an unversioned glibc.  Either Scott
or myself will be producing a "nw" tagged RPM shortly.

Don't play in my minefield if you don't want to lose a few limbs.

P.S.  My S/RPM web pages are huge, and updated every 4 hours.

- --
Andrew E. Mileski - Software Engineer [OS Team Leader]
Rebel.com  http://www.rebel.com/
- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 18:17:31 -0700 (BST)
From: Tim Rowledge <[email-masked]>
Subject: Re: vidcap performance

On Thu 27 May, Dr. Terrance Boult wrote:
[SNIP]
> If anyone is interested in the modified driver, which allows one to specify a
> region-of-interest as start/end point per row, I can put it up on the site.
Although it probably won't help with my specific problem I'd love to see the
code, so do please post it somewhere on the site.

I've been doing more measuring and found pretty depressing results.
Setting the capature to either 352*240 or 704*480 and doing 100 repetitions
gives me a pretty consistent 6.3Mb/s read rate. I realise there it write time
in there as well and frame-blocking time, but it does seem to be fairly solidly
bandwidth related. My test takes ~~10 s to run 100 fullscreen grabs.

Thinking that this is a rather slow rate to move memory on an advanced bus like
PCI I decided to get some idea of the cost of reading and writing without the
PCI involved[1]. I added first a loop after each frame grab that would write to
each byte of the grabbed data. That added ~5secs, and adding a second loop
added another ~5sec (surprise! but always worth double checking). Changing the
loops to read and increment added another ~5 secs. Thus I have to conclude that
135million bytes worth of read and write costs ~15s, or about 5million word
memory transaction/sec.
To confirm this, I wrote a tiny prog that does nothing more that the read/write
loops to time. On my NW (275MHZ SA110, fast {66MHz?} memory bus) it takes 13.76
secs of user time. On my old Acorn RiscPC (202MHz SA110, slow {16MHZ} memory
bus) it takes ~11 secs. Can't help thinking that something is wrong here.

Has somebody turned my cache off? Replaced my memory bus with a memory shopping
trolley?

tim

[1]I'm assuming that the main memory is not on a PCI bus.

- -- 
Gotta run, the cat's caught in the printer.
Tim Rowledge:  [email-masked] (w)  +1 (650) 842-6110 (w)
 [email-masked] (h)  <http://sumeru.stanford.edu/tim>

- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 21:30:12 -0400
From: "Andrew E. Mileski" <[email-masked]>
Subject: typo in X config file linux.cf

I found a typo in /usr/X11R6/lib/X11/config/linux.cf
[xc/config/cf/linux.cf in the XFree86 source tree]

 268: #define DefaultCCCOptions -fsigned-char -fomit-frame-pointer
                       ^
That should be

 268: #define DefaultCCOptions -fsigned-char -fomit-frame-pointer

This would make a difference, as X assumes chars are signed.

- --
Andrew E. Mileski - Software Engineer [OS Team Leader]
Rebel.com  http://www.rebel.com/
- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 22:33:15 -0400
From: Pat Beirne <[email-masked]>
Subject: Re: vidcap performance

Tim Rowledge wrote:

> To confirm this, I wrote a tiny prog that does nothing more that the read/write
> loops to time. On my NW (275MHZ SA110, fast {66MHz?} memory bus) it takes 13.76
> secs of user time. On my old Acorn RiscPC (202MHz SA110, slow {16MHZ} memory
> bus) it takes ~11 secs. Can't help thinking that something is wrong here.
>
> Has somebody turned my cache off? Replaced my memory bus with a memory shopping
> trolley?
>

Tim,

I fell into this one.

I wrote
    p = malloc(big_number);
    for(i=0;i<big_number;i++)
        c = p[i];
This was slow. Why? Because freshly malloc()ed memory is given to
you as the zero page, which is not cached.

Then I tried:
    p = malloc(big_number);
    for(i=0;i<big_number;i++)
        p[i] = i;
    for(i=0;i<big_number;i++)
        c = p[i];
The first pass initializes the memory to non-zero, creating real pages
of cached memory. Much, much faster.

The former was ~130ns/char and the latter was ~24ns/char

I believe the answer to the video capture problem lies in mapping the video
capture memory into cachable space. Then the SA110 will read the data in
a burst and fill its cache. We (the driver authors) will have to do a cache
invalidate before the burst read.

It's on my list of things-to-do, but I probably won't get to it before Aug.

Pat

- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: Thu, 27 May 1999 20:47:01 -0700 (BST)
From: Tim Rowledge <[email-masked]>
Subject: Re: vidcap performance

On Thu 27 May, Pat Beirne wrote:

> I wrote
>     p = malloc(big_number);
>     for(i=0;i<big_number;i++)
>         c = p[i];
> This was slow. Why? Because freshly malloc()ed memory is given to
> you as the zero page, which is not cached.
[SNIP]
I thought about caching, and hoped to avoid the problem by doing:-
p=malloc(lots)
for (i=0;i<50; i++) {
	for(j=0; j<704*480*2; j++) p[i] +=1;
	for(j=0; j<704*480*2; j++) p[i] -=1;
}
which ought to go full speed as soon as the first loop is done. I think. Of
course, it also mangles the dcache anyway since it is a lot of memory...
Nonetheless, I'm very surprised that it runs noticably slower on my NW than
my RPC; after all a 66MHz memory bus ought to buy you _something_!
Even at ~24nS/char, it's only doing 40Mb/sec read, which seems a bit low.
Surely it ought to be more like ~200Mb/sec ?

> I believe the answer to the video capture problem lies in mapping the video
> capture memory into cachable space. Then the SA110 will read the data in
> a burst and fill its cache. We (the driver authors) will have to do a cache
> invalidate before the burst read.
Sounds a reasonable theory, and I'm shocked, shocked I say, that it doesn't
do it that way for you anyway. Are some of the other 'not yet finished'
parts of the driver in line for a similar fix-timetable? In the mean time,
is there anything I can do to perhaps do some of it for myself? Is there
anyplace I can look to find info that might let me cache the video capture
area?

Anyway, thanks for looking at it so far!

tim

- -- 
Useful random insult:- A gross ignoramus -- 144 times worse than an ordinary
ignoramus.
Tim Rowledge:  [email-masked] (w)  +1 (650) 842-6110 (w)
 [email-masked] (h)  <http://sumeru.stanford.edu/tim>

- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

Date: 27 May 1999 20:58:06 -0700
From: Jim Pick <[email-masked]>
Subject: Re: THERE IS NO NEW IMAGE

Russell King <[email-masked]> writes:

> Ralph Siemsen writes:
> > While I've got your attention, please start using the newsgroups.  The
> > mailing lists will be terminated soon.  See the newly updated web pages for
> > more details.
> 
> Hey!  Not fair!  Some of us don't want to use news.  Please continue the
> mailing lists.

Yeah.  I don't like newsgroups either.  I'm subscribed to hundreds of
mailing lists - I don't touch news normally.

I like having a local copy of the lists for my own offline usage.
With the news server thing - I'll have to mess around to try to figure
out how to archive it.  I'll bet Gnus can do it - but you are forcing
me to read the manual.  Ick.  It might not be worth the bother -
because I bet all the traffic is going to be killed off.

Cheers,

 - Jim

- --
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel" as the body of your message.

------------------------------

End of devel-digest V2 #182
***************************

--
This list is run automagically by Majordomo 1.94.4
Please send email questions to [email-masked]
To UNSUBSCRIBE: email [email-masked] with
"unsubscribe devel-digest" as the body of your message.