提交 0a7e5860 authored 作者: Frederic's avatar Frederic

Make a real Theano flags cxx of gxx_avail.

上级 69a019a1
...@@ -363,6 +363,21 @@ import theano and print the config variable, as in: ...@@ -363,6 +363,21 @@ import theano and print the config variable, as in:
Extra parameters to pass to gcc when compiling. Extra include paths, Extra parameters to pass to gcc when compiling. Extra include paths,
library paths, configuration options, etc. library paths, configuration options, etc.
.. attribute:: config.cxx
Default: 'g++' if g++ is present. '' Otherwise.
Tell the c++ compiler to use. If empty, don't compile c++ code.
We automatically detect if g++ is present and disable it if not
present.
We print a warning if we detect that g++ is not present. It is
recommended to run with c++ compilation as Theano will be much
slower otherwise.
Currently only g++ is supported, but supporting others is easy.
.. attribute:: optimizer_excluding .. attribute:: optimizer_excluding
Default: "" Default: ""
......
...@@ -87,7 +87,8 @@ AddConfigVar('mode', ...@@ -87,7 +87,8 @@ AddConfigVar('mode',
'FAST_COMPILE', 'PROFILE_MODE', 'DEBUG_MODE'), 'FAST_COMPILE', 'PROFILE_MODE', 'DEBUG_MODE'),
in_c_key=False) in_c_key=False)
gxx_avail = True enum = EnumStr("g++", "")
# Test whether or not g++ is present: disable C code if it is not. # Test whether or not g++ is present: disable C code if it is not.
# Using the dummy file descriptor below is a workaround for a crash experienced # Using the dummy file descriptor below is a workaround for a crash experienced
# in an unusual Python 2.4.4 Windows environment with the default stdin=None. # in an unusual Python 2.4.4 Windows environment with the default stdin=None.
...@@ -113,11 +114,19 @@ except OSError: ...@@ -113,11 +114,19 @@ except OSError:
'optimized C-implementations (for both CPU and GPU) and will ' 'optimized C-implementations (for both CPU and GPU) and will '
'default to Python implementations. Performance will be severely ' 'default to Python implementations. Performance will be severely '
'degraded.') 'degraded.')
gxx_avail = False enum = EnumStr("")
del dummy_stdin del dummy_stdin
AddConfigVar('cxx',
"The c++ compiler to use. Currently only g++ is"
" supported. But supporting more is easy if someone want this."
"If it is empty, we don't compile c++ code.",
enum,
in_c_key=False)
del enum
#Keep the default optimizer the same as the one for the mode FAST_RUN
#Keep the default value the same as the one for the mode FAST_RUN
AddConfigVar('allow_gc', AddConfigVar('allow_gc',
"Do we default to delete intermediate results during Theano" "Do we default to delete intermediate results during Theano"
" function calls? Doing so lowers the memory requirement, but" " function calls? Doing so lowers the memory requirement, but"
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论