<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Thanks, David. I will try if this will bring some significant
performance boost ...<br>
Tobi<br>
<br>
===<br>
Am 28.07.10 16:09, schrieb Fawcett, David (MPCA):
<blockquote
 cite="mid:D2C2A8AE8E016C42A974F644AF21E1390301B3B57C@MNMAIL05.ead.state.mn.us"
 type="cite">
  <meta http-equiv="Content-Type"
 content="text/html; charset=ISO-8859-1">
  <meta name="Generator" content="Microsoft Word 12 (filtered medium)">
  <style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;
        color:black;}
span.moz-txt-citetags
        {mso-style-name:moz-txt-citetags;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
-->
  </style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
  <div class="WordSection1">
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">I
don&#8217;t know anything about your work flow, but if
possible, you could add a pre-processing step where you use a script to
read
your text file and pre-classify the data.&nbsp; You would end up with
integers representing
each class as &#8216;cell&#8217; values.&nbsp; <o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">Instead
of :<o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">EXPRESSION</span>([pixel]
&gt;= -4 AND [pixel] &lt; -3)<span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">
  <o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">You
could have: EXPRESSION &#8220;2&#8221; <o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">Or
  <o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">EXPRESSION
/2/<o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">Matching
a single string should be the fastest expression to
evaluate.<o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);">David.<o:p></o:p></span></p>
  <p class="MsoNormal"><span
 style="font-size: 11pt; font-family: &quot;Calibri&quot;,&quot;sans-serif&quot;; color: rgb(31, 73, 125);"><o:p>&nbsp;</o:p></span></p>
  <div>
  <div
 style="border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0in 0in;">
  <p class="MsoNormal"><b><span
 style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; color: windowtext;">From:</span></b><span
 style="font-size: 10pt; font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;; color: windowtext;">
<a class="moz-txt-link-abbreviated" href="mailto:mapserver-users-bounces@lists.osgeo.org">mapserver-users-bounces@lists.osgeo.org</a>
[<a class="moz-txt-link-freetext" href="mailto:mapserver-users-bounces@lists.osgeo.org">mailto:mapserver-users-bounces@lists.osgeo.org</a>] <b>On Behalf Of </b>Tobias
Wei&szlig;<br>
  <b>Sent:</b> Wednesday, July 28, 2010 8:25 AM<br>
  <b>To:</b> <a class="moz-txt-link-abbreviated" href="mailto:mapserver-users@lists.osgeo.org">mapserver-users@lists.osgeo.org</a><br>
  <b>Subject:</b> Re: [mapserver-users] Raster data performance<o:p></o:p></span></p>
  </div>
  </div>
  <p class="MsoNormal"><o:p>&nbsp;</o:p></p>
  <p class="MsoNormal">Hi Alex,<br>
  <br>
I tried some of the performance tips you mentioned, e.g. converted the
.txt to
a tiled TIFF to optimize performance.&nbsp; I can not see significant
changes
in rendering speed.<br>
  <br>
gdal_translate -co TILED=YES input.txt output.tif<br>
  <br>
The major brake still is the expression stuff. I really wonder what
makes this
task so time-consuming, it should not be more than a simple comparison.<br>
  <br>
Do you have experiences with this issue? Or do I have to live with this
constraint?<br>
  <br>
Best, Tobi<br>
  <br>
===<br>
Am 28.07.10 14:27, schrieb Alexandre Dube: <o:p></o:p></p>
  <p class="MsoNormal">Hi Tobi,<br>
  <br>
&nbsp; The following documentation topics about raster might help :<br>
  <br>
  <a moz-do-not-send="true"
 href="http://mapserver.org/input/raster.html#rasters-and-tile-indexing">http://mapserver.org/input/raster.html#rasters-and-tile-indexing</a><br>
  <a moz-do-not-send="true"
 href="http://mapserver.org/input/raster.html#raster-display-performance-tips">http://mapserver.org/input/raster.html#raster-display-performance-tips</a><br>
  <br>
&nbsp; and about expressions :<br>
  <br>
  <a moz-do-not-send="true"
 href="http://mapserver.org/mapfile/expressions.html">http://mapserver.org/mapfile/expressions.html</a><br>
  <br>
&nbsp; The string comparison type is the fastest, so you could try define
more
classes but using string comparison to see if it gets faster.&nbsp; Also, a
good performance tip is to put your most frequent classes types on top
first.&nbsp; For example, if 80% of your data has "pixel = -3" then
put it on top.<br>
  <br>
Kind regards,<br>
  <br>
Alexandre<br>
  <br>
  <br>
