<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Floating Point Data Types</title>
	<atom:link href="http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/</link>
	<description>Daily posts of Excel tips…and other stuff</description>
	<lastBuildDate>Thu, 09 Feb 2012 23:42:03 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Jamie Collins</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19410</link>
		<dc:creator>Jamie Collins</dc:creator>
		<pubDate>Wed, 05 Apr 2006 14:11:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19410</guid>
		<description>&lt;p&gt;I&#039;m a little surprised no one has mentioned VBA&#039;s Decimal data type. In my line of work (modelling business entities) I very rarely encounter data that is genuinely floating-point in nature; in almost every case they are fixed-point decimals. Yet, I see the Double data type being widely used within my business domain, notably in VBA and Access/SQL Server, when the DECIMAL data type is required. Sure, I could spend my time proving that using a Double/FLOAT would produce zero errors based on the known data in the domain but why not just mirror the reality and model fixed-point decimals as fixed-point decimals?&lt;/p&gt;
&lt;p&gt;Jamie.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I&#8217;m a little surprised no one has mentioned VBA&#8217;s Decimal data type. In my line of work (modelling business entities) I very rarely encounter data that is genuinely floating-point in nature; in almost every case they are fixed-point decimals. Yet, I see the Double data type being widely used within my business domain, notably in VBA and Access/SQL Server, when the DECIMAL data type is required. Sure, I could spend my time proving that using a Double/FLOAT would produce zero errors based on the known data in the domain but why not just mirror the reality and model fixed-point decimals as fixed-point decimals?</p>
<p>Jamie.</p>
<p></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Peltier</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19406</link>
		<dc:creator>Jon Peltier</dc:creator>
		<pubDate>Wed, 05 Apr 2006 04:34:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19406</guid>
		<description>&lt;p&gt;Most of my apps are highly user-interactive. Sure, I could save a few zillionths of a second using singles instead of doubles, but then the user scratches his head for ten minutes, and it hardly seems worth it. I just use doubles and longs, and dispense with singles and integers. Less for this old brain to keep up with, and anyway, it&#039;s only VBA.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Most of my apps are highly user-interactive. Sure, I could save a few zillionths of a second using singles instead of doubles, but then the user scratches his head for ten minutes, and it hardly seems worth it. I just use doubles and longs, and dispense with singles and integers. Less for this old brain to keep up with, and anyway, it&#8217;s only VBA.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Keith Johnson</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19397</link>
		<dc:creator>Keith Johnson</dc:creator>
		<pubDate>Tue, 04 Apr 2006 17:57:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19397</guid>
		<description>&lt;p&gt;I think we&#039;re all on the same page.  My results (the more careful ones -- which, by the way, uses the &quot;high resolution timer&quot; Charles Williams used), InsaneExcel&#039;s results, and fzz&#039;s and everyone else&#039;s intuition says that, although singles may be a bit faster than doubles, the performance gain is way to small to chase.&lt;/p&gt;
&lt;p&gt;In addition, floating point arithmetic is noteably faster than read or write to Excel -- which, of course, is not the same as load/store.  I believe there is a small (but statistically significant) performance gain writing doubles instead of singles.  Since writes are so time-consuming, this 2.8% improvement is equivalent to a 15% gain while reading and about a 70% math improvement.  At least until someone proves otherwise, doesn&#039;t this make using doubles almost a no-brainer?&lt;/p&gt;
&lt;p&gt;Regards,&lt;br&gt;
Keith&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>I think we&#8217;re all on the same page.  My results (the more careful ones &#8212; which, by the way, uses the &#8220;high resolution timer&#8221; Charles Williams used), InsaneExcel&#8217;s results, and fzz&#8217;s and everyone else&#8217;s intuition says that, although singles may be a bit faster than doubles, the performance gain is way to small to chase.</p>
<p>In addition, floating point arithmetic is noteably faster than read or write to Excel &#8212; which, of course, is not the same as load/store.  I believe there is a small (but statistically significant) performance gain writing doubles instead of singles.  Since writes are so time-consuming, this 2.8% improvement is equivalent to a 15% gain while reading and about a 70% math improvement.  At least until someone proves otherwise, doesn&#8217;t this make using doubles almost a no-brainer?</p>
<p>Regards,<br />
Keith</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: fzz</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19375</link>
		<dc:creator>fzz</dc:creator>
		<pubDate>Mon, 03 Apr 2006 19:40:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19375</guid>
		<description>&lt;p&gt;Isn&#039;t all floating point math done in the floating point unit of the CPU? [And if not, why the heck not?] If so, there shouldn&#039;t be any difference in calculation speed other than load and store operations. Since 32-bit singles are smaller than 64-bit doubles, it may take less time to load and store them.&lt;/p&gt;
