MindSpore解读评注(3) 对mindspore\ccsrc\minddata\dataset\api\config.cc的注释
对config.cc的注释 知识浅薄,还有许多未理解之处,欢迎各位纠正、讨论 路径:mindspore\ccsrc\minddata\dataset\api\config.cc config即配置,是为了解决这个问题:把你所有的微服务配置通过某个平台比如 github, gitlib 或者其他的git仓库 进行集中化管理(当然,也可以放在本地)
#include "minddata/dataset/core/config_manager.h"//在当前目录下寻找 引入自己的头文件 下同
#include "minddata/dataset/core/global_context.h"
#include "minddata/dataset/include/dataset/config.h"
#include "minddata/dataset/util/log_adapter.h"
#include "minddata/dataset/util/status.h"
//创建一个名为mindspore的空间,并在其中嵌套一个名为parse(作语法分析)的空间
namespace mindspore {
namespace dataset {
// 这是一个一次性全局初始值设定项,其中包含实例化单例的调用。
// 它是外部api调用,而不是GlobalContext的直接成员。
// Config operations for setting and getting the configuration.
namespace config {//设置和获取配置的配置操作。
std::shared_ptr<ConfigManager> _config = GlobalContext::config_manager();
// Function to set the seed to be used in any random generator
bool set_seed(int32_t seed) {
//函数设置种子用于任何随机发生器
if (seed < 0) {//判断
MS_LOG(ERROR) << "Seed given is not within the required range: " << seed;//种子不是在要求范围内
return false;
}
_config->set_seed((uint32_t)seed);
//设置种子用于任何随机发生器
return true;
}
// Function to get the seed
uint32_t get_seed() { return _config->seed(); }//获取种子
// Function to set the number of rows to be prefetched
bool set_prefe为tch_size(int32_t prefetch_size) {
//命令功能为设置预取行数
if (prefetch_size <= 0) {//判断
MS_LOG(ERROR) << "Prefetch size given is not within the required range: " << prefetch_size;
//预取大小给定并非必需的范围内
return false;
}
_config->set_op_connector_size(prefetch_size);
//得到预取大小的行数的函数
return true;
}
// Function to get prefetch size in number of rows
int32_t get_prefetch_size() { return _config->op_connector_size(); }
//函数来得到预取大小的行数
// Function to set the default number of parallel workers
bool set_num_parallel_workers(int32_t num_parallel_workers) {
//命令功能为设置默认的平行的工作器
if (num_parallel_workers <= 0) {
MS_LOG(ERROR) << "Number of parallel workers given is not within the required range: " << num_parallel_workers;
//许多并行的工作不是在要求范围内
return false;
}
_config->set_num_parallel_workers(num_parallel_workers);
//设置默认的平行的工作器
return true;
}
// Function to get the default number of parallel workers
int32_t get_num_parallel_workers() { return _config->num_parallel_workers(); }
//命令功能为获取设置默认的并行工作器数量
// Function to set the default interval (in milliseconds) for monitor sampling
bool set_monitor_sampling_interval(int32_t interval) {
//命令功能为设置监控采样的默认间隔(毫秒)
if (interval <= 0) {
MS_LOG(ERROR) << "Interval given is not within the required range: " << interval;
//时间间隔不是在要求范围内
return false;
}
_config->set_monitor_sampling_interval((uint32_t)interval);
//设置监控采样的默认间隔(毫秒)
return true;
}
// Function to get the default interval of performance monitor sampling
int32_t get_monitor_sampling_interval() { return _config->monitor_sampling_interval(); }
//对性能监视器的默认间隔采样
// Function to set the default timeout (in seconds) for DSWaitedCallback
//命令功能为设置默认为DSWaitedCallback超时时间(以秒为单位)
bool set_callback_timeback(int32_t timeout) {//设置默认为DSWaitedCallback超时时间(以秒为单位)
if (timeout <= 0) {//判断
MS_LOG(ERROR) << "Timeout given is not within the required range: " << timeout;
//超时 不是在要求范围内
return false;
}
_config->set_callback_timeout((uint32_t)timeout);
//设置默认超时时间
return true;
}
int32_t get_callback_timeout() { return _config->callback_timeout(); }
//得到DSWaitedCallback的默认超时
// Function to load configurations from a file
bool load(const std::vector<char> &file) {//功能为加载配置文件
Status rc = _config->LoadFile(CharToString(file));
if (rc.IsError()) {//判断并加载配置文件
MS_LOG(ERROR) << rc << file;
return false;//返回失败
}
return true;//返回成功
}
} // namespace config
} // namespace dataset
} // namespace mindspore
以上即为本篇的所有内容,因学识与能力有限,如有不足之处,请多多包涵与指教.
版权声明:本文为qq_53904578原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。