libxsmm MNK, SSE and other inconsistencies
Hans Pabst
hf.p... at gmail.com
Wed Jan 20 16:22:11 UTC 2016
Here is the posted issue <https://github.com/hfp/libxsmm/issues/59>as a
reference for others in this forum.
-Hans
Am Montag, 18. Januar 2016 16:32:47 UTC+1 schrieb Johannes Wagner:
>
> Hi Alfio,
> thanks for your reply. I also opted for the AVX setting. I just thought
> that the this libxsmm cp2k flag is somehow aligned with the cp2k needs.
> I'll also post this at their git page.
>
> On Saturday, January 16, 2016 at 2:41:21 PM UTC+1, Alfio Lazzaro wrote:
>>
>> Hi Johannes,
>> the MNK values are not the same, libxsmm produces less kernels (probably
>> related to specific benchmarks used by libxsmm developers). I cannot speak
>> about LIBXSMM (you should ask in their git forum), however I would suggest
>> to use what is in the toolchain for MNK, which is the most general case for
>> CP2K kernels. Concerning the other parameters, depending on your system, I
>> would suggest to change SSE in AVX=1 (sandybridge/ivydridge) or 2
>> (haswell/broadwell) (AVX=3 is Intel KNL, so it doesn't not exist yet).
>>
>> Alfio
>>
>>
>>
>>
>> Il giorno venerdì 15 gennaio 2016 16:33:11 UTC+1, Johannes Wagner ha
>> scritto:
>>>
>>> hey all,
>>> I have a question regarding installing libxsmm. If downloaded from git (
>>> https://github.com/hfp/libxsmm/archive/1.1.1.tar.gz), the make.sh file
>>> includes an -cp2k flag that sets MNK options to:
>>>
>>> MNK=" \
>>>
>>> 23, \
>>>
>>> 6, \
>>>
>>> 14 16 29, \
>>>
>>> 14 32 29, \
>>>
>>> 5 32 13 24 26, \
>>>
>>> 9 32 22, \
>>>
>>> 64, \
>>>
>>> 78, \
>>>
>>> 16 29 55, \
>>>
>>> 32 29 55, \
>>>
>>> 12, \
>>>
>>> 4 5 7 9 13 25 26 28 32 45"
>>>
>>>
>>> along with
>>>
>>> ALIGNED_LOADS=1 ALIGNED_STORES=1 PRECISION=2 SYM=1 SSE=3
>>>
>>>
>>> but the cp2k source's toolchain installer sets it to
>>>
>>>
>>> MNK="1 4 5 6 8 9 13 16 17 22 23 24 26 32"
>>>
>>>
>>> along with
>>>
>>> SSE=1 JIT=1 PREFETCH=1
>>>
>>>
>>> Now why is this inconsistent? Which is the "correct" MNK options, or
>>> does the former comprise all cases from the latter? And the option SSE=3
>>> doesn't even exist according to the Makefile.inc. Only SSE=1 or AVX=1|2|3
>>> (which at least is sort of what the libxsmm.pdf in the libxsmm
>>> documentation folder says).
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20160120/bc60ec0a/attachment.htm>
More information about the CP2K-user
mailing list