&lt;p&gt;That said, the extra precision doubles provide means most algorithms don&#039;t need to be optimized for prevention of rounding error. Start using nothing but singles, and most VBA programmers would likely introduce difficult to diagnose numeric bugs. Wouldn&#039;t seem to make sense to chase slight performance improvement.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Isn&#8217;t all floating point math done in the floating point unit of the CPU? [And if not, why the heck not?] If so, there shouldn&#8217;t be any difference in calculation speed other than load and store operations. Since 32-bit singles are smaller than 64-bit doubles, it may take less time to load and store them.</p>
<p>That said, the extra precision doubles provide means most algorithms don&#8217;t need to be optimized for prevention of rounding error. Start using nothing but singles, and most VBA programmers would likely introduce difficult to diagnose numeric bugs. Wouldn&#8217;t seem to make sense to chase slight performance improvement.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: XL-Dennis</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19352</link>
		<dc:creator>XL-Dennis</dc:creator>
		<pubDate>Fri, 31 Mar 2006 22:50:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19352</guid>
		<description>&lt;p&gt;Hi all,&lt;/p&gt;
&lt;p&gt;I believe Charles Williams add-in &quot;High Resolution Timers&quot; may be suitable to achieve a better accuracy: &lt;a href=&quot;http://www.decisionmodels.com/downloads.htm&quot; rel=&quot;nofollow&quot;&gt;http://www.decisionmodels.com/downloads.htm&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Kind regards,&lt;br&gt;
Dennis&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi all,</p>
<p>I believe Charles Williams add-in &#8220;High Resolution Timers&#8221; may be suitable to achieve a better accuracy: <a href="http://www.decisionmodels.com/downloads.htm" rel="nofollow">http://www.decisionmodels.com/downloads.htm</a></p>
<p>Kind regards,<br />
Dennis</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Keith Johnson</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19344</link>
		<dc:creator>Keith Johnson</dc:creator>
		<pubDate>Fri, 31 Mar 2006 16:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19344</guid>
		<description>&lt;p&gt;Here&#039;s a bit more of my take on floating point timing.  I keep a workbook and/or code module with the following handy when speed matters.  The subs Option1 and Option2 vary depending on what&#039;s being tested.  The initial loop in sub Test determines a sensible number of iterations to use (set so the test time will be around 0.5 - 5 seconds).  The two timing loops differ only in whether Option1 or Option2 are called.  This is a simple but useful setup.  It&#039;s all I usually employ; because, when timing differentials are not large (25% or more), I&#039;d rather use cleaner code than faster.  (And, yes, I almost always use doubles too.)  &lt;/p&gt;
&lt;p&gt;Private Declare Function GetTicks Lib &quot;kernel32? Alias &quot;QueryPerformanceCounter&quot; (Tick As Currency) As Long&lt;/p&gt;
&lt;p&gt;Private Function PerfTimer() As Double&lt;br&gt;
  Dim Tick As Currency&lt;br&gt;
  Call GetTicks(Tick)&lt;br&gt;
  PerfTimer = Tick / 357.9545@&lt;br&gt;
End Function&lt;/p&gt;
&lt;p&gt;Public Sub Test()&lt;br&gt;
  Dim nIter As Long, n1 As Long, n2 As Long&lt;br&gt;
  Dim x1 As Double, x2 As Double, x As Double&lt;/p&gt;
