Compiler settings for the examples
Krishna Narasimhan
[please enable javascript to see the address]
Wed Sep 21 16:11:41 CEST 2016
Thanks. And it is O3 :-) A relief I must say
[please enable javascript to see the address]> wrote:
> There's nothing in the output because nothing was compiled. Do a 'make
> clean' first.
>
>
> On September 21, 2016 2:21:55 PM GMT+02:00, Krishna Narasimhan <
>[please enable javascript to see the address]> wrote:
>>
>> Hi Matthias,
>> Thanks a lot. I did try doing the "make VERBOSE =1" and could not get
>> any info on the compiler settings. Could you help me out here. This is kind
>> of important for a paper I am submitting very shortly. The output doesnt
>> seem to have information on the compiler settings.
>>
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -H/home/krishna/vc
>> -B/home/krishna/vc/build6 --check-build-system CMakeFiles/Makefile.cmake 0
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_progress_start
>> /home/krishna/vc/build6/CMakeFiles /home/krishna/vc/build6/
>> examples/CMakeFiles/progress.marks
>> cd /home/krishna/vc/build6 && make -f CMakeFiles/Makefile2 examples/all
>> make[1]: Entering directory `/home/krishna/vc/build6'
>> make -f CMakeFiles/Vc.dir/build.make CMakeFiles/Vc.dir/depend
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /home/krishna/vc /home/krishna/vc /home/krishna/vc/build6
>> /home/krishna/vc/build6 /home/krishna/vc/build6/
>> CMakeFiles/Vc.dir/DependInfo.cmake --color=
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> make -f CMakeFiles/Vc.dir/build.make CMakeFiles/Vc.dir/build
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> make[2]: Nothing to be done for `CMakeFiles/Vc.dir/build'.
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> /usr/bin/cmake -E cmake_progress_report /home/krishna/vc/build6/CMakeFiles
>> 2 3 4 5 6 7 8 9 10
>> [ 32%] Built target Vc
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_avx.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_avx.dir/depend
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /home/krishna/vc /home/krishna/vc/examples/polarcoord
>> /home/krishna/vc/build6 /home/krishna/vc/build6/examples/polarcoord
>> /home/krishna/vc/build6/examples/
>> polarcoord/CMakeFiles/example_polarcoord_avx.dir/DependInfo.cmake
>> --color=
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_avx.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_avx.dir/build
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> make[2]: Nothing to be done for `examples/polarcoord/
>> CMakeFiles/example_polarcoord_avx.dir/build'.
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> /usr/bin/cmake -E cmake_progress_report /home/krishna/vc/build6/
>> CMakeFiles
>> [ 32%] Built target example_polarcoord_avx
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_avx2.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_avx2.dir/depend
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /home/krishna/vc /home/krishna/vc/examples/polarcoord
>> /home/krishna/vc/build6 /home/krishna/vc/build6/examples/polarcoord
>> /home/krishna/vc/build6/examples/
>> polarcoord/CMakeFiles/example_polarcoord_avx2.dir/DependInfo.cmake
>> --color=
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_avx2.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_avx2.dir/build
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> make[2]: Nothing to be done for `examples/polarcoord/
>> CMakeFiles/example_polarcoord_avx2.dir/build'.
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> /usr/bin/cmake -E cmake_progress_report /home/krishna/vc/build6/CMakeFiles
>> 35
>> [ 35%] Built target example_polarcoord_avx2
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_default.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_default.dir/depend
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /home/krishna/vc /home/krishna/vc/examples/polarcoord
>> /home/krishna/vc/build6 /home/krishna/vc/build6/examples/polarcoord
>> /home/krishna/vc/build6/examples/
>> polarcoord/CMakeFiles/example_polarcoord_default.dir/DependInfo.cmake
>> --color=
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_default.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_default.dir/build
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> make[2]: Nothing to be done for `examples/polarcoord/
>> CMakeFiles/example_polarcoord_default.dir/build'.
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> /usr/bin/cmake -E cmake_progress_report /home/krishna/vc/build6/
>> CMakeFiles
>> [ 35%] Built target example_polarcoord_default
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_scalar.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_scalar.dir/depend
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /home/krishna/vc /home/krishna/vc/examples/polarcoord
>> /home/krishna/vc/build6 /home/krishna/vc/build6/examples/polarcoord
>> /home/krishna/vc/build6/examples/
>> polarcoord/CMakeFiles/example_polarcoord_scalar.dir/DependInfo.cmake
>> --color=
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_scalar.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_scalar.dir/build
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> make[2]: Nothing to be done for `examples/polarcoord/
>> CMakeFiles/example_polarcoord_scalar.dir/build'.
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> /usr/bin/cmake -E cmake_progress_report /home/krishna/vc/build6/
>> CMakeFiles
>> [ 35%] Built target example_polarcoord_scalar
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_sse.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_sse.dir/depend
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /home/krishna/vc /home/krishna/vc/examples/polarcoord
>> /home/krishna/vc/build6 /home/krishna/vc/build6/examples/polarcoord
>> /home/krishna/vc/build6/examples/
>> polarcoord/CMakeFiles/example_polarcoord_sse.dir/DependInfo.cmake
>> --color=
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> make -f examples/polarcoord/CMakeFiles/example_polarcoord_sse.dir/build.make
>> examples/polarcoord/CMakeFiles/example_polarcoord_sse.dir/build
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> make[2]: Nothing to be done for `examples/polarcoord/
>> CMakeFiles/example_polarcoord_sse.dir/build'.
>> make[2]: Leaving directory `/home/krishna/vc/build6'
>> /usr/bin/cmake -E cmake_progress_report /home/krishna/vc/build6/CMakeFiles
>> 36
>> [ 39%] Built target example_polarcoord_sse
>> make -f examples/matrix/CMakeFiles/example_matrix_avx.dir/build.make
>> examples/matrix/CMakeFiles/example_matrix_avx.dir/depend
>> make[2]: Entering directory `/home/krishna/vc/build6'
>> cd /home/krishna/vc/build6 && /usr/bin/cmake -E cmake_depends "Unix
>> Makefiles" /home/krishna/vc /home/krishna/vc/examples/matrix
>> /home/krishna/vc/build6 /home/krishna/vc/build6/examples/matrix
>> /home/krishna/vc/build6/examples/matrix/
>>
>>[please enable javascript to see the address]> wrote:
>>
>>> Hi Krishna,
>>>
>>> when you compile a project using cmake, use 'make VERBOSE=1' to see the
>>> compiler flags it uses.
>>>
>>> In very few cases, in Vc, I use compiler flags to inhibit automatic
>>> vectorization (if I want to compare scalar vs. vector *hardware*). I
>>> don't
>>> recall right now what I do for the polar coordinates case, but I think I
>>> leave
>>> the compiler on -O3 (i.e. autovectorize and optimize as much as
>>> possible).
>>>
>>> In general, I think your argument should not be: my code transformation
>>> can
>>> vectorize something that a compiler does not vectorize. That's a race
>>> against
>>> many very smart people. I think what you want to show is that you can
>>> transform a given scalar code base into a Vc code base as a useful basis
>>> for
>>> further manual vectorization development. That's something compilers
>>> don't do
>>> at all...
>>>
>>> Cheers,
>>> Matthias
>>>
>>> On Samstag, 27. August 2016 10:52:55 CEST Krishna Narasimhan wrote:
>>> > Hi all,
>>> > I am wondering about the compiler settings for the example files
>>> > posted. I ran a small test on the cartesian-polar coordinate example
>>> in the
>>> > VC website and just used the makefile available there to assess the run
>>> > times. And the run times for the VC was substantially better than the
>>> run
>>> > times for the Scalar versions. But the question is couldnt compiler
>>> level
>>> > optimizations have done this already. And was wondering what level the
>>> > compilers are set for the basic makefiles in the VC by default.
>>> >
>>> > Basically, I am using the polar cartesian co ordinate example as part
>>> of my
>>> > research with programming languages (and simple vc transformations are
>>> one
>>> > of the evaluation) and would be nice to justify even these simple
>>> > transformations are not stuff that compilers dont vectorize
>>> automatically.
>>> >
>>> >
>>> >
>>> > Best
>>> > Krishna
>>>
>>>
>>> --
>>> ────────────────────────────────────────────────────────────
>>> ──────────────
>>> Dr. Matthias Kretz
>>> https://kretzfamily.de
>>> GSI Helmholtzzentrum für Schwerionenforschung
>>> https://gsi.de
>>> SIMD easy and portable
>>> https://github.com/VcDevel/Vc
>>> ────────────────────────────────────────────────────────────
>>> ──────────────
>>> _______________________________________________
>>> Vc mailing list
>>>[please enable javascript to see the address]
>>> https://compeng.uni-frankfurt.de/mailman/listinfo/vc
>>
>>
>>
> --
> Dr. Matthias Kretz
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://compeng.uni-frankfurt.de/pipermail/vc/attachments/20160921/38bf0e23/attachment.html>
More information about the Vc
mailing list