1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 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 2010 2011 2012 2013 2014 2015 <2016> 2017 2018 2019 2020 2021 2022 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: EPICS Base Release-Candidate Double Feature! |
From: | Bruce Hill <[email protected]> |
To: | <[email protected]> |
Date: | Thu, 3 Nov 2016 15:35:45 -0700 |
The gateway source was updated Nov 2015 to support dynamic arrays, but needed support in the PCAS which was just rolled out in 3.15.5 and 3.14.12.6 versions of base. You will need to recompile the gateway using one of the above base versions to get dynamic arrays to work across the gateway. One caveat is that the client also needs to support dynamic arrays by requesting zero elements via ca_array_get_callback and many common clients such as edm, labca, and ezca don't do that yet. Regards, - Bruce On 11/03/2016 02:47 PM, Andrew Johnson wrote:
Hi Keith, I concur with the others, that particular change won't help gateways. There was a change to the CAS that might help gateways a little though iff they are being used to transport large arrays where the amount of data included is smaller than the maximum array size (i.e. waveform records that have NORD << NELM). I *think* this just needs a rebuild of the gateway against the new Base, but hopefully Ralph Lange will confirm that no code changes are needed in the gateway itself to take full advantage of that update. Your CA clients should also be using Base-3.14.12 or later, and be subscribing for dynamic-sized arrays. - Andrew On 11/03/2016 04:23 PM, Keith Thorne wrote:Dear Andrew (and others) At LIGO, we appreciate the changes for faster loading of databases. Question: do any of these changes (and the use of dbPvdTableSize shown below) relevant to EPICS gateways? We have some very busy gateways (> 100,000 PVs) at present. Thanks Keith ThorneOn Nov 3, 2016, at 10:27 AM, Andrew Johnson <[email protected]> wrote: Hi Murali, On 11/02/2016 06:21 PM, Shankar, Murali wrote:The 3.15 branch does contain a major performance improvement to the IOC when loading large numbers of database records.Awesome, I can load 100K PV's into a softIOC in a couple of seconds! Thank you so much!If you are loading large numbers of records also make sure that you are setting the size of the IOC's hash-table before dbLoadDatabase() or dbLoadRecords() in your startup script. The size argument must be a power of 2 up to 64K: dbPvdTableSize(65536) The default size is 512, although we should probably increase that nowadays. More hash buckets means more efficient name searches both at load-time and by the CA name resolution task. - Andrew -- Arguing for surveillance because you have nothing to hide is no different than making the claim, "I don't care about freedom of speech because I have nothing to say." -- Edward Snowdon------ Keith Thorne <[email protected]> CDS Software Engineer LIGO Livingston Laboratory Livingston, LA 70754 Phone: (225)686-3168 Fax: (225)686-7189
-- Bruce Hill Member Technical Staff SLAC National Accelerator Lab 2575 Sand Hill Road M/S 10 Menlo Park, CA 94025