Error building libsmm
Alfio Lazzaro
alfio.... at gmail.com
Wed Oct 29 08:59:47 UTC 2014
BTW, you can always use the libsmm generated with a previous version of
cp2k for cp2k-2.6. The interface is the same and I don't expect any large
improvement in performance.
Alfio
Il giorno mercoledì 29 ottobre 2014 03:48:46 UTC+1, Abhishek Bagusetty ha
scritto:
>
> Hi Alfio,
>
> I am trying to build the libsmm in cp2k-2.6 and it looks like there has
> been some recent commits on that. I am trying to build the libsmm and when
> I run the tiny1, the pbs jobs run but there are no output files (*.out)
> generated in the /run_tiny_dnn/output_linux.intel/. It looks something is
> wrong with my setup. I haven't changed any file. Do you have any pointers
> that comes to the rescue.
>
> Thanks for your time,
>
> Abhishek
>
> On Thursday, October 23, 2014 4:23:20 AM UTC-4, Alfio Lazzaro wrote:
>>
>> Probably I was too optimistic when I asked you to replace the gfortran
>> with ifort...
>> Let me explain the problem. The errors are due to the construct:
>>
>> ERROR STOP
>>
>> which is inside the file multrec_gen.f90 (lines 288 and 366). This is a
>> 2008 Fortran construct and it appears that neither your ifort nor gfortran
>> versions are supporting it.
>> Then there is no way to compile it unless we change the code. I would ask
>> you to restore gfortran as host compiler in the config/linux.intel, and
>> then open the file multrec_gen.f90 and remove the keyword "ERROR" (keep
>> STOP) in the two lines. Try this and see if it fixes the problem.
>>
>> I see also that "ERROR STOP" is used once in the file generate.bash file.
>> You can remove from there too.
>>
>> Alfio
>>
>>
>>
>> Il giorno giovedì 23 ottobre 2014 06:54:24 UTC+2, Abhishek Bagusetty ha
>> scritto:
>>>
>>> Thanks for figuring out the issue. I have used ifort instead of gfortran
>>> and I still get a different set of errors.
>>>
>>> During the 3rd step ./generate -c config/linux.intel -j 20 -t 16 -w
>>> pbs small1
>>>
>>> These are the set of errors which looks different to the earlier ones :
>>>
>>> multrec_gen.f90(267): error #5144: Invalid character_kind_parameter. No
>>> underscore
>>> IF (ANY(best_square<1)) ERROR STOP "tiny opts file needs
>>> sufficiently many square sizes"
>>>
>>> ---------------------------------------------------------------------------------------------^
>>> multrec_gen.f90(267): error #5082: Syntax error, found IDENTIFIER 'STOP'
>>> when expecting one of: ( % : . = =>
>>> IF (ANY(best_square<1)) ERROR STOP "tiny opts file needs
>>> sufficiently many square sizes"
>>> -----------------------------------^
>>> multrec_gen.f90(331): error #5144: Invalid character_kind_parameter. No
>>> underscore
>>> ERROR STOP "MISSING CASE mult_versions"
>>> ----------------------------------------------^
>>> multrec_gen.f90(331): error #5082: Syntax error, found IDENTIFIER 'STOP'
>>> when expecting one of: ( % : . = =>
>>> ERROR STOP "MISSING CASE mult_versions"
>>> -------------^
>>> multrec_gen.f90(267): error #6404: This name does not have a type, and
>>> must have an explicit type. [ERROR]
>>> IF (ANY(best_square<1)) ERROR STOP "tiny opts file needs
>>> sufficiently many square sizes"
>>> -----------------------------^
>>>
>>> compilation aborted for multrec_gen.f90 (code 1)
>>> More info :
>>> ifort 11.1
>>> ./generate cleanall is done before building with ifort.
>>>
>>> Thanks for your help.
>>>
>>> Abhishek
>>>
>>> On Wednesday, October 22, 2014 4:31:48 AM UTC-4, Alfio Lazzaro wrote:
>>>>
>>>> Ok, thanks. I can reproduce your error and I think I understood its
>>>> source.
>>>> It turns out that the compiler used for the compilation of the libsmm
>>>> fortran files (gfortran 4.3 in my case) is the source of the problem.
>>>> I think the easiest solution would be to change inside the file:
>>>>
>>>> build_libsmm/config/linux.intel
>>>>
>>>> the last line from:
>>>>
>>>> host_compile="gfortran -O2"
>>>>
>>>> to
>>>>
>>>> host_compile="ifort -O2"
>>>>
>>>> BTW, the error doesn't happen if I use gfortran 4.6.
>>>>
>>>> I hope this solves your problem.
>>>>
>>>> Alfio
>>>>
>>>>
>>>> Il giorno mercoledì 22 ottobre 2014 01:44:25 UTC+2, Abhishek Bagusetty
>>>> ha scritto:
>>>>>
>>>>> Please find the attachment for the tiny summary file.
>>>>>
>>>>> Abhishek
>>>>>
>>>>> On Tuesday, October 21, 2014 11:10:04 AM UTC-4, Alfio Lazzaro wrote:
>>>>>>
>>>>>> Interesting... Then it seems that the problem is in the small1
>>>>>> phase...
>>>>>> Could you send me in attachment your tiny summary file? I will check
>>>>>> what is wrong...
>>>>>>
>>>>>> Alfio
>>>>>>
>>>>>>
>>>>>>
>>>>>> Il giorno martedì 21 ottobre 2014 15:24:06 UTC+2, Abhishek Bagusetty
>>>>>> ha scritto:
>>>>>>>
>>>>>>> I have checked the summary file tiny_gen_optimal_dnn_linux.intel.out
>>>>>>> and it has 9 columns with 13824 lines with no sign of corrupted entries. On
>>>>>>> the same lines, there are 13824 *.out files in
>>>>>>> build_libsmm/run_tiny_dnn/output_linux.intel.
>>>>>>>
>>>>>>> It looks like we can rule out that there could be something wrong
>>>>>>> with the summary file. I guess it would be worth informing that while
>>>>>>> collecting results using tiny2 some of the *.out files were missing so I
>>>>>>> had to run the tiny1 again to get the completion and tiny2 went smoothly. I
>>>>>>> am not sure if this could have triggered this issue.
>>>>>>>
>>>>>>> let me know what you think on this.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Abhishek
>>>>>>>
>>>>>>> On Tuesday, October 21, 2014 3:20:03 AM UTC-4, Alfio Lazzaro wrote:
>>>>>>>>
>>>>>>>> OK, the files from tiny1 are generated correctly (6 columns is OK
>>>>>>>> for the tiny1 files). The 9 columns are for the summary file generated
>>>>>>>> during the tiny2 phase in the the main directory. Look inside the main
>>>>>>>> directory (build_libsmm) for the file tiny_gen_optimal_dnn_linux.intel.out.
>>>>>>>> I suspect that this file has 3 columns (the first 3) in some lines (all
>>>>>>>> lines must have 9 columns). BTW, if you hare using the default
>>>>>>>> configuration for tiny1 matrix dimensions, then you should have 13824 *out
>>>>>>>> files inside build_libsmm/run_tiny_dnn/output_linux.intel. You can check it
>>>>>>>> by using
>>>>>>>>
>>>>>>>> > ls *.out | wc -l
>>>>>>>>
>>>>>>>> The same for the summary file:
>>>>>>>>
>>>>>>>> > wc -l tiny_gen_optimal_dnn_linux.intel.out
>>>>>>>> 13824 tiny_gen_optimal_dnn_linux.intel.out
>>>>>>>>
>>>>>>>> We can have several possible errors:
>>>>>>>> 1) some of the *.out files are missing or corrupted
>>>>>>>> 2) the summary file is corrupted
>>>>>>>>
>>>>>>>> Let me know what you get from this investigation. Likely the
>>>>>>>> problem is in the summary file...
>>>>>>>>
>>>>>>>> Alfio
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Il giorno lunedì 20 ottobre 2014 22:54:39 UTC+2, Abhishek Bagusetty
>>>>>>>> ha scritto:
>>>>>>>>>
>>>>>>>>> Hi Alfio,
>>>>>>>>>
>>>>>>>>> I have looked into the *.out files generated by the tiny1. I
>>>>>>>>> didn't see 9 columns in the *.out but instead 6 columns.
>>>>>>>>>
>>>>>>>>> 1 1 1 1 0.441932 2.263
>>>>>>>>> 1 1 1 7 0.242963 4.116
>>>>>>>>> 1 1 17 1 0.370944 2.696
>>>>>>>>> 1 3 1 1 0.249962 4.001
>>>>>>>>> 1 3 1 7 0.544917 1.835
>>>>>>>>> 1 5 1 1 0.267959 3.732
>>>>>>>>> 1 15 1 1 0.498925 2.004
>>>>>>>>> 2 1 1 1 0.441932 2.263
>>>>>>>>>
>>>>>>>>> This is the output from a file (tiny_find_xx_xx_xx.out) in
>>>>>>>>> /build_libsmm/run_tiny_dnn/output_linux.intel/
>>>>>>>>> I have modified the pbs.wlm file by getting rid of few options
>>>>>>>>> like -lmppwidth and -lmppnppn which were not defined in the PBS for our
>>>>>>>>> cluster.
>>>>>>>>> I am not sure how to investigate further. Do you have any pointers
>>>>>>>>> on how to approach this ?
>>>>>>>>>
>>>>>>>>> Thank for your time.
>>>>>>>>>
>>>>>>>>> Abhishek
>>>>>>>>>
>>>>>>>>> On Monday, October 20, 2014 12:41:23 AM UTC-4, Alfio Lazzaro wrote:
>>>>>>>>>>
>>>>>>>>>> Hello Abhishek,
>>>>>>>>>> could you check if the tiny2 phase is properly producing the tiny
>>>>>>>>>> file? I mean, the error you are seeing is that the system is not able to
>>>>>>>>>> read the tiny results during the small1 phase.
>>>>>>>>>> The file should be something similar to:
>>>>>>>>>>
>>>>>>>>>> 1 1 1 1 1 1 1 0.447362 0.447
>>>>>>>>>> 1 1 2 4 1 1 1 0.451188 0.887
>>>>>>>>>> 1 1 3 3 1 1 1 0.484057 1.240
>>>>>>>>>> 1 1 4 5 1 1 4 0.500210 1.599
>>>>>>>>>> 1 1 5 6 1 1 5 0.548113 1.824
>>>>>>>>>> 1 1 6 1 1 1 6 0.456724 2.190
>>>>>>>>>>
>>>>>>>>>> As you can see there are 9 columns. If you see only 3 (the first
>>>>>>>>>> three ones) then there is something wrong during tiny1.
>>>>>>>>>> The next step would be to investigate if the files *.out inside
>>>>>>>>>> the tiny1 directory and then output directory are correct (you can post an
>>>>>>>>>> example of .out file).
>>>>>>>>>>
>>>>>>>>>> Best regards,
>>>>>>>>>>
>>>>>>>>>> Alfio
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Il giorno domenica 19 ottobre 2014 22:03:42 UTC+2, Abhishek
>>>>>>>>>> Bagusetty ha scritto:
>>>>>>>>>>>
>>>>>>>>>>> Hi Users & Developers,
>>>>>>>>>>>
>>>>>>>>>>> I am trying to build libsmm small matrix multiplication library
>>>>>>>>>>> and got an error while doing the 3rd step.
>>>>>>>>>>>
>>>>>>>>>>> Steps :
>>>>>>>>>>> 1. ./generate -c config/linux.intel -j 100 -t 16 -w pbs tiny1
>>>>>>>>>>> 2. ./generate -c config/linux.intel tiny2
>>>>>>>>>>> 3. ./generate -c config/linux.intel -j 20 -t 16 -w pbs small1
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> multrec_gen.f90:267.29:
>>>>>>>>>>>
>>>>>>>>>>> IF (ANY(best_square<1)) ERROR STOP "tiny opts file needs
>>>>>>>>>>> sufficiently many
>>>>>>>>>>>
>>>>>>>>>>> 1
>>>>>>>>>>>
>>>>>>>>>>> Error: Cannot assign to a named constant at (1)
>>>>>>>>>>>
>>>>>>>>>>> multrec_gen.f90:331.7:
>>>>>>>>>>>
>>>>>>>>>>> ERROR STOP "MISSING CASE mult_versions"
>>>>>>>>>>>
>>>>>>>>>>> 1
>>>>>>>>>>> Error: Unclassifiable statement at (1)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> It would be great, if anyone has any pointers to get a fix on
>>>>>>>>>>> this issue.
>>>>>>>>>>> Thanks,
>>>>>>>>>>>
>>>>>>>>>>> Abhishek
>>>>>>>>>>> ------------------------------------------------------------
>>>>>>>>>>> -----------------------------------------------
>>>>>>>>>>> Abhishek Bagusetty
>>>>>>>>>>> PhD Student, Computational Modeling & Simulation
>>>>>>>>>>> Center for Simulation and Modeling
>>>>>>>>>>> Department of Chemical & Petroleum Engineering
>>>>>>>>>>> University of Pittsburgh
>>>>>>>>>>> Pittsburgh, PA - 15261
>>>>>>>>>>> Office : 920 Benedum Hall
>>>>>>>>>>>
>>>>>>>>>>> -----------------------------------------------------------------------------------------------------------
>>>>>>>>>>>
>>>>>>>>>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.cp2k.org/archives/cp2k-user/attachments/20141029/c54c61e6/attachment.htm>
More information about the CP2K-user
mailing list