<?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: Measuring performance</title>
	<atom:link href="http://robarnold.org/measuring-performance/feed/" rel="self" type="application/rss+xml" />
	<link>http://robarnold.org/measuring-performance/</link>
	<description>witty tagline</description>
	<lastBuildDate>Tue, 07 Sep 2010 15:18:56 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Rob Arnold</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-6701</link>
		<dc:creator>Rob Arnold</dc:creator>
		<pubDate>Thu, 14 Jan 2010 02:47:37 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-6701</guid>
		<description>That methods looks neat, but I&#039;m not sure how well it would work in a virtualized or headless environment. Also it&#039;s not clear what API requirements they have for using it - I&#039;m not sure if you can get the vsync notifications on Vista with the DWM enabled.</description>
		<content:encoded><![CDATA[<p>That methods looks neat, but I&#8217;m not sure how well it would work in a virtualized or headless environment. Also it&#8217;s not clear what API requirements they have for using it &#8211; I&#8217;m not sure if you can get the vsync notifications on Vista with the DWM enabled.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-3807</link>
		<dc:creator>James</dc:creator>
		<pubDate>Wed, 04 Nov 2009 22:54:12 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-3807</guid>
		<description>You may be interested in the methods used by the PsychToolbox development team for highly accurate time durations. They cross reference beam positions with the system time stamp. Here&#039;s a doc discussion on the method:

http://docs.psychtoolbox.org/BeampositionQueries

They claim accuracies in the 100 microsecond range and lower on OSX and Windows.</description>
		<content:encoded><![CDATA[<p>You may be interested in the methods used by the PsychToolbox development team for highly accurate time durations. They cross reference beam positions with the system time stamp. Here&#8217;s a doc discussion on the method:</p>
<p><a href="http://docs.psychtoolbox.org/BeampositionQueries" rel="nofollow">http://docs.psychtoolbox.org/BeampositionQueries</a></p>
<p>They claim accuracies in the 100 microsecond range and lower on OSX and Windows.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Кофеваркин Волк</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-537</link>
		<dc:creator>Кофеваркин Волк</dc:creator>
		<pubDate>Wed, 20 May 2009 09:12:21 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-537</guid>
		<description>Хороший пост по этой теме нечасто встретишь, немногие хотят копать так глубоко, мне понравилось ваше мнение</description>
		<content:encoded><![CDATA[<p>Хороший пост по этой теме нечасто встретишь, немногие хотят копать так глубоко, мне понравилось ваше мнение</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Пуфиков Антоныч</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-534</link>
		<dc:creator>Пуфиков Антоныч</dc:creator>
		<pubDate>Tue, 19 May 2009 15:30:21 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-534</guid>
		<description>Спасибо за грамотное изложение темы, я бы добавил от себя немного, но я не глубокий спец в этой тематике =(</description>
		<content:encoded><![CDATA[<p>Спасибо за грамотное изложение темы, я бы добавил от себя немного, но я не глубокий спец в этой тематике =(</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob Arnold</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-106</link>
		<dc:creator>Rob Arnold</dc:creator>
		<pubDate>Mon, 22 Dec 2008 19:06:20 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-106</guid>
		<description>Well the Unix time format doesn&#039;t account for leap seconds which is the format returned by time and gettimeofday (in its timeval struct). I&#039;m not sure how the functions that convert from a time_t to a struct tm* handle leap seconds. If you look at Wikipedia&#039;s article on Unix time, they have a nice table where they show that the leap second does not have a unique value in unix time. For performance measurements, it&#039;s much more convenient to use unix time since subtraction on full dates is non-trivial. So perhaps the struct tm* returning functions are correct which is what your clock would use, but you will get duplicate time_t values from time and gettimeofday which is what Date.now() uses.

QueryPerformanceCounter can give you microseconds (and maybe even nanoseconds), but Date.now() calls PRMJ_Now which returns and then does an integer divide by 1000 to get milliseconds. I&#039;m not sure how accurate those numbers would be though since there are a lot of factors that can affect performance at that level</description>
		<content:encoded><![CDATA[<p>Well the Unix time format doesn&#8217;t account for leap seconds which is the format returned by time and gettimeofday (in its timeval struct). I&#8217;m not sure how the functions that convert from a time_t to a struct tm* handle leap seconds. If you look at Wikipedia&#8217;s article on Unix time, they have a nice table where they show that the leap second does not have a unique value in unix time. For performance measurements, it&#8217;s much more convenient to use unix time since subtraction on full dates is non-trivial. So perhaps the struct tm* returning functions are correct which is what your clock would use, but you will get duplicate time_t values from time and gettimeofday which is what Date.now() uses.</p>
<p>QueryPerformanceCounter can give you microseconds (and maybe even nanoseconds), but Date.now() calls PRMJ_Now which returns and then does an integer divide by 1000 to get milliseconds. I&#8217;m not sure how accurate those numbers would be though since there are a lot of factors that can affect performance at that level</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rob Arnold</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-105</link>
		<dc:creator>Rob Arnold</dc:creator>
		<pubDate>Mon, 22 Dec 2008 17:06:35 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-105</guid>
		<description>I haven&#039;t checked what gettimeofday does on the POSIX subsystem, but I&#039;d imagine that it suffers from the same problem as GetSystemTimeAsFileTime. Ditto for Visual Studio&#039;s CRT.</description>
		<content:encoded><![CDATA[<p>I haven&#8217;t checked what gettimeofday does on the POSIX subsystem, but I&#8217;d imagine that it suffers from the same problem as GetSystemTimeAsFileTime. Ditto for Visual Studio&#8217;s CRT.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mook</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-104</link>
		<dc:creator>Mook</dc:creator>
		<pubDate>Mon, 22 Dec 2008 16:48:38 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-104</guid>
		<description>For things like Talos (where the goal is to run quickly, in a browser-specific fashion), is there any reason to not expose possibly better APIs via an extra component and just fork the tests?  Yes, this might affect the results some, but I don&#039;t think it would be significant, especially if all runs were made with the same?</description>
		<content:encoded><![CDATA[<p>For things like Talos (where the goal is to run quickly, in a browser-specific fashion), is there any reason to not expose possibly better APIs via an extra component and just fork the tests?  Yes, this might affect the results some, but I don&#8217;t think it would be significant, especially if all runs were made with the same?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Kaiser</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-103</link>
		<dc:creator>Robert Kaiser</dc:creator>
		<pubDate>Mon, 22 Dec 2008 13:17:36 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-103</guid>
		<description>I read some interesting discussion on high-resolution time measurement for Linux performance tests back when &quot;dynamic tick&quot; support on Linux was quite new, as suddenly people couldn&#039;t just take the number of ticks as a consistent time measurement any more ;-)
Unfortunately, as far as I remember, they also had no really good solution there, though I still wonder if we could tap into what the POSIX time command does, as that one nicely can separate real and user/system time somehow, which reduces the influence of other processes running on the machine.
Not sure though if Windows provides something like that.</description>
		<content:encoded><![CDATA[<p>I read some interesting discussion on high-resolution time measurement for Linux performance tests back when &#8220;dynamic tick&#8221; support on Linux was quite new, as suddenly people couldn&#8217;t just take the number of ticks as a consistent time measurement any more <img src='http://robarnold.org/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /><br />
Unfortunately, as far as I remember, they also had no really good solution there, though I still wonder if we could tap into what the POSIX time command does, as that one nicely can separate real and user/system time somehow, which reduces the influence of other processes running on the machine.<br />
Not sure though if Windows provides something like that.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Anonymous</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-102</link>
		<dc:creator>Anonymous</dc:creator>
		<pubDate>Mon, 22 Dec 2008 09:57:20 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-102</guid>
		<description>Linux does support leap seconds.  When a leap second occurs, a given minute will have seconds ranging from 0-60 instead of 0-59.

Also, Linux doesn&#039;t just support millisecond accuracy via gettimeofday; gettimeofday returns time in microseconds.  Furthermore, if you need better resolution than that you can use clock_gettime, which returns time in nanoseconds.  Both of those exist in POSIX, though not all systems have the latter.  Linux actually keeps time as accurately as the clock sources you have available, all the way down to the nanosecond if possible.  With the Linux -rt patches for real-time, you can readily attain response times measured in small numbers of microseconds.</description>
		<content:encoded><![CDATA[<p>Linux does support leap seconds.  When a leap second occurs, a given minute will have seconds ranging from 0-60 instead of 0-59.</p>
<p>Also, Linux doesn&#8217;t just support millisecond accuracy via gettimeofday; gettimeofday returns time in microseconds.  Furthermore, if you need better resolution than that you can use clock_gettime, which returns time in nanoseconds.  Both of those exist in POSIX, though not all systems have the latter.  Linux actually keeps time as accurately as the clock sources you have available, all the way down to the nanosecond if possible.  With the Linux -rt patches for real-time, you can readily attain response times measured in small numbers of microseconds.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Justin Dolske</title>
		<link>http://robarnold.org/measuring-performance/comment-page-1/#comment-101</link>
		<dc:creator>Justin Dolske</dc:creator>
		<pubDate>Mon, 22 Dec 2008 06:29:37 +0000</pubDate>
		<guid isPermaLink="false">http://robarnold.org/?p=33#comment-101</guid>
		<description>So, in conclusion, Windows doesn&#039;t know what time it is, but Linux and OS X do? :-)

Out of curiosity, doesn&#039;t Windows have a POSIX compatibility thing? Does its gettimeofday() also suffer from granularity problems, or is it just full of fail?</description>
		<content:encoded><![CDATA[<p>So, in conclusion, Windows doesn&#8217;t know what time it is, but Linux and OS X do? <img src='http://robarnold.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Out of curiosity, doesn&#8217;t Windows have a POSIX compatibility thing? Does its gettimeofday() also suffer from granularity problems, or is it just full of fail?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

