我正在阅读TF性能指南中的数据加载部分。为了预取上面写着,
tf.data API通过tf.data.Dataset.prefetch转换提供了一种软件流水线机制,它可以用来将数据产生的时间和数据消耗的时间解耦。特别是,转换使用后台线程和内部缓冲区在请求输入数据集之前从输入数据集预取元素。要预取的元素数应等于(或可能大于)单个培训步骤消耗的批数。您可以手动调优此值,或者将其设置为tf.data.experimental.AUTOTUNE,这将提示tf.data运行时在运行时动态优化该值。
自动图腾在内部做什么?哪种算法,启发式被应用?
另外,在实践中,会进行什么样的手动调优?
发布于 2019-12-26 20:27:54
tf.data建立了输入管道的性能模型,并运行了一种优化算法,以便在指定为AUTOTUNE的所有参数之间找到一个很好的CPU预算分配。当输入管道运行时,tf.data跟踪每个操作所花费的时间,以便将这些时间输入优化算法。
OptimizationOptions对象在某种程度上控制了自动图腾的行为。
https://stackoverflow.com/questions/56613155
复制相似问题