&lt;p&gt;  For n1 = 0 To 10&lt;br&gt;
    nIter = 10 ^ n1&lt;br&gt;
    x = PerfTimer()&lt;br&gt;
    For n2 = 1 To nIter&lt;br&gt;
      Call Option1&lt;br&gt;
      Call Option2&lt;br&gt;
    Next&lt;br&gt;
    x = PerfTimer() - x&lt;br&gt;
    Debug.Print &quot;nIter = &quot; &amp; Format(nIter, &quot;#,##0?) &amp; &quot; - Time = &quot; &amp; Format(x, &quot;0.000?)&lt;br&gt;
    If (x &gt; 1) Then Exit For&lt;br&gt;
  Next&lt;/p&gt;
&lt;p&gt; &#039;Option1 block&lt;br&gt;
  x1 = PerfTimer()&lt;br&gt;
  For n1 = 1 To nIter&lt;br&gt;
    Call Option1&lt;br&gt;
  Next&lt;br&gt;
  x1 = PerfTimer() - x1&lt;br&gt;
  Debug.Print &quot;Option1 = &quot; &amp; Format(x1, &quot;0.00?) &amp; &quot;, scaled = 100.00?&lt;/p&gt;
&lt;p&gt; &#039;Option2 block&lt;br&gt;
  x2 = PerfTimer()&lt;br&gt;
  For n1 = 1 To nIter&lt;br&gt;
    Call Option2&lt;br&gt;
  Next&lt;br&gt;
  x2 = PerfTimer() - x2&lt;br&gt;
  Debug.Print &quot;Option2 = &quot; &amp; Format(x2, &quot;0.00?) &amp; &quot;, scaled = &quot; &amp; Format(x2 / x1 * 100, &quot;0.00?)&lt;br&gt;
End Sub&lt;/p&gt;
&lt;p&gt;In the floating-point case, however, timing differences are small.  (I&#039;m even partially convinced that ordering seems to matter, whether Option1 is called before Option2 or vice versa.)  So I&#039;ve repeated some of this analysis, a bit more carefully.  Here&#039;s Option1() for TestA -- a &quot;bare loop&quot;:&lt;/p&gt;
&lt;p&gt;Private Sub Option1()&lt;br&gt;
  Dim snTest As Double, rCell As Range&lt;br&gt;
&#039;  snTest = 5&lt;br&gt;
  For Each rCell In ActiveSheet.Range(&quot;Test&quot;).Cells&lt;br&gt;
&#039;    snTest = rCell.Value&lt;br&gt;
&#039;    snTest = snTest * snTest / snTest * snTest / snTest * snTest / snTest * snTest / snTest&lt;br&gt;
&#039;    rCell.Value = snTest&lt;br&gt;
  Next rCell&lt;br&gt;
End Sub&lt;/p&gt;
&lt;p&gt;Option2 is identical, except that snTest is a Single and in Option3 snTest is a Currency.  TestB covers &quot;arithmetic&quot; and activates the lines snTest = 5 and snTest = snTest * snTest /... TestC covers &quot;reads&quot; with only the line snTest = rCell.value active.  And TestD, with snTest = 5 and rCell.Value = snTest active.&lt;/p&gt;
&lt;p&gt;The main sub Test was rewritten to turn off screen updating, reset calculation to manual (although that shouldn&#039;t matter?), and to call the three subroutines in random order.  Based on 100 replications, each using 100 iterations, the results are&lt;/p&gt;
&lt;p&gt;Bare loop &lt;/p&gt;
&lt;p&gt;Doubles0.0342 (.0009) seconds per 100 iterations&lt;br&gt;
Singles0.0333 (.0008) // seems faster by 2.4%, but that&#039;s less than one standard-deviation//&lt;br&gt;
Currency0.0341 (.0010)&lt;/p&gt;
&lt;p&gt;Arithmetic&lt;/p&gt;
&lt;p&gt;Doubles0.0346 (.0009) seconds per 100 iterations&lt;br&gt;
Singles0.0342 (.0008)&lt;br&gt;
Currency0.0456 (.0011) // 32% slower; easily significant //&lt;/p&gt;
&lt;p&gt;Reads&lt;/p&gt;
&lt;p&gt;Doubles0.1392 (.0014) seconds per 100 iterations&lt;br&gt;
Singles0.1383 (.0015)&lt;br&gt;
Currency0.1395 (.0014)&lt;/p&gt;
&lt;p&gt;Writes&lt;/p&gt;
&lt;p&gt;Doubles0.8277 (.0028) seconds per 100 iterations&lt;br&gt;
Singles0.8508 (.0027) // 2.8% slower, significant //&lt;br&gt;
Currency1.0263 (.0070) // 24% slower, easily significant //&lt;/p&gt;
&lt;p&gt;Given this, I can&#039;t see any good reason to deviate from the practice of always using doubles.  The results do suggest, however, that writes are way more important than reads in determining code speed -- even when calculation and screen updating are turned off.  This makes sense, but the magnitude of the difference surprised me.&lt;/p&gt;
&lt;p&gt;This, by the way, is on a 2.53GHz Pentium 4, XP, and Excel 2002.  My experience, of late, is that relative speeds are not so much hardware dependent -- although absolute speeds certainly vary.&lt;/p&gt;
&lt;p&gt;Keith&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Here&#8217;s a bit more of my take on floating point timing.  I keep a workbook and/or code module with the following handy when speed matters.  The subs Option1 and Option2 vary depending on what&#8217;s being tested.  The initial loop in sub Test determines a sensible number of iterations to use (set so the test time will be around 0.5 &#8211; 5 seconds).  The two timing loops differ only in whether Option1 or Option2 are called.  This is a simple but useful setup.  It&#8217;s all I usually employ; because, when timing differentials are not large (25% or more), I&#8217;d rather use cleaner code than faster.  (And, yes, I almost always use doubles too.)  </p>
<p>Private Declare Function GetTicks Lib &#8220;kernel32? Alias &#8220;QueryPerformanceCounter&#8221; (Tick As Currency) As Long</p>
<p>Private Function PerfTimer() As Double<br />
  Dim Tick As Currency<br />
  Call GetTicks(Tick)<br />
  PerfTimer = Tick / 357.9545@<br />
End Function</p>
<p>Public Sub Test()<br />
  Dim nIter As Long, n1 As Long, n2 As Long<br />
  Dim x1 As Double, x2 As Double, x As Double</p>
<p>  For n1 = 0 To 10<br />
    nIter = 10 ^ n1<br />
    x = PerfTimer()<br />
    For n2 = 1 To nIter<br />
      Call Option1<br />
      Call Option2<br />
    Next<br />
    x = PerfTimer() &#8211; x<br />
    Debug.Print &#8220;nIter = &#8221; &amp; Format(nIter, &#8220;#,##0?) &amp; &#8221; &#8211; Time = &#8221; &amp; Format(x, &#8220;0.000?)<br />
    If (x &gt; 1) Then Exit For<br />
  Next</p>
<p> &#8216;Option1 block<br />
  x1 = PerfTimer()<br />
  For n1 = 1 To nIter<br />
    Call Option1<br />
  Next<br />
  x1 = PerfTimer() &#8211; x1<br />
  Debug.Print &#8220;Option1 = &#8221; &amp; Format(x1, &#8220;0.00?) &amp; &#8220;, scaled = 100.00?</p>
<p> &#8216;Option2 block<br />
  x2 = PerfTimer()<br />
  For n1 = 1 To nIter<br />
    Call Option2<br />
  Next<br />
  x2 = PerfTimer() &#8211; x2<br />
  Debug.Print &#8220;Option2 = &#8221; &amp; Format(x2, &#8220;0.00?) &amp; &#8220;, scaled = &#8221; &amp; Format(x2 / x1 * 100, &#8220;0.00?)<br />
End Sub</p>
<p>In the floating-point case, however, timing differences are small.  (I&#8217;m even partially convinced that ordering seems to matter, whether Option1 is called before Option2 or vice versa.)  So I&#8217;ve repeated some of this analysis, a bit more carefully.  Here&#8217;s Option1() for TestA &#8212; a &#8220;bare loop&#8221;:</p>
<p>Private Sub Option1()<br />
  Dim snTest As Double, rCell As Range<br />
&#8216;  snTest = 5<br />
  For Each rCell In ActiveSheet.Range(&#8220;Test&#8221;).Cells<br />
&#8216;    snTest = rCell.Value<br />
&#8216;    snTest = snTest * snTest / snTest * snTest / snTest * snTest / snTest * snTest / snTest<br />
&#8216;    rCell.Value = snTest<br />
  Next rCell<br />
End Sub</p>
<p>Option2 is identical, except that snTest is a Single and in Option3 snTest is a Currency.  TestB covers &#8220;arithmetic&#8221; and activates the lines snTest = 5 and snTest = snTest * snTest /&#8230; TestC covers &#8220;reads&#8221; with only the line snTest = rCell.value active.  And TestD, with snTest = 5 and rCell.Value = snTest active.</p>
<p>The main sub Test was rewritten to turn off screen updating, reset calculation to manual (although that shouldn&#8217;t matter?), and to call the three subroutines in random order.  Based on 100 replications, each using 100 iterations, the results are</p>
<p>Bare loop </p>
<p>Doubles0.0342 (.0009) seconds per 100 iterations<br />
Singles0.0333 (.0008) // seems faster by 2.4%, but that&#8217;s less than one standard-deviation//<br />
Currency0.0341 (.0010)</p>
<p>Arithmetic</p>
<p>Doubles0.0346 (.0009) seconds per 100 iterations<br />
Singles0.0342 (.0008)<br />
Currency0.0456 (.0011) // 32% slower; easily significant //</p>
<p>Reads</p>
<p>Doubles0.1392 (.0014) seconds per 100 iterations<br />
Singles0.1383 (.0015)<br />
Currency0.1395 (.0014)</p>
<p>Writes</p>
<p>Doubles0.8277 (.0028) seconds per 100 iterations<br />
Singles0.8508 (.0027) // 2.8% slower, significant //<br />
Currency1.0263 (.0070) // 24% slower, easily significant //</p>
<p>Given this, I can&#8217;t see any good reason to deviate from the practice of always using doubles.  The results do suggest, however, that writes are way more important than reads in determining code speed &#8212; even when calculation and screen updating are turned off.  This makes sense, but the magnitude of the difference surprised me.</p>
<p>This, by the way, is on a 2.53GHz Pentium 4, XP, and Excel 2002.  My experience, of late, is that relative speeds are not so much hardware dependent &#8212; although absolute speeds certainly vary.</p>
<p>Keith</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jam</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19342</link>
		<dc:creator>Jam</dc:creator>
		<pubDate>Fri, 31 Mar 2006 10:34:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19342</guid>
		<description>&lt;p&gt;Hi all,&lt;/p&gt;
&lt;p&gt;What is your hardware plateform ? Whatever the method you use you should give the hardware platform and mainly the cpu. As you may know AMD vs Intel core cpu may have important differences in calculating (interpreting) long/double.&lt;/p&gt;
&lt;p&gt;Secondly, as Ross said, I would use the API function GetTickCount (which is known as better for time performance) - I don&#039;t know about the API function QueryPerformanceCounter suggested by Keith Johnson.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Hi all,</p>
<p>What is your hardware plateform ? Whatever the method you use you should give the hardware platform and mainly the cpu. As you may know AMD vs Intel core cpu may have important differences in calculating (interpreting) long/double.</p>
<p>Secondly, as Ross said, I would use the API function GetTickCount (which is known as better for time performance) &#8211; I don&#8217;t know about the API function QueryPerformanceCounter suggested by Keith Johnson.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hugh Lerwill</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19333</link>
		<dc:creator>Hugh Lerwill</dc:creator>
		<pubDate>Thu, 30 Mar 2006 20:49:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19333</guid>
		<description>&lt;p&gt;re. the Timer function, I seem to remember it has a resolution of 18.2 ticks per second (0.055)&lt;/p&gt;
&lt;p&gt;When used to time code which executes quickly it is best to repeat the test procedure (e.g. 100 times, 1000 times etc.) until 0.055 seconds is insignificant in the result.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>re. the Timer function, I seem to remember it has a resolution of 18.2 ticks per second (0.055)</p>
<p>When used to time code which executes quickly it is best to repeat the test procedure (e.g. 100 times, 1000 times etc.) until 0.055 seconds is insignificant in the result.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Peltier</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19325</link>
		<dc:creator>Jon Peltier</dc:creator>
		<pubDate>Thu, 30 Mar 2006 13:35:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19325</guid>
		<description>&lt;p&gt;1. What&#039;s in column 1?&lt;br&gt;
2. Notice the repeating values? How many times does 0.171020... appear? There is some kind of rounding thing going on, otherwise you&#039;d expect the values to only center around such a value. Generally a timing routine will repeat an action 100 or 1000 times, then divide by the number of repetitions.&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>1. What&#8217;s in column 1?<br />
2. Notice the repeating values? How many times does 0.171020&#8230; appear? There is some kind of rounding thing going on, otherwise you&#8217;d expect the values to only center around such a value. Generally a timing routine will repeat an action 100 or 1000 times, then divide by the number of repetitions.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex J</title>
		<link>http://www.dailydoseofexcel.com/archives/2006/03/29/floating-point-data-types/#comment-19314</link>
		<dc:creator>Alex J</dc:creator>
		<pubDate>Thu, 30 Mar 2006 02:45:00 +0000</pubDate>
		<guid isPermaLink="false">http://www.dailydoseofexcel.com/?p=1382#comment-19314</guid>
		<description>&lt;p&gt;Can&#039;t comment on speed testing, but InsaneExcel has some interesting stuff!&lt;/p&gt;
</description>
		<content:encoded><![CDATA[<p>Can&#8217;t comment on speed testing, but InsaneExcel has some interesting stuff!</p>
]]></content:encoded>
	</item>
</channel>
</rss>

