Hello, Jack-san, all

For now, if you failed the action of import numpy.core_dotblas, I
thought you could skip this step. (Because the module file itself was
successfully installed)
I added "skipsteps = ['sanitycheck']" to the eb file and thought about
skipping the step.

I finished creating the module for the time being here, but I was able
to introduce it, but it may be interesting to check log.

As long as you check log, there is no trace of sanitycheck step being skipped.

---
<snip>
== 2017-09-08 11:33:12,456 build_log.py:231 INFO sanity checking...
== 2017-09-08 11:33:12,456 easyblock.py:2344 INFO Starting sanitycheck step
== 2017-09-08 11:33:12,457 easyblock.py:2347 INFO Running method
sanity_check_step part of step sanitycheck
<snip>
== 2017-09-08 11:33:15,190 easyblock.py:1974 INFO Using customized
sanity check paths: {'files': [], 'dirs':
['lib/python2.7/site-packages']}
== 2017-09-08 11:33:15,190 easyblock.py:1996 INFO Using customised
sanity check commands: [('python', '-c "import numpy"'), ('python',
'-c "import numpy.core._dotblas"')]
<snip>
== 2017-09-08 11:33:17,001 run.py:160 INFO running cmd: python -c "import numpy"
== 2017-09-08 11:33:17,323 easyblock.py:2100 INFO sanity check command
python -c "import numpy" ran successfully! (output: )
== 2017-09-08 11:33:17,324 run.py:160 INFO running cmd: python -c
"import numpy.core._dotblas"
== 2017-09-08 11:33:17,624 easyblock.py:2100 INFO sanity check command
python -c "import numpy.core._dotblas" ran successfully! (output: )
<snip>

https://gist.github.com/kometchtech/fc3d745116602b570bf5b53225374604#file-easybuild-numpy-1-8-2-20170908-113322-log


However, I succeeded in introducing it this time.
Although it is Ok as a result, it is in a state where it is not well
understood the causal relation with the progress.

Should I question this movement of Easybuild?
Or should we check the construction environment? (I need advice if
there are points etc.)

Best regards.

2017-09-08 12:03 GMT+09:00 Yoshihito Horigome <kome...@gmail.com>:
> Jack-san
>
> Thanks for the advice.
>
> There was a convenient search method to find a module for Easybuild.
>
> Well, this time I am trying to introduce numpy - 1.8.2,
> It seems that it corresponds to the part of sanity_check_step below.
>
> ---
>         if LooseVersion(self.version) >= LooseVersion("1.10"):
>             # generic check to see whether numpy v1.10.x and up was
> built against a CBLAS-enabled library
>             # cfr.
> https://github.com/numpy/numpy/issues/6675#issuecomment-162601149
>             blas_check_pytxt = '; '.join([
>                 "import sys",
>                 "import numpy",
>                 "blas_ok = 'HAVE_CBLAS' in
> dict(numpy.__config__.blas_opt_info['define_macros'])",
>                 "sys.exit((1, 0)[blas_ok])",
>             ])
>             custom_commands.append(('python', '-c "%s"' % blas_check_pytxt))
>         else:
>             # _dotblas is required for decent performance of
> numpy.dot(), but only there in numpy 1.9.x and older
>             custom_commands.append (('python', '-c "import
> numpy.core._dotblas"'))
> ---
>
> I think I will check the flow a little more.
>
> Thank you for your advice.
>
> Best regards.
>
> 2017-09-08 11:48 GMT+09:00 Jack Perdue <j-per...@tamu.edu>:
>> Howdy,
>>
>> I don't have a solution but
>>
>> Assuming you have a module for EasyBuild you can try:
>>
>>  find $EBROOTEASYBUILD -name numpy.py
>>
>> to find the numpy.py easyblock.
>>
>> Check the sanity_check_step  code and then
>> look over the rest.
>>
>> Maybe you can find an answer there (there is mention
>> of dotblas in the comments.... and sanity test check).
>>
>> I'm not sure how many people use EasyBuild on ARM64.
>> Should work (it did eventually on Power7).
>>
>>
>> Jack Perdue
>> Lead Systems Administrator
>> High Performance Research Computing
>> TAMU Division of Research
>> j-per...@tamu.edu    http://hprc.tamu.edu
>> HPRC Helpdesk: h...@hprc.tamu.edu
>>
>>
>> On 09/07/2017 09:15 PM, Yoshihito Horigome wrote:
>>>
>>> Hello,
>>>
>>> I attempted to install numpy in the Aarch64 environment, but an error
>>> occurs because there is no _dotblas module in sanity check step.
>>>
>>> numpy-1.8.2-foss-2016a-Python-2.7.11.eb
>>>
>>> $ uname -r
>>> 4.5.0-29.el7.aarch64
>>> $ cat /etc/redhat-release
>>> CentOS Linux release 7.3.1611 (AltArch)
>>>
>>> --
>>> == 2017-09-08 10:18:15,571 build_log.py:156 ERROR EasyBuild crashed
>>> with an error (at
>>>
>>> easybuild/software/EasyBuild/3.3.1/lib/python2.7/site-packages/vsc_base-2.5.8-py2.7.egg/vsc/utils/exceptions.py:124
>>> in __init__): Sanity check failed: sanity check command python -c
>>> "import numpy.core._dotblas" exited with code 1 (output: Traceback
>>> (most recent call last):
>>>    File "<string>", line 1, in <module>
>>> ImportError: No module named _dotblas
>>> ) (at
>>> easybuild/software/EasyBuild/3.3.1/lib/python2.7/site-packages/easybuild_framework-3.3.1-py2.7.egg/easybuild/framework/easyblock.py:2123
>>> in _sanity_check_step)
>>> == 2017-09-08 10:18:15,571 easyblock.py:2577 WARNING build failed
>>> (first 300 chars): Sanity check failed: sanity check command python -c
>>> "import numpy.core._dotblas" exited with code 1 (output: Traceback
>>> (most recent call last):
>>>    File "<string>", line 1, in <module>
>>> ImportError: No module named _dotblas
>>>
>>>
>>> https://gist.github.com/kometchtech/fc3d745116602b570bf5b53225374604
>>>
>>> However, checking the log confirms that the file is copied to the
>>> installation directory. Moreover, it surely confirms that there is a
>>> file in the installation directory.
>>>
>>> copying build/lib.linux-aarch64-2.7/numpy/core/_dotblas.so ->
>>>
>>> /home/yhorigome/easybuild/software/numpy/1.8.2-foss-2016a-Python-2.7.11/lib/python2.7/site-packages/numpy/core
>>>
>>>
>>> The last PYTHONPATH is as follows.
>>>
>>> == 2017-09-08 10:18:12,720 environment.py:97 INFO Environment variable
>>> PYTHONPATH set to
>>>
>>> lib/python2.7/site-packages:/home/yhorigome/easybuild/software/numpy/1.8.2-foss-2016a-Python-2.7.11/lib/python2.7/site-packages:/home/yhorigome/easybuild/software/numpy/1.8.2-foss-2016a-Python-2.7.11/lib/python2.7/site-packages/numpy/core
>>> (previously undefined)
>>>
>>>
>>> I set up the same way in the x86_64 environment and compare the logs,
>>> but differences were not seen in PYTHONPATH etc.
>>> In the x86_64 environment, the sanity check error did not appear and
>>> the installation was successfully completed.
>>>
>>> Will not you give me advice for introducing it normally?
>>>
>>> Best regards.
>>
>>

Reply via email to