numpy.distutils.ccompiler_opt.CCompilerOpt#

class numpy.distutils.ccompiler_opt.CCompilerOpt(ccompiler, cpu_baseline='min', cpu_dispatch='max', cache_path=None)[源代码]#

一个旨在为 CCompiler 提供额外构建选项的辅助类,以有效控制与 CPU 特性直接相关的编译器优化。

属性:
conf_cache_factors
conf_tmp_path

方法

cache_flush()

强制更新缓存。

cc_normalize_flags(flags)

消除因收集隐含特性标志而引起的冲突。

conf_features_partial()

返回一个由平台支持的 CPU 特性字典,并将其余未定义的选项累积到 conf_features 中。返回的字典与类属性 conf_features 具有相同的规则和注意事项,并且它会覆盖在 'conf_features' 中设置的任何选项。

cpu_baseline_flags()

返回最终 CPU 基线编译器标志的列表

cpu_baseline_names()

返回最终 CPU 基线特性名称的列表

cpu_dispatch_names()

返回最终 CPU 调度特性名称的列表

dist_compile(sources, flags[, ccompiler])

封装 CCompiler.compile()

dist_error(*args)

引发编译器错误

dist_fatal(*args)

引发 distutils 错误

dist_info()

返回一个包含 (平台、编译器、额外参数) 信息的元组,抽象类 '_CCompiler' 需要它来发现平台环境。

dist_load_module(name, path)

从文件中加载模块,抽象类 '_Cache' 需要它。

dist_log(*args[, stderr])

打印控制台消息

dist_test(source, flags[, macros])

如果 'CCompiler.compile()' 能够使用某些标志编译源文件,则返回 True。

feature_ahead(names)

返回 'names' 中在删除所有隐含特性并保留原始特性后的特性列表。

feature_c_preprocessor(feature_name[, tabs])

生成 C 预处理器定义和 CPU 特性的包含头文件。

feature_detect(names)

返回一个需要检测的 CPU 特性列表,按兴趣从低到高排序。

feature_get_til(names, keyisfalse)

feature_implies_c() 相同,但当通过参数 'keyisfalse' 提供的特性选项为 False 时,停止收集隐含特性,并对返回的特性进行排序。

feature_implies(names[, keep_origins])

返回 'names' 所隐含的 CPU 特性集合

feature_implies_c(names)

与 feature_implies() 相同,但结合了 'names'

feature_is_exist(name)

如果某个特性存在并包含在 _Config.conf_features 中,则返回 True。

feature_names([names, force_flags, macros])

返回一个由平台和 C 编译器支持的 CPU 特性名称集合。

feature_sorted(names[, reverse])

对 CPU 特性列表按最低兴趣度排序。

feature_untied(names)

与 'feature_ahead()' 相同,但如果两个特性相互隐含,则保留最高兴趣的特性。

generate_dispatch_header(header_path)

生成调度头文件,其中包含为已启用的 CPU 基线和可调度特性而设计的平台特定指令集的 #definitions 和头文件。

is_cached()

如果类是从缓存文件加载的,则返回 True

me(cb)

一个静态方法,可以作为装饰器来动态缓存某些方法。

parse_targets(source)

获取并解析定义目标 CPU 特性所需的配置语句,这些语句应在源文件顶部,在 C 注释之间声明,并以特殊标记 @targets 开头。

try_dispatch(sources[, src_dir, ccompiler])

编译一个或多个可调度的源文件并生成目标文件,同时生成抽象的 C 配置头文件和宏,这些将在后续的最终运行时调度过程中使用。

cache_hash

cc_test_cexpr

cc_test_flags

feature_can_autovec

feature_extra_checks

feature_flags

feature_is_supported

feature_test

report