小编Max*_*axB的帖子

如何在程序中设置OpenMP线程数?

运行程序为

$ OMP_NUM_TRHEADS=4 ./a.out
Run Code Online (Sandbox Code Playgroud)

将激活的OpenMP线程数限制为4,如所示htop。但是,如果不是将OMP_NUM_THREADS环境变量绑定到中Bash,则调用

setenv("OMP_NUM_THREADS", "4", 1);
Run Code Online (Sandbox Code Playgroud)

main调用任何启用OpenMP的功能开始之前,这似乎没有任何效果。

为什么会这样呢?如果有可能,如何在程序中设置OpenMP线程数?

c c++ linux multithreading openmp

5
推荐指数
1
解决办法
1728
查看次数

Python和冲突的模块名称

似乎如果一个文件被调用io.py并且它被导入scipy.ndimage,后者在某种程度上最终无法找到它自己的子模块,也被称为io:

$ echo "import scipy.ndimage" > io.py
$ python io.py 
Traceback (most recent call last):
  File "io.py", line 1, in <module>
    import scipy.ndimage
  File "/usr/lib/python2.7/dist-packages/scipy/__init__.py", line 70, in <module>
    from numpy import show_config as show_numpy_config
  File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 153, in <module>
    from . import add_newdocs
  File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 13, in <module>
    from numpy.lib import add_newdoc
  File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 22, in <module>
    from .npyio import *
  File "/usr/lib/python2.7/dist-packages/numpy/lib/npyio.py", line 4, in <module>
    from . import …
Run Code Online (Sandbox Code Playgroud)

python numpy scipy

5
推荐指数
2
解决办法
1013
查看次数

Numpy 是否在 x += 2 * y 等表达式中分配临时数组?

当评估像这样的表达式时

x += 2 * y
Run Code Online (Sandbox Code Playgroud)

它是Numpy首先分配一个新的临时数组来保存2*y,将其添加到x然后删除它,还是可以就地执行整个操作?

python performance numpy

5
推荐指数
1
解决办法
790
查看次数

如何在未排序数组或其段中找到第 k 个最小元素?

Rust 是否具有在数组或数组段中查找第k个最小元素的函数?

(类似于std::nth_element在 C++ 中)

arrays rust

5
推荐指数
1
解决办法
307
查看次数

是否有可能在每个训练步骤中获得目标函数值?

在通常的TensorFlow训练循环中,例如

train_op = tf.train.AdamOptimizer().minimize(cross_entropy)

with tf.Session() as sess:
    for i in range(num_steps):
        # ...
        train_op.run(feed_dict = feed_dict)
Run Code Online (Sandbox Code Playgroud)

train_op.run回报None.

但是,有时收集中间结果很有用,例如目标值或准确度.

添加额外的sess.run调用需要再次进行前向传播,从而增加运行时间:

train_op = tf.train.AdamOptimizer().minimize(cross_entropy)

with tf.Session() as sess:
    for i in range(num_steps):
        # ...
        o, a = sess.run([objective, accuracy], feed_dict = feed_dict)
        train_op.run(feed_dict = feed_dict)
Run Code Online (Sandbox Code Playgroud)

是否可以一次性在TensorFlow中执行此操作?


编辑:

人们建议

sess.run([objective, accuracy, train_op], feed_dict = feed_dict)
Run Code Online (Sandbox Code Playgroud)

但结果取决于列表元素的执行顺序:

[objective, accuracy, train_op]
Run Code Online (Sandbox Code Playgroud)

这似乎是未定义的 - 根据是否使用CUDA,您会得到不同的结果.

python machine-learning deep-learning tensorflow

5
推荐指数
1
解决办法
483
查看次数

如何在 TensorBoard 中显示每个节点的内存?

在另一个问题中,有人展示了他的 TensorBoard 的屏幕截图,显示了每个节点的内存使用情况:

在此处输入图片说明

我在 Tensorboard 的实验中从未见过这些。我所做的就是打电话

writer = tf.summary.FileWriter('/tmp/tensorboard', sess.graph)
Run Code Online (Sandbox Code Playgroud)

之后sess.run()。也许我需要添加一些“摘要”来记录内存使用情况?

tensorflow tensorboard

5
推荐指数
1
解决办法
2369
查看次数

.NET Core 可以用于构建本机 Linux 二进制文件吗?

如果问题看起来很基本,我很抱歉,但我做了一些谷歌搜索并找不到明确的答案(也许我不知道正确的关键字)。

.NET Core 能否用于从 C#/F# 源构建本机命令行 Linux 二进制文件?(我知道 Mono)

c# f# .net-native .net-core corert

5
推荐指数
1
解决办法
2650
查看次数

如果发生检查

是否存在差异检查?这在这里有效:

Welcome to SWI-Prolog (threaded, 64 bits, version 8.3.7)

?- set_prolog_flag(occurs_check, true). 
true.

?- dif(X,f(Y)), X = Y.
X = Y.
Run Code Online (Sandbox Code Playgroud)

但以上是不可行的,因为发生检查是一个全局标志,我得到以下信息:

SWI-Prolog console for thread 3

?- X=f(X).
false.
Run Code Online (Sandbox Code Playgroud)

prolog prolog-dif occurs-check

5
推荐指数
1
解决办法
124
查看次数

如何在 SWI-Prolog 的所有统一中启用发生检查?

根据维基百科

为所有统一提供声音统一的实现是 Qu-Prolog 和 Strawberry Prolog 以及(可选地,通过运行时标志):XSB、SWI-Prolog和 Tau Prolog。

但是,当我这样做时,apropos(occur)它只会找到unify_with_occurs_check/2. 该男子页面没有提到“出现”要么。如何为 SWI-Prolog 中的所有统一启用发生检查?

prolog swi-prolog occurs-check

5
推荐指数
1
解决办法
126
查看次数

Prolog 如何得出 3 &lt; 2 之类的无意义结果?

我正在阅读的一篇论文如下:

Plaisted [3] 表明,可以使用一阶谓词演算语义编写形式上正确的 PROLOG 程序,并导出无意义的结果,例如 3 < 2。

它指的是 Prologs 在当时(1980 年代)没有使用发生检查的事实。

不幸的是,它引用的论文是在付费墙后面。我仍然希望看到这样的例子。直觉上,感觉就像省略发生检查只是将结构的范围扩大到包括循环结构(但根据作者的说法,这种直觉一定是错误的)。


我希望这个例子不是

smaller(3, 2) :- X = f(X).
Run Code Online (Sandbox Code Playgroud)

那会令人失望。

prolog unification occurs-check

5
推荐指数
1
解决办法
125
查看次数