Neh*_*kar 7 python caching numpy joblib
我正在使用Joblib在我的python脚本中缓存计算成本高昂的函数的结果.函数的输入参数和返回值是numpy数组.缓存适用于我的python脚本的单次运行.现在我想并行生成我的python脚本的多个运行,以便在实验中扫描一些参数.(函数的定义在所有运行中保持相同).
有没有办法在多个并行运行的python脚本之间共享joblib缓存?这将节省许多功能评估,这些功能评估在不同的运行中重复,但不会在单次运行中重复.我在Joblib的文档中找不到这是否可行
指定要使用的常用,修复cachedir和装饰要缓存的功能
from joblib import Memory
mem = Memory(cachedir=cachedir)
@mem.cache
def f(arguments):
"""do things"""
pass
Run Code Online (Sandbox Code Playgroud)
或者干脆
def g(arguments):
pass
cached_g = mem.cache(g)
Run Code Online (Sandbox Code Playgroud)
然后,即使您跨进程跨机器工作,如果程序的所有实例都可以访问cachedir,那么可以透明地缓存常用函数调用.
| 归档时间: |
|
| 查看次数: |
1531 次 |
| 最近记录: |