EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Bayer vs RGB1 performance for Prosilica cameras
From: Mark Rivers <[email protected]>
To: Bruce Hill <[email protected]>
Cc: "Nelson, Silke" <[email protected]>, "[email protected]" <[email protected]>
Date: Tue, 18 Feb 2014 04:30:51 +0000
Hi Bruce,

This really sounds a lot like the problem of the Linux Ethernet network buffers being too small. We've seen similar problems where one camera would work fine, but then when trying to run multiple cameras on the same interface there would be lots of dropped packets and the rates go way down.

This is from a message I sent on 4/22/2013 to the folks at LCLS who were having similar problems:

***********************************************************************
Folks,

I think I have solved the problem of dropping frames on the Prosilica cameras on Linux. The solution is simply to increase the value of the parameters net.core.rmem_max and net.core.rmem_default to 1048576.

First, see what the current value of the parameters are on your system:

>sudo sysctl -a | grep net.core.rmem

On my system the values were the following:

net.core.rmem_max = 131071
net.core.rmem_default = 126976

So they are about 128 KB. I then increased them to 1MB as suggested by the Point Grey article:

http://www.ptgrey.com/support/kb/index.asp?a=4&q=354

Colorado:areaDetector/iocBoot/iocPS3>sudo sysctl -w net.core.rmem_max=1048576 net.core.rmem_default=1048576

Colorado:areaDetector/iocBoot/iocPS3>sudo sysctl -a | grep net.core.rmem
net.core.rmem_max = 1048576
net.core.rmem_default = 1048576

Once I made those changes I could run 3 cameras on our Linux system with 4 cores and a single GigE interface and lose no frames at 5 frames/sec with both JPEG and Statistics plugins running. At 10 frames/sec I lost only 5 frames/3000, or less than 0.2%. Under these conditions all 4 cores are 100% busy, and I was previously losing 50% of the frames. You were losing 15% of the frames.

Please give this a try ASAP and let me know if it fixes it for you as well.

Mark
***********************************************************************

This is the link to a tech-talk message that also discusses this:

http://www.aps.anl.gov/epics/tech-talk/2013/msg00787.php

Mark


________________________________________
From: Bruce Hill [[email protected]]
Sent: Monday, February 17, 2014 8:07 PM
To: Mark Rivers
Cc: Nelson, Silke; [email protected]
Subject: Bayer vs RGB1 performance for Prosilica cameras

Hi Mark,
I've been digging into a problem we've been having with some of
our Prosilica cameras not being able to sustain a decent frame rate
when read via areaDetector.

Most of our gigE cameras work great, but I traced the problem to our
color cameras, which are Manta G146C, 1388x1038 w/ 4MB image.
Best case we're getting 7-8fps on these, and when more than one was
in use on an experiment, we couldn't run them reliably at more than 1fps
unless we put each on it's own local ethernet adapter. As long as each
camera has it's own adapter, they can run 7-8fps. My initial theory was
that we were getting network packet failures as the camera is sending
all the data via UDP packets.

By chance, one ended up in free run and Bayer mode, and I found it
running nearly 18hz. I setup a test w/ 4 IOC's split across 2 RHEL5 hosts, each
reading one Manta G146C cameras via our switch, and can run all 4 at 18hz.
Setting one to RGB1 causes it to drop to a few fps, w/ lots of packet errors
and dropped frames.

I tried making the exe owned by root w/ setuid, and I can toggle either camera
between Bayer and RGB1 and both maintain 17+fps, but if I put both in RGB1,
I start getting tons of packet errors and the fps plummets on both cameras.

Have you seen any issues w/ RGB1 vs Bayer on these cameras?

Is that something that would be handled in the areaDetector code, or
should I be contacting Allied Vision?

Thanks!
- Bruce



Replies:
Re: Bayer vs RGB1 performance for Prosilica cameras Bruce Hill
References:
Bayer vs RGB1 performance for Prosilica cameras Bruce Hill

Navigate by Date:
Prev: Bayer vs RGB1 performance for Prosilica cameras Bruce Hill
Next: Re: control knobs to a new control system Jack
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Bayer vs RGB1 performance for Prosilica cameras Bruce Hill
Next: Re: Bayer vs RGB1 performance for Prosilica cameras Bruce Hill
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  <20142015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 17 Dec 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·