On 10-07-28 04:54 AM, Tobias Wei&szlig; wrote: <o:p></o:p></p>
  <p class="MsoNormal"><span style="font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;;">Hello
list,<br>
  <br>
this is my first email to this list. I am working with MapServer,
OpenLayers
&amp; TileCache for almost 1 year now and the tools are really working
great
together, when everything is configured correctly ;-)<br>
  <br>
At the moment I&acute;m facing a performance problem with raster data that
serves as
input data to render my map tiles. The spatial resolution of this
raster data
is 720 (rows) x 360 (cols) and it is stored in a simple .txt file (The
size of
the file is around 2 MB). I use TileCache to prerender maptiles for
different
zoom levels that are later displayed in a web application using
OpenLayers.<br>
  <br>
I discovered, that the rendering speed of MapServer seems to mainly
depend on
how many different classes I define within my mapfile, meaning how many
expressions MapServer has to evaluate during the rendering process.
Without any
classes MapServer the rendering speed is really fast, the more classes
I use the
slower it gets. With e.g. 10 different classes defining 10 different
styles /
pixel colors the rendering time for one tile can increase up to 60 sec.<br>
  <br>
  <br>
  </span><o:p></o:p></p>
  <pre>CLASS<span class="moz-txt-citetags"><o:p></o:p></span></pre>
  <pre><span class="moz-txt-citetags">&nbsp; </span>EXPRESSION ([pixel] &gt;= -4 AND [pixel] &lt; -3)<span
 class="moz-txt-citetags"><o:p></o:p></span></pre>
  <pre><span class="moz-txt-citetags">&nbsp;&nbsp;&nbsp; </span>STYLE<o:p></o:p></pre>
  <pre>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; COLOR 69 117 180<o:p></o:p></pre>
  <pre>&nbsp;&nbsp; END<o:p></o:p></pre>
  <pre>END<o:p></o:p></pre>
  <pre>&nbsp; <o:p></o:p></pre>
  <p class="MsoNormal"><br>
  <span style="font-family: &quot;Tahoma&quot;,&quot;sans-serif&quot;;">While working with
shape files
I haven&acute;t had this problems and prerendering map tiles was really fast.
With
raster data the rendering time for one map and 5 different zoom levels
can take
up to several hours and almost overburdens my CPU.<br>
  <br>
Can anybody give me a hint how I could improve this?<br>
  <br>
Best, Tobi<br>
  <br>
  </span><o:p></o:p></p>
  <pre><o:p>&nbsp;</o:p></pre>
  <pre>_______________________________________________<o:p></o:p></pre>
  <pre>mapserver-users mailing list<o:p></o:p></pre>
  <pre><a moz-do-not-send="true"
 href="mailto:mapserver-users@lists.osgeo.org">mapserver-users@lists.osgeo.org</a><o:p></o:p></pre>
  <pre><a moz-do-not-send="true"
 href="http://lists.osgeo.org/mailman/listinfo/mapserver-users">http://lists.osgeo.org/mailman/listinfo/mapserver-users</a><o:p></o:p></pre>
  <pre>&nbsp; <o:p></o:p></pre>
  <p class="MsoNormal"><br>
  <br>
  <br>
  <o:p></o:p></p>
  <pre>-- <o:p></o:p></pre>
  <pre>Alexandre Dub&eacute;<o:p></o:p></pre>
  <pre>Mapgears<o:p></o:p></pre>
  <pre><a moz-do-not-send="true" href="http://www.mapgears.com">www.mapgears.com</a><o:p></o:p></pre>
  <pre>&nbsp; <o:p></o:p></pre>
  <pre><o:p>&nbsp;</o:p></pre>
  <pre><o:p>&nbsp;</o:p></pre>
  <pre>_______________________________________________<o:p></o:p></pre>
  <pre>mapserver-users mailing list<o:p></o:p></pre>
  <pre><a moz-do-not-send="true"
 href="mailto:mapserver-users@lists.osgeo.org">mapserver-users@lists.osgeo.org</a><o:p></o:p></pre>
  <pre><a moz-do-not-send="true"
 href="http://lists.osgeo.org/mailman/listinfo/mapserver-users">http://lists.osgeo.org/mailman/listinfo/mapserver-users</a><o:p></o:p></pre>
  <pre>&nbsp; <o:p></o:p></pre>
  </div>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">-- 
Dipl.-Ing. Tobias Wei&szlig;
Potsdam Institute for Climate Impact Research
Pappelallee 20, Room 316
14469 Potsdam
Germany

Phone: +49 / (0)331 / 288-2490
Location: <a class="moz-txt-link-freetext" href="http://bit.ly/1gOr64">http://bit.ly/1gOr64</a></pre>
</body>
</html>