Use icpc for KNC, not icc

This commit is contained in:
Dmitry Babokin
2014-02-20 19:15:09 +04:00
parent c3b041f7ae
commit 788098b55f

View File

@@ -655,14 +655,14 @@ To compile for Xeon Phi™, first generate intermediate C++ code:
The ``ispc`` distribution now includes a header file, The ``ispc`` distribution now includes a header file,
``examples/intrinsics/knc.h``, which maps from the generic C++ output ``examples/intrinsics/knc.h``, which maps from the generic C++ output
to the corresponding intrinsic operations supported by Intel Xeon Phi™. to the corresponding intrinsic operations supported by Intel Xeon Phi™.
Thus, to generate an object file, use the Intel C Compiler (``icc``) compile Thus, to generate an object file, use the Intel C++ Compiler (``icpc``) compile
the C++ code generated by ``ispc``, setting the ``#include`` search the C++ code generated by ``ispc``, setting the ``#include`` search
path so that it can find the ``examples/intrinsics/knc.h`` header file path so that it can find the ``examples/intrinsics/knc.h`` header file
in the ``ispc`` distribution. in the ``ispc`` distribution.
:: ::
icc -mmic -Iexamples/intrinsics/ foo.cpp -o foo.o icpc -mmic -Iexamples/intrinsics/ foo.cpp -o foo.o
With the current beta implementation, complex ``ispc`` programs are able to With the current beta implementation, complex ``ispc`` programs are able to
run on Xeon Phi™, though there are a number of known limitations: run on Xeon Phi™, though there are a number of known limitations:
@@ -683,14 +683,14 @@ run on Xeon Phi™, though there are a number of known limitations:
where the memory address is actually aligned. This may unnecessarily where the memory address is actually aligned. This may unnecessarily
impact performance. impact performance.
* When requesting that ICC generate code with strict floating point * When requesting that ICPC generate code with strict floating point
precision compliance (using ICC option ``-fp-model strict``) or precision compliance (using ICPC option ``-fp-model strict``) or
accurate reporting of floating point exceptions (using ICC option accurate reporting of floating point exceptions (using ICPC option
``-fp-model except``) the compiler will generate code that uses the ``-fp-model except``) the compiler will generate code that uses the
x87 unit rather than Xeon Phi™'s vector unit. For similar reasons, the x87 unit rather than Xeon Phi™'s vector unit. For similar reasons, the
options ``ansi`` and ``fmath-errno`` may result in calls to math options ``ansi`` and ``fmath-errno`` may result in calls to math
functions that are implemented in x87 rather than using vector instructions. functions that are implemented in x87 rather than using vector instructions.
This will have a significant performance impact. See the ICC manual for This will have a significant performance impact. See the ICPC manual for
details on these compiler options. details on these compiler options.
All of these issues are currently actively being addressed and will be All of these issues are currently actively being addressed and will be
@@ -3427,7 +3427,7 @@ for this argument.
* ``fast``: more efficient but lower accuracy versions of the default ``ispc`` * ``fast``: more efficient but lower accuracy versions of the default ``ispc``
implementations. implementations.
* ``svml``: use Intel "Short Vector Math Library". Use * ``svml``: use Intel "Short Vector Math Library". Use
``icc`` to link your final executable so that the appropriate libraries ``icpc`` to link your final executable so that the appropriate libraries
are linked. are linked.
* ``system``: use the system's math library. On many systems, these * ``system``: use the system's math library. On many systems, these
functions are more accurate than both of ``ispc``'s implementations. functions are more accurate than both of ``ispc``'s implementations.