Author: Dann Corbit
Date: 16:56:17 01/02/03
Go up one level in this thread
On January 01, 2003 at 05:01:18, Uri Blass wrote:
>On December 31, 2002 at 16:03:47, Dann Corbit wrote:
>>On December 31, 2002 at 14:28:07, Uri Blass wrote:
>>[snip]
>>>Thanks for all the information about the flags.
>>>I already printed it and I will look at it later.
>>>
>>>I am not sure if I understand what you suggest.
>>>Do you suggest to delete only the last 2 flags and add all the list?
>>
>>Yes.
>
>I tried it now
>including Qprof_genx instead of Qprof_use
>
>I get a lot of comments
>I understand from the comments that
>Here are some of them
>
>I do not like disabling multiple optimizations.
>I thought that only user_profile optimization should be disabled so I can
>compare user_profile optimizations with the code under intel compiler without
>them
>
>Here is what I got
>
>Compiling...
>boardi.c
>icl: Command line warning: overriding '-O2' with '-O3'
>icl: warning: PGOPTI instrumentation disables multifile optimizations
>icl: warning: PGOPTI instrumentation disables IP optimizations
>icl: warning: PGOPTI instrumentation disables automatic CPU specialization
That is because you have to make a few runs with this binary in order to
generate the branch information needed by another pass of the compiler. So (for
instance) after you run your chess engine for a while both against other engines
and against EPD test sets, you compile again. This time, you will have
/Qprof_use defined instead of /Qprof_genx. On the subsequent link, the compiler
will look at information generated by to profiler to create a superior
executable.
>I also got remark #310: old-style parameter list (anachronism)
That's because it is a bug in your program.
>I can fix that remark by having functions like
>
>void gen(void) and not void gen() but I do not see the importance of it
>because there is no problem with not declaring void.
It is a serious error in a C program. For instance, if I declare a function
like this:
int foo();
I can call it like this:
i = foo(arg1, arg2, arg3, arg4);
even though it has no arguments. An empty argument list in a function prototype
does not mean: "This function has no arguments." It actually means: "I may or
may not have arguments but I am not telling you what they are."
>It seems that the intel compiler is too complex for me to understand so I will
>leave it now and go back for it later(I have things to improve even without the
>intel compiler)
Once you get used to it, it is not so bad. And the barking it does is useful to
learn new things of importance.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.