Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
7956 Discussions

Compiler perfomance in Linux vs Windows

chera64
Beginner
505 Views
Hi,

I want to start my new project with ICC, I can work in windows and Linux.
Is there is any difrence between speed and perfomnace of compiled program in windows or linux?

Thansks,
0 Kudos
6 Replies
TimP
Honored Contributor III
505 Views
Generally speaking, there is no large difference in performance of the same program compiled for similar levels of Windows or linux OS. We expect a Windows version to give 95% of the performance of an equivalent linux version. Perhaps the first exception which might be mentioned is that Windows versions prior to Windows 7 don't schedule as efficiently as any recent linux when run on HyperThread or multi-CPU platforms.
0 Kudos
chera64
Beginner
505 Views
Quoting - tim18
Generally speaking, there is no large difference in performance of the same program compiled for similar levels of Windows or linux OS. We expect a Windows version to give 95% of the performance of an equivalent linux version. Perhaps the first exception which might be mentioned is that Windows versions prior to Windows 7 don't schedule as efficiently as any recent linux when run on HyperThread or multi-CPU platforms.


thanks,

1- is there any exception, if i want to use parallel processing wildly?
2-Is windows server 2008 schedules efficient as recent linux? or it should be 2008 R2?
0 Kudos
TimP
Honored Contributor III
505 Views
Quoting - chera64


thanks,

1- is there any exception, if i want to use parallel processing wildly?
2-Is windows server 2008 schedules efficient as recent linux? or it should be 2008 R2?
Windows has both advantages and disadvantages for parallel processing. Intel Parallel Studio is available only for Windows; it is meant to facilitate parallelization for C and C++.
Linux has more alternative tools for parallel debugging and thread affinity, not limited to those from Intel or Microsoft and a few others, with more public support.
A majority of the Intel software tools are designed to operate consistently in either linux or Windows versions.
Windows 2008 R2 is recommended for efficient multi-processing scheduler. We demonstrated it successfully on the 32-core platform, both with HyperThreading (64 logical processors) and without.
0 Kudos
chera64
Beginner
505 Views
Quoting - tim18
Quoting - chera64


thanks,

1- is there any exception, if i want to use parallel processing wildly?
2-Is windows server 2008 schedules efficient as recent linux? or it should be 2008 R2?
Windows has both advantages and disadvantages for parallel processing. Intel Parallel Studio is available only for Windows; it is meant to facilitate parallelization for C and C++.
Linux has more alternative tools for parallel debugging and thread affinity, not limited to those from Intel or Microsoft and a few others, with more public support.
A majority of the Intel software tools are designed to operate consistently in either linux or Windows versions.
Windows 2008 R2 is recommended for efficient multi-processing scheduler. We demonstrated it successfully on the 32-core platform, both with HyperThreading (64 logical processors) and without.


So, I searched for Intel parallel studio,
Is Intel parallel studio useful for a shared memory systems and I can not use it in distributed system?


0 Kudos
TimP
Honored Contributor III
505 Views
Quoting - chera64


So, I searched for Intel parallel studio,
Is Intel parallel studio useful for a shared memory systems and I can not use it in distributed system?


That's right, parallel studio uses OpenMP and IPP. It's an aid to adding OpenMP parallelization, within the framework of the Intel C++ compiler. The Professional Compiler has all the OpenMP IPP and TBB features, but not the added features for investigating how to add parallelism. More detailed questions should be asked on Parallel Studio forum.

For cluster systems, Intel MPI library works consistently in Windows and linux versions. In principle, you could use it with Parallel Studio, except that MPI applications often require Fortran.
There's also a Cluster OpenMP (cluster extension of OpenMP) feature for the standard Intel compilers, supported on WhatIf forum. It trades the scalability of MPI for simplicity and similarity to OpenMP.
0 Kudos
joelkatz
Novice
505 Views
Quoting - chera64
Hi,

I want to start my new project with ICC, I can work in windows and Linux.
Is there is any difrence between speed and perfomnace of compiled program in windows or linux?

Thansks,

It's not that difficult to keep your code portable. I suggest you do that, for several reasons. One is that you can actually compare the performance on Linux and Windows. If, for some reason, the performance on one platform is way off from the performance of the other, you'll know something odd is going on (and it will be easier to compare performance analysis to see where it diverges). You'll be able to use debugging and analyzing tools on both platforms as well.
0 Kudos
Reply