在numpy中使用mkl_set_num_threads

在numpy中使用mkl_set_num_threads,第1张

在numpy中使用mkl_set_num_threads

Ophion引导了我正确的方法。尽管有文档,但必须

mkl_set_num_thread
通过引用来传递参数

现在我已经定义了函数,用于获取和设置线程

import numpyimport ctypesmkl_rt = ctypes.CDLL('libmkl_rt.so')mkl_get_max_threads = mkl_rt.mkl_get_max_threadsdef mkl_set_num_threads(cores):    mkl_rt.mkl_set_num_threads(ctypes.byref(ctypes.c_int(cores)))mkl_set_num_threads(4)print mkl_get_max_threads() # says 4

他们按预期工作。

编辑:根据Rufflewind,C函数的名称以大写形式编写,期望按值表示参数:

import ctypesmkl_rt = ctypes.CDLL('libmkl_rt.so')mkl_set_num_threads = mkl_rt.MKL_Set_Num_Threadsmkl_get_max_threads = mkl_rt.MKL_Get_Max_Threads


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655503.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存