Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - Performance versus compiler version: (8 Items)
   
Performance versus compiler version  
As anyone done a comparison of kernel's performance when compile with Watcom/2.95.3/3.3.5/4.2.1 ?


RE: Performance versus compiler version  
 

> -----Original Message-----
> From: Mario Charest [mailto:mcharest@zinformatic.com] 
> Sent: September 21, 2007 11:55 AM
> To: ostech-core_os
> Subject: Performance versus compiler version
> 
> 
> As anyone done a comparison of kernel's performance when 
> compile with Watcom/2.95.3/3.3.5/4.2.1 ?

We have some numbers internally.  I can see what we can do 
about getting them up on the Wiki.  It is more a matter of
format conversion than anything else.

Short story seems to be:
* Watcom rules size/speed/codegen for x86 over 2.*, 3.* series
* Starting with GCC 4.* we'll likely switch production builds

Thomas
Re: Performance versus compiler version  
I actually did a rather large and comprehensive comparison a few months ago, including the difference between 
optimization levels.

If it's ok to post the full results here, then I will.  I'm the only one with the original spreadsheet, because I posted
 it as HTML before.  I can tweak as necessary.


For x86, the watcom compiler performs much better for size and speed than 2.x or 3.x with any optimization level.  4.x 
consistently outperforms 2.x and 3.x for speed by 2 or 3 percent.  With the -Os option, it actually produces smaller 
code than the watcom compiler. 

There was negligible difference between 2.x and 3.x for all architectures, but 4.x consistency outperformed - usually 1 
to 3 percent speed wise, and 8 percent or so for size. (-O2 and -Os only)

Interestingly, -O2 flag often had better speed performance than -O3 using gcc 4.2.  The theory is that using -O3 
generates huge binaries, and the pipeline suffers. 


We'll see what we can do about posting the big chart of the results if people are interested.
Re: Performance versus compiler version  
Sada Murugan wrote:
> I actually did a rather large and comprehensive comparison  
> 
> If it's ok to post the full results here, then I will.  

I think it would make a good wiki page. So...

I've created a small section for "performace measurements and benchmarks" on the tech page and created this page for 
compiler measurments:

http://community.qnx.com/sf/wiki/do/viewPage/projects.core_os/wiki/Compiler_performance_measurements?_message=
1190397861940

If you want to upload your spreadsheet, I suggest putting it in the documents section and then link it from the above
wikipage.

-ad

Re: Performance versus compiler version  
Wow...4 usec message pass with a fair amount of data...that's pretty cool.

Kevin
Re: Performance versus compiler version  
> 
> For x86, the watcom compiler performs much better for size and speed than 2.x 
> or 3.x with any optimization level.  4.x consistently outperforms 2.x and 3.x 
> for speed by 2 or 3 percent.  With the -Os option, it actually produces 
> smaller code than the watcom compiler. 
> 
> There was negligible difference between 2.x and 3.x for all architectures, but
>  4.x consistency outperformed - usually 1 to 3 percent speed wise, and 8 
> percent or so for size. (-O2 and -Os only)
> 
> Interestingly, -O2 flag often had better speed performance than -O3 using gcc 
> 4.2.  The theory is that using -O3 generates huge binaries, and the pipeline 
> suffers. 
> 

And how about the intel compiler?
Re: Performance versus compiler version  
I haven't actually tried it with the Intel compiler yet.  Since it's just for x86, more tests wouldn't take long.

If someone lets me know where to get it, I can see what can be done.
Re: Performance versus compiler version  
> I haven't actually tried it with the Intel compiler yet.  Since it's just for 
> x86, more tests wouldn't take long.
> 
> If someone lets me know where to get it, I can see what can be done.


Any progress?