[SciPy-dev] segmentation with scipy+icc during test
Matthieu Brucher
matthieu.brucher at gmail.com
Tue Dec 9 04:43:26 EST 2008
OK, I may be confused with David's Cournapeau attempt to unify the FFT's ;)
2008/12/9 Stijn De Weirdt <stijn.deweirdt at ugent.be>:
>> hi,
>
>> I saw something that I didn't expect: you are using fftw for the FFT.
>> Why don't you use the MKL, which should be faster ?
>>
> euhm, i thought this was how one is supossed to use mkl fftw3
> interfaces? how would you do that?
>
> stijn
>
>> Matthieu
>>
>> 2008/12/5 Stijn De Weirdt <stijn.deweirdt at ugent.be>:
>> >> > no. i modified the numpy distutils a little bit so it would accept the
>> >> > -Bstatic and -Bdynamic switches, for everything else i used standard
>> >> > numpy buld procedure (i also change intelccompiler.py a bit so numpy
>> >> > would use icpc as cxx compiler)
>> >>
>> >> I think a lot of people would love to what you did ;)
>> >>
>> > i paste my site.cfg and a patch here (i have no idea if the mailing list
>> > accepts attachments ;)
>> > keep in mind that -Bstatic and -Bdynamic are toggles and this has been
>> > tested with ictce 3.2.0.017
>> >
>> > (warning: ugly ;)
>> >
>> > stijn
>> >
>> >
>> > site.cfg (mkl related stuff, you get the idea)
>> > -----------------------------------------------
>> > [fftw]
>> > libraries = -Bstatic,fftw3xc_intel,fftw3xf_intel,-Bdynamic
>> > [mkl]
>> > lapack_libs = -Bstatic,mkl_lapack,-Bdynamic
>> > #mkl_libs = -Bstatic,mkl_intel_lp64, mkl_intel_thread,
>> > mkl_core,-Bdynamic,iomp5, guide
>> >
>> > mkl_libs = -Bstatic,mkl_em64t,-Bdynamic,iomp5, guide
>> >
>> > -----------------------------------------------
>> >
>> > patch for numpy, against 1.2.1
>> >
>> > -----------------------------------------------
>> > diff -ur --exclude='*pyc' --exclude='*~'
>> > numpy-1.2.1.orig/numpy/distutils/fcompiler/intel.py
>> > numpy-1.2.1/numpy/distutils/fcompiler/intel.py
>> > --- numpy-1.2.1.orig/numpy/distutils/fcompiler/intel.py 2008-10-28
>> > 12:21:48.000000000 +0100
>> > +++ numpy-1.2.1/numpy/distutils/fcompiler/intel.py 2008-12-04
>> > 22:40:19.000000000 +0100
>> > @@ -152,9 +152,9 @@
>> >
>> > executables = {
>> > 'version_cmd' : None,
>> > - 'compiler_f77' : [None, "-FI", "-w90", "-w95"],
>> > - 'compiler_fix' : [None, "-FI"],
>> > - 'compiler_f90' : [None],
>> > + 'compiler_f77' : [None, "-FI", "-w90", "-w95","-v"],
>> > + 'compiler_fix' : [None, "-FI","-v"],
>> > + 'compiler_f90' : [None,"-v"],
>> > 'linker_so' : ['<F90>', "-shared"],
>> > 'archiver' : ["ar", "-cr"],
>> > 'ranlib' : ["ranlib"]
>> > @@ -166,6 +166,13 @@
>> > opt.extend(['-tpp7', '-xW'])
>> > return opt
>> >
>> > + def library_option(self, lib):
>> > + if lib[0]=='-':
>> > + return lib
>> > + else:
>> > + return "-l" + lib
>> > +
>> > +
>> > # Is there no difference in the version string between the above
>> > compilers
>> > # and the Visual compilers?
>> >
>> > diff -ur --exclude='*pyc' --exclude='*~'
>> > numpy-1.2.1.orig/numpy/distutils/intelccompiler.py
>> > numpy-1.2.1/numpy/distutils/intelccompiler.py
>> > --- numpy-1.2.1.orig/numpy/distutils/intelccompiler.py 2008-10-28
>> > 12:21:49.000000000 +0100
>> > +++ numpy-1.2.1/numpy/distutils/intelccompiler.py 2008-12-04
>> > 23:28:08.000000000 +0100
>> > @@ -8,16 +8,30 @@
>> > """
>> >
>> > compiler_type = 'intel'
>> > - cc_exe = 'icc'
>> > + cc_exe = 'icc -v'
>> > + cxx_exe = 'icpc -v'
>> >
>> > def __init__ (self, verbose=0, dry_run=0, force=0):
>> > UnixCCompiler.__init__ (self, verbose,dry_run, force)
>> > compiler = self.cc_exe
>> > - self.set_executables(compiler=compiler,
>> > - compiler_so=compiler,
>> > - compiler_cxx=compiler,
>> > - linker_exe=compiler,
>> > - linker_so=compiler + ' -shared')
>> > + compiler_cxx = self.cxx_exe
>> > +
>> > + opt=' -fPIC -O3 -unroll'
>> > + linkopt=' -shared -static-intel '
>> > +
>> > + self.set_executables(compiler=compiler+opt,
>> > + compiler_so=compiler+opt,
>> > + compiler_cxx=compiler_cxx+opt,
>> > + linker_exe=compiler+opt,
>> > + linker_so=compiler+linkopt)
>> > +
>> > + def library_option(self, lib):
>> > + if lib[0]=='-':
>> > + return lib
>> > + else:
>> > + return "-l" + lib
>> > +
>> > +
>> >
>> > class IntelItaniumCCompiler(IntelCCompiler):
>> > compiler_type = 'intele'
>> > diff -ur --exclude='*pyc' --exclude='*~'
>> > numpy-1.2.1.orig/numpy/distutils/system_info.py
>> > numpy-1.2.1/numpy/distutils/system_info.py
>> > --- numpy-1.2.1.orig/numpy/distutils/system_info.py 2008-10-28
>> > 12:21:49.000000000 +0100
>> > +++ numpy-1.2.1/numpy/distutils/system_info.py 2008-12-04
>> > 01:18:43.000000000 +0100
>> > @@ -559,6 +559,9 @@
>> > lib_prefixes = ['lib']
>> > # for each library name, see if we can find a file for it.
>> > for l in libs:
>> > + if l[0]=='-':
>> > + liblist.append(l)
>> > + continue
>> > for ext in exts:
>> > for prefix in lib_prefixes:
>> > p = self.combine_paths(lib_dir, prefix+l+ext)
>> > -----------------------------------------------------------------------
>> >
>> > _______________________________________________
>> > Scipy-dev mailing list
>> > Scipy-dev at scipy.org
>> > http://projects.scipy.org/mailman/listinfo/scipy-dev
>> >
>>
>>
>>
> --
> The system will shutdown in 5 minutes.
>
> _______________________________________________
> Scipy-dev mailing list
> Scipy-dev at scipy.org
> http://projects.scipy.org/mailman/listinfo/scipy-dev
>
--
Information System Engineer, Ph.D.
Website: http://matthieu-brucher.developpez.com/
Blogs: http://matt.eifelle.com and http://blog.developpez.com/?blog=92
LinkedIn: http://www.linkedin.com/in/matthieubrucher
More information about the SciPy-Dev
mailing list