Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Discussion of anything and everything relating to chess playing software and machines.

Moderator: Ras

User avatar
Jim Ablett
Posts: 2341
Joined: Fri Jul 14, 2006 7:56 am
Location: London, England
Full name: Jim Ablett

Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Jim Ablett »

Image
Scorpio 1.91

Special Intel compiler 10 PGO/OpenMP build for:

Intel(R) Core(TM)2 Duo processors, Intel(R) Core(TM)2 Quad
processors, and Intel(R) Xeon(R) processors with SSSE3 only

http://www.mydatabus.com/public/deckard ... ore_ja.zip

Jim.
Sedat Canbaz
Posts: 3018
Joined: Thu Mar 09, 2006 11:58 am
Location: Antalya/Turkey

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Sedat Canbaz »

Hello Jim,

Thank you very much for your efforts :)

I hope this version of Scorpio will not loose on time when using 4 threads

Best,
Sedat
User avatar
Jim Ablett
Posts: 2341
Joined: Fri Jul 14, 2006 7:56 am
Location: London, England
Full name: Jim Ablett

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Jim Ablett »

Hi Sedat,
Thank you very much for your efforts
Thank-you. I just wanted to try out my new compiler :)

I had you very much in mind when I compiled it.

I'm unable to test with 4 threads, so fingers crossed,
it works ok for you.

All the best,
Jim.
User avatar
Denis P. Mendoza
Posts: 415
Joined: Fri Dec 15, 2006 9:46 pm
Location: Philippines

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Denis P. Mendoza »

Hello Jim,

I have heard and learned a lot on your advices from the 9.x ICC compilers. Is there a difference on the switches used as for this version 10 ICC? I haven't installed yet the new version 10 since I'm still using my old pc and accustomed with the v9.1, so I just want to know if Auto-paralleization switches (-Qparallel) is much preferred than OpenMP switches (-openmp) for this one. Could you give us a simple comparison between the switches used in compiling mp versions using the old 9.x ICC versus the new version 10? Sorry Jim for asking, since compiling "MP" versions still leaves some gray areas in my study and experience. Thanks.

Denis
User avatar
Jim Ablett
Posts: 2341
Joined: Fri Jul 14, 2006 7:56 am
Location: London, England
Full name: Jim Ablett

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Jim Ablett »

Hi Denis,
is there a difference on the switches used as for this version 10 ICC?
No. At least I haven't come across any yet.
I just want to know if Auto-paralleization switches (-Qparallel) is much preferred than OpenMP switches (-openmp) for this one.
I'm sure Aart Blik (Bikjump & Intel compiler developer) will correct me if I'm wrong, but this is my definition of the differences between the two.

Qparallel switch tells the parallelizer to generate multi-threaded code for
loops that can be executed in parallel, but this does not take advantage of multi-processors (mp).

QopenMp switch tells the parallelizer to generate multi-threaded code for
loops (based on OpenMP directives) that can be executed in parallel and does take advantage of multi-processors (mp) if available.

Jim.
User avatar
abik
Posts: 823
Joined: Fri Dec 01, 2006 10:46 pm
Location: Mountain View, CA, USA
Full name: Aart Bik

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by abik »

Hi Jim, Denis,

I recently moved from Intel to Google to explore some new challenges in life, but since I worked very hard on the Intel compiler v10.0 release, I feel I still deserve to step in. Note that Qparallel enables automatic parallelization (exploiting implicit parallelism, i.e., parallelism extracted by the compiler from sequential code) whereas Qopenmp enables parallelization defined by OpenMP directives (exploiting explicit parallelism, i.e., parallelism defined by the programmer with directives). One can even combine the two switches to exploit explicit parallelism where OpenMP directives appear and implicit parallelism in sequential loops that the programmer "forgot" to annotate. But eventually, for both forms of parallelization, more or less the same multi-threaded code is generated that will exploit whatever multiple cores are available (based on a shared memory multiprocessor programming model).

Typically, since effective automatic parallelization is a very hard problem for compilers, expert programmers can obtain much better results with the explicit parallel approach, where directives guide the compiler to parallel code. Perhaps that is why you were advised that the OpenMP switch works better? Also note that the Intel compiler performs automatic vectorization (my favorite), where SIMD-style parallelism is extracted automatically from sequential code (compilers are much better at extracting this form of implicit parallelism). This latter optimization by itself will not exploit multiple cores, only parallelism within a core. Perhaps the advice was alluding to this?

Hope this helps,
Aart
User avatar
Denis P. Mendoza
Posts: 415
Joined: Fri Dec 15, 2006 9:46 pm
Location: Philippines

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Denis P. Mendoza »

Jim and Abik,

Thanks for the infos. I'll try experimenting some MP switches when I install my new compilers on my other pc. I haven't had time to read the long manual yet, except for the summarized optimization techniques for ICC from external sources. It's very difficult to gather data from "MP benchmarks" between C/C++ compilers, but I assume that the single-cpu compiler switches (from each compiler) is just enough for comparison.

BTW, is it possible to install both the old ICC v9.x and v10.x on separate folders, without having problems?

Denis
User avatar
Jim Ablett
Posts: 2341
Joined: Fri Jul 14, 2006 7:56 am
Location: London, England
Full name: Jim Ablett

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Jim Ablett »

BTW, is it possible to install both the old ICC v9.x and v10.x on separate folders, without having problems?
Yes, that's my setup right now.
Installation simply adds another folder >

Code: Select all

Program Files\Intel\Compiler\C++\9.1
Program Files\Intel\Compiler\C++\10.0.025
Jim.
User avatar
Denis P. Mendoza
Posts: 415
Joined: Fri Dec 15, 2006 9:46 pm
Location: Philippines

Re: Special Scorpio 1.91 build for Core2Duo/Quad/Xeon

Post by Denis P. Mendoza »

Jim Ablett wrote:
BTW, is it possible to install both the old ICC v9.x and v10.x on separate folders, without having problems?
Yes, that's my setup right now.
Installation simply adds another folder >

Code: Select all

Program Files\Intel\Compiler\C++\9.1
Program Files\Intel\Compiler\C++\10.0.025
Jim.
Great news! Thanks teacher!