<?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: Data types</title>
	<atom:link href="http://www.eembc.org/wordpress/?feed=rss2&#038;p=94" rel="self" type="application/rss+xml" />
	<link>http://www.eembc.org/wordpress/?p=94</link>
	<description>This Blog focuses on EEMBC &#38; CoreMark</description>
	<lastBuildDate>Tue, 03 Aug 2010 15:43:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Paul Kimelman</title>
		<link>http://www.eembc.org/wordpress/?p=94&#038;cpage=1#comment-153</link>
		<dc:creator>Paul Kimelman</dc:creator>
		<pubDate>Mon, 08 Mar 2010 23:11:47 +0000</pubDate>
		<guid isPermaLink="false">http://www.coremark.org/wordpress/?p=94#comment-153</guid>
		<description>The reverse is true. 32-bit processors do best with all int/unsigned local variables (globals and statics do not matter much). If you use char or short locals, you impact performance because they have to sign-extend or unsign-extend over and over.</description>
		<content:encoded><![CDATA[<p>The reverse is true. 32-bit processors do best with all int/unsigned local variables (globals and statics do not matter much). If you use char or short locals, you impact performance because they have to sign-extend or unsign-extend over and over.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Denis Cabrol</title>
		<link>http://www.eembc.org/wordpress/?p=94&#038;cpage=1#comment-132</link>
		<dc:creator>Denis Cabrol</dc:creator>
		<pubDate>Wed, 17 Feb 2010 16:15:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.coremark.org/wordpress/?p=94#comment-132</guid>
		<description>Bruno is absolutely correct. 
1- The bench is heavily weighted towards 32-bit processing. We measured that 65% of the instructions generated by the compilation of the Coremark bench were of the Long type (32-bit). ALL processing instructions (ADD, SUB, MULT) in the bench work on 32-bit data.

2- They are thousands of applications where you will never instantiate 32-bit data. Think about:
- remote controls
- most appliances
- electronic light dimmers
- Thermostats
- seat positioning, window lift and mirror control in automotive.

The Coremark bench, by implicitly assuming that processing is always performed on 32-bit data (and not being very upfront about it), favors 32-bit architectures over 8- and 16-bit ones.

My recommendations are:
- be more upfront about what Coremark actually benches
- provide versions for 32-bit (which we have) and 8/16-bit

In any case this is already much better than the old Drystone bench.
Denis</description>
		<content:encoded><![CDATA[<p>Bruno is absolutely correct.<br />
1- The bench is heavily weighted towards 32-bit processing. We measured that 65% of the instructions generated by the compilation of the Coremark bench were of the Long type (32-bit). ALL processing instructions (ADD, SUB, MULT) in the bench work on 32-bit data.</p>
<p>2- They are thousands of applications where you will never instantiate 32-bit data. Think about:<br />
- remote controls<br />
- most appliances<br />
- electronic light dimmers<br />
- Thermostats<br />
- seat positioning, window lift and mirror control in automotive.</p>
<p>The Coremark bench, by implicitly assuming that processing is always performed on 32-bit data (and not being very upfront about it), favors 32-bit architectures over 8- and 16-bit ones.</p>
<p>My recommendations are:<br />
- be more upfront about what Coremark actually benches<br />
- provide versions for 32-bit (which we have) and 8/16-bit</p>
<p>In any case this is already much better than the old Drystone bench.<br />
Denis</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bruno Richard</title>
		<link>http://www.eembc.org/wordpress/?p=94&#038;cpage=1#comment-130</link>
		<dc:creator>Bruno Richard</dc:creator>
		<pubDate>Wed, 17 Feb 2010 07:52:17 +0000</pubDate>
		<guid isPermaLink="false">http://www.coremark.org/wordpress/?p=94#comment-130</guid>
		<description>Hi Shay,

I think Coremark is a good effort toward &quot;modern&quot; benchmarking.
However, concerning data types, it suffers from a great problem: The arithmetic used to measure the &quot;performance&quot; of a compiler/target is 32-bit! This means that performance (speed) figures obtained on 8 or 16-bit processors are meaningless: Adding 2 32-bit objetcts is one instruction on a 32-bit processor, but can be a dozen on a 8-bitter.

I know, the benchmark tries to mimick some real-world applications, which require 32-bit arithmetics. However, lots of real-world applications do NOT require 32 and can live well with 16-bits arithmetic (think about all-software MP3 players).

When using the CoreMark results, engineers may get fooled by results and pick a 32-bit processor where an 8-bit would have been enough.

My proposal would be:
- Rewrite (just a little bit) the Coremark benchmark so that it has a meaningful 16-bit version.
- Separate the results of 8/16-bit processors from the 32-bit ones on the results page, so the figures are more meaningful.

Thanks for your excellent work anyway,
Bruno</description>
		<content:encoded><![CDATA[<p>Hi Shay,</p>
<p>I think Coremark is a good effort toward &#8220;modern&#8221; benchmarking.<br />
However, concerning data types, it suffers from a great problem: The arithmetic used to measure the &#8220;performance&#8221; of a compiler/target is 32-bit! This means that performance (speed) figures obtained on 8 or 16-bit processors are meaningless: Adding 2 32-bit objetcts is one instruction on a 32-bit processor, but can be a dozen on a 8-bitter.</p>
<p>I know, the benchmark tries to mimick some real-world applications, which require 32-bit arithmetics. However, lots of real-world applications do NOT require 32 and can live well with 16-bits arithmetic (think about all-software MP3 players).</p>
<p>When using the CoreMark results, engineers may get fooled by results and pick a 32-bit processor where an 8-bit would have been enough.</p>
<p>My proposal would be:<br />
- Rewrite (just a little bit) the Coremark benchmark so that it has a meaningful 16-bit version.<br />
- Separate the results of 8/16-bit processors from the 32-bit ones on the results page, so the figures are more meaningful.</p>
<p>Thanks for your excellent work anyway,<br />
Bruno</p>
]]></content:encoded>
	</item>
</channel>
</rss>
