提交 95af7fce authored 作者: AlOa's avatar AlOa

Chage openmp_minsize to openmp_elemwise_minsize

上级 116b4e93
...@@ -469,7 +469,7 @@ AddConfigVar('openmp', ...@@ -469,7 +469,7 @@ AddConfigVar('openmp',
in_c_key=False, in_c_key=False,
) )
AddConfigVar('openmp_minsize', AddConfigVar('openmp_elemwise_minsize',
"If OpenMP is enable, this is the minimum size of vector " "If OpenMP is enable, this is the minimum size of vector "
"for which the openmp parallel for is enable." "for which the openmp parallel for is enable."
"Used in element wise ops", "Used in element wise ops",
......
...@@ -1141,7 +1141,7 @@ class Elemwise(OpenMPOp): ...@@ -1141,7 +1141,7 @@ class Elemwise(OpenMPOp):
dtype_%(x)s& %(x)s_i = ((dtype_%(x)s*) PyArray_DATA(%(x)s))[0]; dtype_%(x)s& %(x)s_i = ((dtype_%(x)s*) PyArray_DATA(%(x)s))[0];
""" % locals() """ % locals()
if self.openmp: if self.openmp:
contig += """#pragma omp parallel for if(n>=%d)""" % (config.openmp_minsize) contig += """#pragma omp parallel for if(n>=%d)""" % (config.openmp_elemwise_minsize)
contig += """ contig += """
for(int i=0; i<n; i++){ for(int i=0; i<n; i++){
%(index)s %(index)s
......
...@@ -213,8 +213,8 @@ def make_loop(loop_orders, dtypes, loop_tasks, sub, reduce=False, openmp=None): ...@@ -213,8 +213,8 @@ def make_loop(loop_orders, dtypes, loop_tasks, sub, reduce=False, openmp=None):
if index != 'x': if index != 'x':
suitable_n = "%(var)s_n%(index)s" % locals() suitable_n = "%(var)s_n%(index)s" % locals()
if openmp: if openmp:
openmp_minsize = theano.config.openmp_minsize openmp_elemwise_minsize = theano.config.openmp_elemwise_minsize
forloop = """#pragma omp parallel for if( %(suitable_n)s >=%(openmp_minsize)s)\n""" % locals() forloop = """#pragma omp parallel for if( %(suitable_n)s >=%(openmp_elemwise_minsize)s)\n""" % locals()
else: else:
forloop = "" forloop = ""
forloop += """for (int %(iterv)s = 0; %(iterv)s<%(suitable_n)s; %(iterv)s++)""" % locals() forloop += """for (int %(iterv)s = 0; %(iterv)s<%(suitable_n)s; %(iterv)s++)""" % locals()
...@@ -428,8 +428,8 @@ def make_reordered_loop(init_loop_orders, olv_index, dtypes, inner_task, sub, op ...@@ -428,8 +428,8 @@ def make_reordered_loop(init_loop_orders, olv_index, dtypes, inner_task, sub, op
update = pointer_update update = pointer_update
if i == 0: if i == 0:
if openmp: if openmp:
openmp_minsize = theano.config.openmp_minsize openmp_elemwise_minsize= theano.config.openmp_elemwise_minsize
forloop += """#pragma omp parallel for if( %(total)s >=%(openmp_minsize)s)\n""" % locals() forloop += """#pragma omp parallel for if( %(total)s >=%(openmp_elemwise_minsize)s)\n""" % locals()
forloop += "for(int %(iterv)s = 0; %(iterv)s<%(total)s; %(iterv)s++)" % locals() forloop += "for(int %(iterv)s = 0; %(iterv)s<%(total)s; %(iterv)s++)" % locals()
loop = """ loop = """
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论