Author Topic: modifying Jamconfig to use intels linux compiler  (Read 1617 times)

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
modifying Jamconfig to use intels linux compiler
« on: January 31, 2006, 07:40:43 pm »
Well the subject says it all - are there any modifications I can make to the Jamconfig files to try compiling PS and CS with the free Intel Linux compiler?

acraig

  • Administrator
  • Veteran
  • *
  • Posts: 1562
    • View Profile
(No subject)
« Reply #1 on: January 31, 2006, 07:54:06 pm »
Probably,  look at the Jamconfig file ( I think it is ).  That tells what compiler to use ( gcc/g++ ).  Try changing stuff in there.
----------
Andrew
"For all I know, she's lying, everyone's lying; welcome to the Internet"

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #2 on: February 01, 2006, 12:05:43 am »
Might be best to add a check in the configure stuff to use the intel compiler if available... if it isn\'t automatically used anyway.

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #3 on: February 01, 2006, 07:44:18 pm »
I installed the intel compiler but I did not make it the default compiler.  CC still equals gcc 4.0 as usual.  I will reread through the jamconfig files and see what I can get.

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #4 on: February 01, 2006, 07:57:37 pm »
Yes, just ./configure and change these lines in your Jamconfig file:

CMD.CC ?= \"gcc\" ;
CMD.C++ ?= \"g++\" ;

Let us know how it works. I may take a look at the intel compiler myself, and see if I can add a check and configure flag for it. If it works well that is. :)

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #5 on: February 02, 2006, 01:55:38 pm »
According to benchmarks intels free linux compiler produces approximately 30% more optimized code, and has support for compatibility with GNU compiler flags, linking, etc.. It also isn\'t perfect, though with a few minor patches you can compile your kernel with it, so its not bad.   According to blogs, it apparantly will compile about 90% of free software, such as GIMP, BLENDER, the Linux Kernel, Firefox, etc.. it had some problems with a few libraries that i had never heard of though.  I wanted to see if eventually I could get a full build of planeshift and its supporting programs, CS, CEL, and CAL3D, then do the same with the gnu compiler, and then benchmark them against each other.

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #6 on: February 02, 2006, 02:13:59 pm »
But the Intel compiler is probably no good for binary distribution unfortunatly, due to the fact that they deliberatly degrade performance on AMD machines. But yes, for Intel processors it\'s the best compiler in existance. Will look forward to you getting benchmark results vs gcc. :)

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #7 on: February 03, 2006, 07:26:00 pm »
According to some blogs it doesn\'t appear to degrade performance on AMD systems, it simply doesn\'t have optimization options for the AMD chips.

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #8 on: February 03, 2006, 07:42:30 pm »
Quote
Originally posted by Induane
According to some blogs it doesn\'t appear to degrade performance on AMD systems, it simply doesn\'t have optimization options for the AMD chips.


That counts as degrading, seeing as those optimizations do work on AMD chips.

Of course, if performance is still better than gcc... there\'s no problem. :)
« Last Edit: February 03, 2006, 07:43:26 pm by Xordan »

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #9 on: February 07, 2006, 11:35:32 pm »
well when creating a binary for widespread use how many optomization options are you going to use anyways? You can\'t use P4 specific or AMD only, as that won\'t work on every system..

Anywyas modifying jamconfig is giving me gcc version errors... so it still thinks its using gcc for some reason.  Is there a way to tell configure.in to look for icc and i++ instead of gcc and g++ ?
That way it will perhaps make a functional jamconfig file that would use intels compiler?

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #10 on: February 09, 2006, 11:54:23 pm »
hmm, you\'d want to edit configure.ac... to add a check for icc. I\'ll take a quick look at it.

Edit: What are your \"$CC\" and \"$CXX\" vars?
« Last Edit: February 09, 2006, 11:57:10 pm by Xordan »

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #11 on: February 23, 2006, 06:30:36 am »
Quote
brant@CoV:/mnt/data/Games/PlaneShift_CVS/planeshift$ cc --version
cc (GCC) 4.0.2 20050808 (prerelease) (Ubuntu 4.0.1-4ubuntu9)
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

brant@CoV:/mnt/data/Games/PlaneShift_CVS/planeshift$ cxx
bash: cxx: command not found
brant@CoV:/mnt/data/Games/PlaneShift_CVS/planeshift$ c++
c++: no input files
brant@CoV:/mnt/data/Games/PlaneShift_CVS/planeshift$ c++ --version
c++ (GCC) 4.0.2 20050808 (prerelease) (Ubuntu 4.0.1-4ubuntu9)
Copyright (C) 2005 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

brant@CoV:/mnt/data/Games/PlaneShift_CVS/planeshift$



Or did you mean something else?

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #12 on: February 23, 2006, 03:29:48 pm »
echo $CC
echo $CXX

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #13 on: February 24, 2006, 12:31:08 am »
brant@CoV:~$ echo $CC

brant@CoV:~$ echo $cc

brant@CoV:~$ echo $CXX

brant@CoV:~$ echo $cxx


none return any output on any of my linux systems... tried 4 desktops plus all my servers at work.

Xordan

  • Crystal Space Developer
  • Forum Addict
  • *
  • Posts: 3845
  • For God and the Empire
    • View Profile
(No subject)
« Reply #14 on: February 25, 2006, 02:38:42 am »
hmmm, no idea then. :) I couldn\'t get the intel compiler to install properly for me so I haven\'t been able to play around myself.