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  <20102011  2012  2013  2014  2015  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  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: StreamDevice slowdown
From: Eric Norum <[email protected]>
To: Mark Rivers <[email protected]>, Dirk Zimoch <[email protected]>, "[email protected] tech-talk" <[email protected]>
Date: Sun, 26 Sep 2010 15:41:15 -0700
Hmm...
I have an asyn record in my application already.

So, I set up a bug buffer when I instantiate it:
dbLoadRecords "db/asynRecord.db" "P=tfb:,R=asyn,PORT=L0,ADDR=-1,OMAX=0,IMAX=33554432"

Then at the end of the st.cmd file:
dbpf tfb:arm Arm
DBR_STRING:          "Arm"    
epicsThreadSleep 1
dbpf tfb:softTrigger 1
DBR_STRING:          "Trigger"          
epicsThreadSleep 1
dbpf tfb:asyn.OFMT ASCII
DBR_STRING:          "ASCII"  
dbpf tfb:asyn.IFMT Binary
DBR_STRING:          "Binary" 
dbpf tfb:asyn.AOUT "Waveform?"
DBR_STRING:          "Waveform?"        



And the 'seconds per megasample'  are:10.24
10.24
10.25
10.25
10.24
10.25
10.24
10.25
10.24
10.24
10.25
10.25
10.24
10.24
10.25
10.24




So, the smoking gun appears to be in StreamDevice's hand.....

On Sep 26, 2010, at 3:29 PM, Mark Rivers wrote:

> To be sure that the problem is streamDevice rather than something else in EPICS, you could use the asynRecord to do the tests.  Put the OFMT=ASCII, IFMT=Binary, and make the IMAX be large enough to hold your waveform when you boot the IOC.
> 
> Mark
> 
> 
> ________________________________
> 
> From: Eric Norum [mailto:[email protected]]
> Sent: Sun 9/26/2010 5:25 PM
> To: Mark Rivers
> Cc: [email protected]; Dirk Zimoch
> Subject: Re: StreamDevice slowdown
> 
> 
> 
> To check the raw transfer speed I did:
>         telnet  -c  192.168.1.159 73 >/dev/null
> and typed in the 'Waveform?\n" command. 
> 
> The times per megasample for 16 megasamples in this case:
> 10.25
> 10.24
> 10.24
> 10.25
> 10.24
> 10.25
> 10.24
> 10.25
> 10.24
> 10.25
> 10.24
> 10.25
> 10.24
> 10.25
> 10.24
> 10.24
> 
> So I'm pretty sure that the slowdown is in the StreamDevice processing somewhere.
> 
> By way of comparison, here are the 16 'seconds per megasample' values when using ASYN/StreamDevice rather than telnet:
> 16.78
> 48.18
> 80.91
> 113.86
> 147.28
> 180.20
> 211.65
> 244.36
> 278.61
> 308.90
> 342.91
> 374.54
> 408.60
> 439.26
> 473.29
> 505.54
> 
> 
> 
> On Sep 26, 2010, at 2:40 PM, Mark Rivers wrote:
> 
>> Have you turned on asynTrace in the low-level (TCP?) driver and sent the output to a file so it does not slow things down too much?  Can you see then what's on the wire?
>> 
>> Mark
>> 
> 
> --
> Eric Norum
> [email protected]
> 
> 
> 

-- 
Eric Norum
[email protected]



Replies:
RE: StreamDevice slowdown Mark Rivers
References:
StreamDevice slowdown Eric Norum
RE: StreamDevice slowdown Mark Rivers
Re: StreamDevice slowdown Eric Norum
RE: StreamDevice slowdown Mark Rivers

Navigate by Date:
Prev: RE: StreamDevice slowdown Mark Rivers
Next: RE: StreamDevice slowdown Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: StreamDevice slowdown Mark Rivers
Next: RE: StreamDevice slowdown Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 26 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·