<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div>I am quite familiar with that 1km radar data in grib2 format. It is behind a few of COLA’s operational products (e.g.
<a href="http://wxmaps.org/pix2/currad.png">http://wxmaps.org/pix2/currad.png</a>).</div>
<div><br>
</div>
<div>The reason why it takes GrADS so long to open the file is because of PDEF — while you watch that ’scanning descriptor file’ message and sit there waiting for the prompt to return, GrADS is generating a database of indices to use for the pdef’d I/O. The
 interpolation is bilinear, so for every grid point in the destination grid, GrADS needs to know which 4 data points to read from the native data file. Once that array of indices has been calculated, the prompt returns and then the I/O is pretty fast because
 the entire native grib2 grid gets cached.&nbsp;</div>
<div><br>
</div>
<div>Jim Potemra’s example of a high res data set that loads instantly but takes a long time with the I/O — that data set probably has no pdef entry, but the I/O is slow because it’s classic netcdf, which is not cached by GrADS (it’s on my list of things to
 implement.) If you combine both of these features (i.e. you have a classic-format high-res netcdf file that requires a PDEF entry), it’s going to be painful to read with GrADS.&nbsp;</div>
<div><br>
</div>
<div>I suggest you try a 1-time format translation of the 1km grib2 file into a compressed, chunked netcdf4 file on a regular grid. Suppose the XDEF and YDEF entries in your descriptor file (1kmradar.ctl) looked like this:</div>
<div>
<div>xdef 6550 linear -129.0 0.01</div>
<div>ydef 3300 linear &nbsp; 22.0 0.01</div>
</div>
<div><br>
</div>
<div>Here’s an UNTESTED script fragment to do the format translation:</div>
<div>‘open 1kmradar.ctl’</div>
<div>‘define base=BREFl1_1’</div>
<div>‘set chunksize 655 330’</div>
<div>‘set sdfwrite -3dt -flt -nc4 -chunk -zip latest_1kmradar.nc4’</div>
<div>‘sdfwrite base’</div>
<div><br>
</div>
<div>Now you can do all your I/O from the web server on latest_1kmradar.nc4 using sdfopen and I bet it will be surprisingly quick. Not only have you gotten rid of PDEF, you are taking advantage of the super-efficient I/O with the chunked data file — the library
 does the subsetting for you, because it only reads the chunks it needs to cover a given region. If you display the data more than once in a script, the library is also cacheing (so GrADS doesn’t have to).&nbsp;</div>
<div><br>
</div>
<div>—Jennifer&nbsp;</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<br>
<div>
<div>On Jan 14, 2016, at 7:05 PM, James T. Potemra &lt;<a href="mailto:jimp@hawaii.edu">jimp@hawaii.edu</a>&gt; wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite">
<div bgcolor="#FFFFFF" text="#000000">Hi Travis,<br>
<br>
This seems a little strange to me.&nbsp; I did a quick test with one of our higher res data sets (global bathy) that is 21600 by 64800 (x,y) and it loads almost instantly in GrADS.&nbsp; Of course generating a display takes a long time, and my test was done on a netCDF
 file.<br>
<br>
This aside, could you run the data through an OPeNDAP server?&nbsp; Even though it would be on the same machine, you could use the server to subset via the DAP call, rather than relying on GrADS to load the entire file.<br>
<br>
Jim<br>
<br>
<div class="moz-cite-prefix">On 1/14/16 12:54 PM, Travis Wilson - NOAA Federal wrote:<br>
</div>
<blockquote cite="mid:CAH5UVBejuh1Q0xiRQMmLc81WgexuZ-gHvVQEurgcLVv&#43;v0QLDA@mail.gmail.com" type="cite">
<div dir="ltr">
<p class="MsoNormal">Hi,</p>
<p class="MsoNormal"><br>
</p>
<p class="MsoNormal">At the NWS we have been using grads to create images from grib files on the fly.&nbsp; Users use a front end interface to select a model (which is just a grib file on a server), field, and view, and submits a job.&nbsp; Within 3-4 seconds the server
 is able to launch grads, open the grib file, and produce 50-100 images for the user to view.&nbsp; This works extremely well for CONUS datasets with medium to coarse resolutions (up to 6km).&nbsp;
</p>
<p class="MsoNormal">We have started using higher resolution grib files (1 km radar files are attached) and they are substantially slower.&nbsp; The main problem comes from opening the file.&nbsp; If a user selects radar for Northern California, it takes grads approximately
 18 seconds just to open the 1km CONUS radar file (scanning descriptor file)..and then grads plots rather quickly.&nbsp;
</p>
<p class="MsoNormal"><br>
</p>
<p class="MsoNormal">A workaround we have been using is to subset the data on the fly (since we don’t know the area the user will select).&nbsp; This example regrids the CONUS radar for northern California. &nbsp;&nbsp;</p>
<p class="MsoNormal"><br>
</p>
<p class="MsoNormal">wgrib2 1kmradar_201512241600.grib2 -small_grib 233:243 36.8:42.8 1kmradar_201512241600.grib2.small</p>
<p class="MsoNormal"><br>
</p>
<p class="MsoNormal">The small grib file will open in GrADS in about 1 second.&nbsp; Regridding, and remaking the ctl and idx is substantially faster, but still requires a lot of time.&nbsp; My question is, is there any way to speed up the scanning of the CONUS descriptor
 file without subset the grib file.&nbsp; For example, grads would not scan the entire conus descriptor file when we just need to look at Northern California (or whatever portion of the US the users selects).&nbsp;
</p>
<p class="MsoNormal"><br>
</p>
<p class="MsoNormal">We appreciate all the help,</p>
<p class="MsoNormal">Travis</p>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset> <br>
<pre wrap="">_______________________________________________
gradsusr mailing list
<a class="moz-txt-link-abbreviated" href="mailto:gradsusr@gradsusr.org">gradsusr@gradsusr.org</a>
<a class="moz-txt-link-freetext" href="http://gradsusr.org/mailman/listinfo/gradsusr">http://gradsusr.org/mailman/listinfo/gradsusr</a>
</pre>
</blockquote>
<br>
</div>
_______________________________________________<br>
gradsusr mailing list<br>
<a href="mailto:gradsusr@gradsusr.org">gradsusr@gradsusr.org</a><br>
http://gradsusr.org/mailman/listinfo/gradsusr<br>
</blockquote>
</div>
<br>
</body>
</html>