Excellent!  I still have to figure out why your system does not support posix 
threads barriers properly, but most probably the patch is a good workaround for 
your case.  Please feel free to file a bug so that this is not lost.

Thanks,

Francesc

On Mar 7, 2012, at 11:46 PM, Chris Kees wrote:

> Hi Francesc,
> 
> _POSIX_BARRIERS is 200112L in that machine's standard headers. I put in the 
> hack below in blosc.c  (the last conditional) and pytables compiled fine.  I 
> will run the test set tomorrow.
> 
> Thanks,
> Chris
> 
> #if defined(_POSIX_BARRIERS) && ( (_POSIX_BARRIERS - 20012L) >= 0 && 
> _POSIX_BARRIERS != 200112L)
> 
> On Mar 7, 2012, at 8:25 PM, Francesc Alted wrote:
> 
>> On Mar 7, 2012, at 6:05 PM, Chris Kees wrote:
>>> On Wed, Mar 7, 2012 at 5:18 PM, Francesc Alted <fal...@pytables.org> wrote:
>>> On Mar 7, 2012, at 3:14 PM, Francesc Alted wrote:
>>> 
>>>> On Mar 7, 2012, at 1:57 PM, Chris Kees wrote:
>>>> 
>>>>> Hi Anthony,
>>>>> 
>>>>> I'm using 1.8.7 on ranger.  Here is the topmost error:
>>>>> 
>>>>> compile options: '-DNDEBUG=1 -DHAVE_BZ2_LIB=1 -Iblosc 
>>>>> -I/work/01020/cekees/ranger.gnu/build/ranger.gnu/lib/python2.7/site-packages/numpy/core/include
>>>>>  -I/work/01020/cekee
>>>>> s/ranger.gnu/build/ranger.gnu/include 
>>>>> -I/work/01020/cekees/ranger.gnu/build/ranger.gnu/include/python2.7 -c'
>>>>> extra options: '-Isrc -DH5_USE_16_API'
>>>>> gcc: blosc/blosclz.c
>>>>> gcc: src/H5ARRAY.c
>>>>> In file included from 
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/include/python2.7/Python.h:8,
>>>>>               from src/utils.h:1,
>>>>>               from src/H5ARRAY.c:4:
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/include/python2.7/pyconfig.h:1155:1:
>>>>>  warning: "_POSIX_C_SOURCE" redefined
>>>>> In file included from 
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/include/H5public.h:37,
>>>>>               from 
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/include/hdf5.h:24,
>>>>>               from src/H5ATTR.h:19,
>>>>>               from src/H5ARRAY.c:1:
>>>>> /share/apps/gcc_amd/4.4.5/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.5/include-fixed/features.h:199:1:
>>>>>  warning: this is the location of the previous definition
>>>>> In file included from 
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1972,
>>>>>               from 
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:17,
>>>>>               from 
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:15,
>>>>>               from src/utils.h:2,
>>>>>               from src/H5ARRAY.c:4:
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/lib/python2.7/site-packages/numpy/core/include/numpy/npy_deprecated_api.h:11:2:
>>>>>  warning: #warning "Using deprecated NumPy
>>>>> API, disable it by #defining NPY_NO_DEPRECATED_API"
>>>>> /work/01020/cekees/ranger.gnu/build/ranger.gnu/lib/python2.7/site-packages/numpy/core/include/numpy/__multiarray_api.h:1666:
>>>>>  warning: '_import_array' defined but not use
>>>>> d
>>>>> gcc: blosc/blosc.c
>>>>> blosc/blosc.c:79: error: expected '=', ',', ';', 'asm' or '__attribute__' 
>>>>> before 'barr_init'
>>>> 
>>>> Uf, that looks really ugly.  Which compiler and version are you using?  
>>>> Can you look in this machine's thread.h and tell us the value of 
>>>> _POSIX_BARRIERS symbol?
>>> 
>>> BTW, numexpr also uses the same parallel engine than blosc.  As numexpr is 
>>> a requisite for PyTables, I'm curious about if you have been able to 
>>> compile it too.
>>> 
>>> 
>>> Yes, I was able to compiler numexpr. The versions of pytables dependencies 
>>> I'm using are:
>>> 
>>> * Found numpy 1.7.0.dev-0b400cb package installed.
>>> * Found numexpr 1.5.dev package installed.
>> 
>> Hmm, this is a good sign.  Blosc has probably some more hacks for the 
>> threading code, so this is probably why your compiler is behaving 
>> differently.  The compiler version should be fine too.  Do you have 
>> internally an expert in posix threading that can have a look at the 
>> offending line?  I'm a bit out of ideas.
>> 
>> -- Francesc Alted
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> ------------------------------------------------------------------------------
>> Virtualization & Cloud Management Using Capacity Planning
>> Cloud computing makes use of virtualization - but cloud computing 
>> also focuses on allowing computing to be delivered as a service.
>> http://www.accelacomm.com/jaw/sfnl/114/51521223/
>> _______________________________________________
>> Pytables-users mailing list
>> Pytables-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/pytables-users
> 
> 
> ------------------------------------------------------------------------------
> Virtualization & Cloud Management Using Capacity Planning
> Cloud computing makes use of virtualization - but cloud computing 
> also focuses on allowing computing to be delivered as a service.
> http://www.accelacomm.com/jaw/sfnl/114/51521223/
> _______________________________________________
> Pytables-users mailing list
> Pytables-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pytables-users

-- Francesc Alted







------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Pytables-users mailing list
Pytables-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pytables-users

Reply via email to