Numba Logo

对于所有用户

  • 用户手册
    • Numba 的 ~5 分钟指南
      • 我该如何获取它?
      • Numba 适用于我的代码吗?
      • 什么是 对象模式?
      • 如何测量 Numba 的性能?
      • 它有多快?
      • Numba 是如何工作的?
      • 其他有趣的事情:
        • GPU 目标:
    • 概述
    • 安装
      • 兼容性
      • 在 x86/x86_64/POWER 平台上使用 conda 安装
      • 在 x86/x86_64 平台上使用 pip 安装
      • 在 Linux ARMv8 (AArch64) 平台上安装
      • 从源代码安装
        • 构建时环境变量和可选组件的配置
      • 依赖列表
      • 版本支持信息
      • 检查您的安装
    • 使用 @jit 编译 Python 代码
      • 基本用法
        • 惰性编译
        • 急切编译
      • 调用和内联其他函数
      • 签名规范
      • 编译选项
        • nopython
        • nogil
        • cache
        • parallel
    • 创建 NumPy 通用函数
      • @vectorize 装饰器
      • @guvectorize 装饰器
        • 标量返回值
        • 覆盖输入值
      • 动态通用函数
      • 动态广义通用函数
    • 使用 @jitclass 编译 Python 类
      • 基本用法
      • 通过 as_numba_type 从类型注释推断类成员类型
      • 显式指定 numba.typed 容器作为类成员
      • 支持操作
        • 支持的双下划线方法
      • 限制
      • 装饰器: @jitclass
        • jitclass()
    • 使用 @cfunc 创建C回调函数
      • 基本用法
      • 示例
      • 处理指针和数组内存
      • 处理C结构体
        • 使用 CFFI
        • 使用 numba.types.Record.make_c_struct
        • 完整示例
      • 签名规范
      • 编译选项
      • 从 Numba 调用 C 代码
    • 提前编译代码
      • 概述
        • 好处
        • 限制
      • 用法
        • 独立示例
        • Distutils 集成
        • 签名语法
    • 使用 @jit 实现自动并行化
      • 支持的操作
      • 显式并行循环
      • 示例
      • 不支持的操作
      • 诊断
        • 并行诊断报告部分
      • 调度
    • 使用 @stencil 装饰器
      • 基本用法
      • 模板参数
      • 内核形状推断和边界处理
      • Stencil 装饰器选项
        • neighborhood
        • func_or_mode
        • cval
        • standard_indexing
      • StencilFunc
      • Stencil 调用选项
        • out
    • 从JIT编译的代码中回调Python解释器
      • objmode 上下文管理器
        • objmode()
    • 使用 jit_module 自动模块即时编译
      • 示例用法
      • API
        • jit_module()
    • 性能提示
      • NoPython 模式
      • 循环
      • 对象模式的案例:循环提升
      • 快速数学
      • Parallel=True
      • Intel SVML
      • 线性代数
    • 线程层
      • 哪些线程层是可用的?
      • 设置线程层
      • 设置线程层选择的优先级
        • 选择一个线程层以实现安全的并行执行
        • 选择一个命名的线程层
      • 额外注释
      • 设置线程数
        • 限制线程数量的示例
      • 获取线程ID
        • API 参考
    • 命令行界面
      • 用法
      • 帮助
      • 系统信息
      • 调试
    • 故障排除和提示
      • 编译什么
      • 我的代码无法编译
      • 我的代码存在类型统一问题
      • 我的代码存在未类型化的列表问题
      • 对象模式 或 @jit(forceobj=True) 太慢
      • 禁用JIT编译
      • 使用 GDB 调试 JIT 编译的代码
        • JIT 调试选项
        • 示例调试用法
        • 全局覆盖调试设置
      • 在 nopython 模式下使用 Numba 的直接 gdb 绑定
        • 设置
        • 基本 gdb 支持
        • 使用 gdb 运行
        • 在代码中添加断点
        • 并行区域中的调试
        • 使用 gdb 命令语言
        • gdb 绑定是如何工作的?
      • 调试 CUDA Python 代码
        • 使用模拟器
        • 调试信息
    • 常见问题
      • 安装
        • Numba 无法导入
      • 编程
        • 我可以将一个函数作为参数传递给一个 jitted 函数吗?
        • 当我修改全局变量时,Numba 似乎并不在意。
        • 我可以调试一个jit编译的函数吗?
        • 如何创建一个Fortran顺序的数组?
        • 如何增加整数宽度?
        • 如何判断 parallel=True 是否生效?
      • 性能
        • Numba 会内联函数吗?
        • Numba 是否向量化数组计算(SIMD)?
        • 为什么我的循环没有向量化?
        • 为什么从解释器中使用 typed 容器时会更慢?
        • Numba 会自动并行化代码吗?
        • Numba 能加速短运行时间的函数吗?
        • 在JIT编译复杂函数时存在延迟,我该如何改进?
      • GPU 编程
        • 如何解决 CUDA 在分叉前初始化 错误?
      • 与其他工具的集成
        • 我可以“冻结”一个使用 Numba 的应用程序吗?
        • 在Spyder下运行脚本两次时出现错误
        • 为什么Numba会抱怨当前的区域设置?
        • 我如何获取 Numba 开发版本?
      • 杂项
        • 项目名称“Numba”从何而来?
        • 我如何在其他作品中引用/引用/致谢 Numba?
        • 如何为一个Numba问题编写一个最小的工作重现器?
    • 示例
      • Mandelbrot
      • 移动平均
      • 多线程
    • 演讲与教程
      • Numba 演讲
      • Numba 应用的演讲
      • 教程
  • 参考手册
    • 类型和签名
      • 理由
      • 签名
      • 基本类型
        • 数字
        • 数组
        • 函数
        • 杂项类型
      • 高级类型
        • 推理
        • NumPy 标量
        • 数组
        • 可选类型
        • 类型注解
    • 即时编译
      • JIT 函数
        • numba.jit()
      • 生成的JIT函数
      • 调度器对象
        • Dispatcher
      • 矢量化函数(ufuncs 和 DUFuncs)
        • numba.vectorize()
        • numba.guvectorize()
        • numba.DUFunc
      • C 回调
        • numba.cfunc()
        • CFunc
    • 预先编译
      • CC
        • CC.name
        • CC.output_dir
        • CC.output_file
        • CC.target_cpu
        • CC.verbose
        • CC.export()
        • CC.compile()
        • CC.distutils_extension()
    • 实用工具
      • 处理指针
        • numba.carray()
        • numba.farray()
    • 环境变量
      • Jit 标志
      • 调试
      • 编译选项
      • 缓存选项
      • GPU 支持
      • 线程控制
    • 支持的 Python 特性
      • 语言
        • 构造
        • 函数
        • 生成器
        • 异常处理
      • 内置类型
        • int, bool
        • float, complex
        • str
        • 元组
        • 同质元组
        • 异构元组
        • 列表
        • 设置
        • 类型化字典
        • 异构字面字符串键字典
        • 无
        • 字节, 字节数组, 内存视图
      • 内置函数
        • 哈希
      • 标准库模块
        • array
        • cmath
        • collections
        • ctypes
        • enum
        • math
        • operator
        • functools
        • random
        • heapq
      • 第三方模块
        • cffi
    • 支持的 NumPy 功能
      • 标量类型
        • 记录子类型
      • 数组类型
        • 数组访问
        • 结构化数组访问
        • 属性
        • 计算
        • 其他方法
      • 函数
        • 线性代数
        • 简化
        • 多项式
        • 其他功能
        • 字面数组
      • 模块
        • random
        • stride_tricks
      • 标准 ufuncs
        • 限制
        • 数学运算
        • 三角函数
        • 位操作函数
        • 比较函数
        • 浮动函数
        • 日期时间函数
    • 与Python语义的偏差
      • 边界检查
      • 异常和内存分配
      • 整数宽度
      • 布尔取反
      • 全局变量和闭包变量
      • 变量的零初始化
    • 浮点陷阱
      • 精度和准确度
        • 数学库实现
        • 线性代数
        • 混合类型操作
      • 警告和错误
    • 弃用通知
      • 抑制弃用警告
      • 弃用 List 和 Set 类型的反射
        • 弃用原因
        • 影响的示例
        • 日程安排
        • 推荐
        • 预期的替换
      • 在使用 @jit 时,对象模式 的 回退 行为的弃用
        • 弃用原因
        • 影响的示例
        • 日程安排
        • 推荐
      • 弃用 generated_jit
        • 弃用原因
        • 影响的示例
        • 日程安排
        • 推荐
        • 替换
      • 弃用 numba.pycc 模块
        • 弃用原因
        • 影响的示例
        • 日程安排
        • 推荐
        • 替换
      • 弃用和移除 CUDA 工具包 < 11.2 及 CC < 5.0 的设备
        • 推荐
        • 日程安排
      • 弃用旧式 NUMBA_CAPTURED_ERRORS
        • 弃用原因
        • 影响
        • 推荐
        • 日程安排

对于CUDA用户

  • Numba for CUDA GPUs
    • 概述
      • 术语
      • 编程模型
      • 要求
        • 支持的GPU
        • 软件
      • 缺失的 CUDA 功能
    • 编写 CUDA 内核
      • 介绍
      • 内核声明
      • 内核调用
        • 选择块大小
        • 多维块和网格
      • 线程定位
        • 绝对位置
        • 进一步阅读
    • 内存管理
      • 数据传输
        • 设备数组
      • 固定内存
      • 映射内存
      • 托管内存
      • 流
      • 共享内存和线程同步
        • 动态共享内存
      • 本地内存
      • 常量内存
      • 释放行为
        • defer_cleanup()
    • 编写设备函数
    • CUDA Python 中支持的 Python 特性
      • 语言
        • 执行模型
        • 浮点错误模型
        • 构造
        • 递归
      • 内置类型
      • 内置函数
      • 标准库模块
        • cmath
        • math
        • operator
      • NumPy 支持
      • CFFI 支持
    • CUDA 快速数学
    • 支持的原子操作
      • 示例
    • 协作组
      • 支持的功能
      • 使用网格组
      • 合作启动
        • _Kernel.max_cooperative_grid_blocks()
      • 应用程序和示例
    • 随机数生成
      • 一个简单的例子
      • 管理RNG状态大小和使用3D网格的示例
    • 设备管理
      • 设备选择
    • 设备列表
      • numba.cuda.cudadrv.devices.gpus
    • 设备 UUID
    • 示例
      • 向量加法
      • 一维热方程
      • 共享内存减少
      • 将点击数据划分为会话
      • JIT 函数 CPU-GPU 兼容性
      • 蒙特卡罗积分
      • 矩阵乘法
      • 调用 NumPy UFunc
    • 使用 CUDA 模拟器调试 CUDA Python
      • 使用模拟器
      • 支持的功能
    • GPU 归约
      • Reduce 类
        • Reduce
    • CUDA Ufuncs 和广义 Ufuncs
      • 示例:基本示例
      • 示例:调用设备功能
      • 广义 CUDA ufuncs
    • 共享 CUDA 内存
      • 进程间共享
        • 将设备数组导出到另一个进程
        • 从另一个进程导入IPC内存
    • CUDA 数组接口 (版本 3)
      • Python 接口规范
        • 同步
        • 生命周期管理
        • Numba中的生命周期管理
        • 指针属性
        • 与CUDA数组接口(版本0)的区别
        • 与CUDA数组接口(版本1)的区别
        • 与CUDA数组接口(版本2)的差异
        • 互操作性
    • 外部内存管理 (EMM) 插件接口
      • 外部内存管理概述
        • 释放策略的影响
        • 其他对象的管理
        • 异步分配与释放
      • 实现一个EMM插件
        • BaseCUDAMemoryManager
        • 主机专用 CUDA 内存管理器
        • IPC 句柄混合
      • 返回对象的类和结构
        • 内存指针
        • 内存信息
        • IPC
      • 设置EMM插件
        • 环境变量
        • 函数
    • CUDA 绑定
      • 每个线程的默认流
      • 路线图
    • 从Python内核调用外部函数
      • 设备功能 ABI
      • Python 中的声明
        • declare_device()
      • 传递指针
      • 链接和调用函数
      • C/C++ 支持
      • 完整示例
    • 为与其他语言一起使用而编译Python函数
      • 使用 C ABI
      • C 和 Numba ABI 示例
    • 磁盘内核缓存
      • 计算能力考虑
    • CUDA 次要版本兼容性
      • 安装
        • CUDA 12
        • CUDA 11
      • 启用MVC支持
      • 参考文献
    • CUDA 常见问题解答
      • nvprof 报告 “没有内核被分析”
  • CUDA Python 参考
    • CUDA 主机 API
      • 设备管理
        • 设备检测与查询
        • 上下文管理
        • 设备管理
      • 编译
        • compile()
        • compile_for_current_device()
        • compile_ptx()
        • compile_ptx_for_current_device()
      • 测量
        • 性能分析
        • 事件
      • 流管理
        • Stream
        • stream()
        • default_stream()
        • legacy_default_stream()
        • per_thread_default_stream()
        • external_stream()
      • 运行时
        • Runtime
        • is_supported_version()
    • CUDA 内核 API
      • 内核声明
        • jit()
      • 调度器对象
        • CUDADispatcher
      • 内在属性和函数
        • 线程索引
        • 内存管理
        • 同步与原子操作
        • 协作组
        • 内存栅栏
        • Warp 内部函数
        • 整数内在函数
        • 浮点数内部函数
        • 16位浮点内建函数
        • 控制流指令
        • 计时器内在函数
    • CUDA-特定类型
      • 向量类型
    • 内存管理
      • to_device()
      • device_array()
      • device_array_like()
      • pinned_array()
      • pinned_array_like()
      • mapped_array()
      • mapped_array_like()
      • managed_array()
      • pinned()
      • mapped()
      • 设备对象
        • DeviceNDArray
        • DeviceRecord
        • MappedNDArray
    • Libdevice 函数
      • 包装函数
        • abs()
        • acos()
        • acosf()
        • acosh()
        • acoshf()
        • asin()
        • asinf()
        • asinh()
        • asinhf()
        • atan()
        • atan2()
        • atan2f()
        • atanf()
        • atanh()
        • atanhf()
        • brev()
        • brevll()
        • byte_perm()
        • cbrt()
        • cbrtf()
        • ceil()
        • ceilf()
        • clz()
        • clzll()
        • copysign()
        • copysignf()
        • cos()
        • cosf()
        • cosh()
        • coshf()
        • cospi()
        • cospif()
        • dadd_rd()
        • dadd_rn()
        • dadd_ru()
        • dadd_rz()
        • ddiv_rd()
        • ddiv_rn()
        • ddiv_ru()
        • ddiv_rz()
        • dmul_rd()
        • dmul_rn()
        • dmul_ru()
        • dmul_rz()
        • double2float_rd()
        • double2float_rn()
        • double2float_ru()
        • double2float_rz()
        • double2hiint()
        • double2int_rd()
        • double2int_rn()
        • double2int_ru()
        • double2int_rz()
        • double2ll_rd()
        • double2ll_rn()
        • double2ll_ru()
        • double2ll_rz()
        • double2loint()
        • double2uint_rd()
        • double2uint_rn()
        • double2uint_ru()
        • double2uint_rz()
        • double2ull_rd()
        • double2ull_rn()
        • double2ull_ru()
        • double2ull_rz()
        • double_as_longlong()
        • drcp_rd()
        • drcp_rn()
        • drcp_ru()
        • drcp_rz()
        • dsqrt_rd()
        • dsqrt_rn()
        • dsqrt_ru()
        • dsqrt_rz()
        • erf()
        • erfc()
        • erfcf()
        • erfcinv()
        • erfcinvf()
        • erfcx()
        • erfcxf()
        • erff()
        • erfinv()
        • erfinvf()
        • exp()
        • exp10()
        • exp10f()
        • exp2()
        • exp2f()
        • expf()
        • expm1()
        • expm1f()
        • fabs()
        • fabsf()
        • fadd_rd()
        • fadd_rn()
        • fadd_ru()
        • fadd_rz()
        • fast_cosf()
        • fast_exp10f()
        • fast_expf()
        • fast_fdividef()
        • fast_log10f()
        • fast_log2f()
        • fast_logf()
        • fast_powf()
        • fast_sincosf()
        • fast_sinf()
        • fast_tanf()
        • fdim()
        • fdimf()
        • fdiv_rd()
        • fdiv_rn()
        • fdiv_ru()
        • fdiv_rz()
        • ffs()
        • ffsll()
        • finitef()
        • float2half_rn()
        • float2int_rd()
        • float2int_rn()
        • float2int_ru()
        • float2int_rz()
        • float2ll_rd()
        • float2ll_rn()
        • float2ll_ru()
        • float2ll_rz()
        • float2uint_rd()
        • float2uint_rn()
        • float2uint_ru()
        • float2uint_rz()
        • float2ull_rd()
        • float2ull_rn()
        • float2ull_ru()
        • float2ull_rz()
        • float_as_int()
        • floor()
        • floorf()
        • fma()
        • fma_rd()
        • fma_rn()
        • fma_ru()
        • fma_rz()
        • fmaf()
        • fmaf_rd()
        • fmaf_rn()
        • fmaf_ru()
        • fmaf_rz()
        • fmax()
        • fmaxf()
        • fmin()
        • fminf()
        • fmod()
        • fmodf()
        • fmul_rd()
        • fmul_rn()
        • fmul_ru()
        • fmul_rz()
        • frcp_rd()
        • frcp_rn()
        • frcp_ru()
        • frcp_rz()
        • frexp()
        • frexpf()
        • frsqrt_rn()
        • fsqrt_rd()
        • fsqrt_rn()
        • fsqrt_ru()
        • fsqrt_rz()
        • fsub_rd()
        • fsub_rn()
        • fsub_ru()
        • fsub_rz()
        • hadd()
        • half2float()
        • hiloint2double()
        • hypot()
        • hypotf()
        • ilogb()
        • ilogbf()
        • int2double_rn()
        • int2float_rd()
        • int2float_rn()
        • int2float_ru()
        • int2float_rz()
        • int_as_float()
        • isfinited()
        • isinfd()
        • isinff()
        • isnand()
        • isnanf()
        • j0()
        • j0f()
        • j1()
        • j1f()
        • jn()
        • jnf()
        • ldexp()
        • ldexpf()
        • lgamma()
        • lgammaf()
        • ll2double_rd()
        • ll2double_rn()
        • ll2double_ru()
        • ll2double_rz()
        • ll2float_rd()
        • ll2float_rn()
        • ll2float_ru()
        • ll2float_rz()
        • llabs()
        • llmax()
        • llmin()
        • llrint()
        • llrintf()
        • llround()
        • llroundf()
        • log()
        • log10()
        • log10f()
        • log1p()
        • log1pf()
        • log2()
        • log2f()
        • logb()
        • logbf()
        • logf()
        • longlong_as_double()
        • max()
        • min()
        • modf()
        • modff()
        • mul24()
        • mul64hi()
        • mulhi()
        • nearbyint()
        • nearbyintf()
        • nextafter()
        • nextafterf()
        • normcdf()
        • normcdff()
        • normcdfinv()
        • normcdfinvf()
        • popc()
        • popcll()
        • pow()
        • powf()
        • powi()
        • powif()
        • rcbrt()
        • rcbrtf()
        • remainder()
        • remainderf()
        • remquo()
        • remquof()
        • rhadd()
        • rint()
        • rintf()
        • round()
        • roundf()
        • rsqrt()
        • rsqrtf()
        • sad()
        • saturatef()
        • scalbn()
        • scalbnf()
        • signbitd()
        • signbitf()
        • sin()
        • sincos()
        • sincosf()
        • sincospi()
        • sincospif()
        • sinf()
        • sinh()
        • sinhf()
        • sinpi()
        • sinpif()
        • sqrt()
        • sqrtf()
        • tan()
        • tanf()
        • tanh()
        • tanhf()
        • tgamma()
        • tgammaf()
        • trunc()
        • truncf()
        • uhadd()
        • uint2double_rn()
        • uint2float_rd()
        • uint2float_rn()
        • uint2float_ru()
        • uint2float_rz()
        • ull2double_rd()
        • ull2double_rn()
        • ull2double_ru()
        • ull2double_rz()
        • ull2float_rd()
        • ull2float_rn()
        • ull2float_ru()
        • ull2float_rz()
        • ullmax()
        • ullmin()
        • umax()
        • umin()
        • umul24()
        • umul64hi()
        • umulhi()
        • urhadd()
        • usad()
        • y0()
        • y0f()
        • y1()
        • y1f()
        • yn()
        • ynf()

对于高级用户和开发者

  • 扩展 Numba
    • 高级扩展API
      • 实现功能
      • 实现方法
        • overload_method()
      • 实现类方法
        • overload_classmethod()
      • 实现属性
      • 导入 Cython 函数
      • 实现内部函数
      • 实现可变结构
        • 定义一个 StructRef
        • 在 StructRef 上定义一个方法
        • numba.experimental.structref API 参考
      • 确定一个函数是否已经被 jit 家族的装饰器包装
        • extending.is_jitted()
    • 低级扩展API
      • 打字
        • typeof_impl.register()
        • type_callable()
        • as_numba_type.register()
      • 降低
        • 原生操作
        • 常量
        • 装箱和拆箱
    • 示例:区间类型
      • 扩展类型层
        • 创建一个新的 Numba 类型
        • Python 值的类型推断
        • Python 注解的类型推断
        • 操作的类型推断
      • 扩展降低层
        • 定义原生区间的数据模型
        • 暴露数据模型属性
        • 公开属性
        • 实现构造函数
        • 装箱和拆箱
      • 使用它
      • 结论
    • 使用 @overload 的指南
      • 具体示例
      • 为NumPy函数实现``@overload``
    • 使用入口点注册扩展
      • 添加对“Init”入口点的支持
      • 测试你的入口点
  • 开发者手册
    • 为 Numba 贡献
      • 通信
        • 实时聊天
        • 每周会议
        • Bug 追踪器
      • 开始设置
        • 构建环境
        • 构建 Numba
        • 运行测试
        • 运行覆盖率
      • 开发规则
        • 代码审查
        • 代码格式大规模变更的政策
        • 编码约定
        • 发行说明
        • 稳定性
        • 平台支持
        • 持续集成测试
        • 类型注解和运行时类型检查
        • 有助于处理拉取请求的事项
        • 为什么我的拉取请求/问题似乎被忽略了?
      • 文档
        • 主文档
        • 网站首页
    • Numba 发布流程
      • 主要发布候选清单
      • 后续的候选发布版、最终发布版和补丁发布版
      • 生成发布说明
    • Numba 仓库的地图
      • 支持文件
        • 构建与打包
        • 持续集成
        • 文档
      • Numba 源代码
        • 公共API
        • 调度
        • 编译器流水线
        • 类型管理
        • 编译扩展
        • 杂项支持
        • 核心 Python 数据类型
        • 数学
        • ParallelAccelerator
        • Stencil
        • 调试支持
        • 类型签名 (CPU)
        • 目标实现(CPU)
        • Ufunc 编译器和运行时
        • 单元测试 (CPU)
        • 命令行工具
        • CUDA GPU 目标
    • Numba 架构
      • 介绍
      • 编译器架构
      • 上下文
      • 编译器阶段
        • 阶段 1: 分析字节码
        • 阶段 2:生成 Numba IR
        • 阶段 3:重写无类型 IR
        • 阶段 4:推断类型
        • 阶段 5a:重写类型化 IR
        • 阶段 5b:执行自动并行化
        • 阶段 6a:生成 nopython LLVM IR
        • 阶段 6b:生成对象模式 LLVM IR
        • 第7阶段:将LLVM IR编译为机器代码
    • 多态分派
      • 要求
        • 编译时 vs. 运行时
      • 类型解析
        • 类型代码
        • 硬编码的快速路径
        • 基于指纹的类型代码缓存
        • 摘要
      • 专业化选择
        • 隐式转换规则
        • 候选者和最佳匹配
        • 实现
        • 摘要
      • 杂项
    • 关于生成器的说明
      • 术语
      • 功能分析
      • 生成器结构
        • 布局
        • 分配
      • 编译为本机代码
        • next() 函数
    • Numba 运行时的注意事项
      • 内存管理
        • 与 CPython 合作
        • 编译器端协作
        • 优化
        • 重要假设
        • 旧优化过程的特性
        • 调试泄漏
        • 调试 C 语言中的内存泄漏
      • 递归支持
      • 从C代码中使用NRT
      • 未来计划
    • 使用Numba重写传递进行优化和乐趣
      • 概述
      • 重写过程
        • The Rewrite 基类
        • 子类化 Rewrite
        • 重载 Rewrite.match()
        • 重载 Rewrite.apply()
      • 重写注册表
      • 案例研究:数组表达式
        • The RewriteArrayExprs.match() 方法
        • The RewriteArrayExprs.apply() 方法
        • 该 _lower_array_expr() 函数
      • 结论与注意事项
    • 活跃变量分析
      • 关于实时变量分析行为的注释
        • 变量在定义前被删除
    • 列表
      • 新样式列表
        • 内置列表
        • 数学列表
        • cmath 的列表
        • numpy 的列表
      • 旧式列表
        • 降低清单
    • 关于模板的使用说明
      • 模板装饰器
      • 处理三种模式
        • 在 jit 上下文之外
        • 不带 parallel=True 的 Jit
        • 使用 parallel=True 进行 Jit
      • 创建模板函数
      • 引发的异常
    • 自定义编译器
      • 实现编译器传递
        • 编译器传递类
      • 调试编译器传递
        • 观察IR变化
        • 传递执行时间
    • 内联说明
      • 使用 numba.jit() 的示例
      • 使用示例 numba.extending.overload()
      • 使用一个函数来限制递归函数的内联深度
    • 环境对象
      • 实现
        • 序列化
        • 用法
    • 关于哈希的说明
      • 实现
        • Unicode 哈希缓存差异
        • PYTHONHASHSEED 的适应性
    • 关于 sys.monitoring 的说明
      • 这对Numba意味着什么?
      • Numba 在实践中做了什么?
    • 缓存说明
      • 实现
        • 缓存能力的要求
        • 与缓存兼容的功能
        • 缓存限制
        • 缓存共享
        • 缓存清除
        • 相关环境变量
    • 关于 Numba 的线程实现说明
      • 线程掩码
        • 编程模型
        • 实现
        • 注意事项
        • 在代码生成中的使用
        • 并行块大小详情
    • 关于字面量类型的注释
      • Literal 类型
        • Literal
        • literal()
        • unliteral()
        • maybe_literal()
      • 指定为字面类型
        • literally()
        • 代码示例
        • 内部细节
      • 扩展内部
        • SentryLiteralArgs
        • BoundLiteralArgs
        • sentry_literal_args()
    • 关于 LLVM 时间安排的注意事项
      • 获取 LLVM 传递时间
        • 代码示例
        • 自定义分析的API
    • 调试笔记
      • Memcheck
    • 调试 Numba 测试套件
      • 生成 JUnit XML 输出
      • 调试由崩溃引起的超时
    • 事件 API
      • Event
        • Event.data
        • Event.is_end
        • Event.is_failed
        • Event.is_start
        • Event.kind
        • Event.status
      • EventStatus
      • Listener
        • Listener.notify()
        • Listener.on_end()
        • Listener.on_start()
      • RecordingListener
        • RecordingListener.on_end()
        • RecordingListener.on_start()
      • TimingListener
        • TimingListener.done
        • TimingListener.duration
        • TimingListener.on_end()
        • TimingListener.on_start()
      • broadcast()
      • end_event()
      • install_listener()
      • install_recorder()
      • install_timer()
      • register()
      • start_event()
      • trigger_event()
      • unregister()
    • 关于目标扩展的说明
      • 从调用者继承编译器标志
        • ConfigStack
        • 编译器标志
    • 字节码处理的注意事项
      • LOAD_FAST_AND_CLEAR 操作码, Expr.undef IR 节点, UndefVar 类型
        • 特殊情况 1: LOAD_FAST_AND_CLEAR 可能会加载一个未定义的变量
        • 特殊情况2:LOAD_FAST_AND_CLEAR 加载未定义的变量
    • Numba 使命宣言
      • 介绍
      • 背景
      • 项目目标
  • Numba 增强提案
    • 已实施的提案
      • NBEP 1: 整数类型变化
        • 当前语义
        • 提案:可预测的宽度保持输入
        • 提案影响
      • NBEP 7: CUDA 外部内存管理插件
        • 背景与目标
        • 要求
        • 插件开发者接口
        • 示例实现 - RAPIDS 内存管理器 (RMM) 插件
        • Numba 内部变化
        • 原型设计 / 实验性实现
    • 其他提案
      • NBEP 2: 扩展点
        • 高级 API
        • 打字
        • 代码生成
      • NBEP 3: JIT 类
        • 介绍
        • 提案:jit-类
      • NBEP 4: 定义C回调
        • 基本用法
        • 传递数组数据
        • 错误处理
        • 延迟主题
      • NBEP 5: 类型推断
        • 介绍
        • Numba 类型语义
        • 类型推断
      • NBEP 6: 类型递归
        • 介绍
        • 当前状态
        • 解决方案
        • 限制
  • 术语表
  • 发行说明
    • Towncrier 生成的笔记:
      • 版本 0.60.0 (2024年6月13日)
        • 亮点
        • 新功能
        • 改进
        • NumPy 支持
        • CUDA API 变更
        • Bug 修复
        • 弃用
        • 已过时的弃用
        • 文档变更
        • 拉取请求:
        • 作者:
      • 版本 0.59.1 (2024年3月18日)
        • CUDA API 变更
        • 性能提升与变更
        • Bug 修复
        • 拉取请求:
        • 作者:
      • 版本 0.59.0 (2024年1月31日)
        • 亮点
        • 新功能
        • 改进
        • NumPy 支持
        • CUDA API 变更
        • 性能提升与变更
        • Bug 修复
        • 更改
        • 弃用
        • 已过时的弃用
        • 基础设施相关变更
        • 拉取请求:
        • 作者:
      • 版本 0.58.1 (2023年10月17日)
        • NumPy 支持
        • Bug 修复
        • 拉取请求
        • 作者
      • 版本 0.58.0 (2023年9月20日)
        • 亮点
        • 新功能
        • 改进
        • NumPy 支持
        • CUDA 变更
        • Bug 修复
        • 更改
        • 弃用
        • 拉取请求
        • 作者
    • 非 Towncrier 生成的注释:
      • 版本 0.57.1 (2023年6月21日)
      • 版本 0.57.0 (2023年5月1日)
      • 版本 0.56.4 (2022年11月3日)
      • 版本 0.56.3 (2022年10月13日)
      • 版本 0.56.2 (2022年9月1日)
      • 版本 0.56.1 (未发布)
      • 版本 0.56.0 (2022年7月25日)
      • 版本 0.55.2 (2022年5月25日)
      • 版本 0.55.1 (2022年1月27日)
      • 版本 0.55.0 (2022年1月13日)
      • 版本 0.54.1 (2021年10月7日)
      • 版本 0.54.0 (2021年8月19日)
      • 版本 0.53.1 (2021年3月25日)
      • 版本 0.53.0 (2021年3月11日)
      • 版本 0.52.0 (2020年11月30日)
      • 版本 0.51.2 (2020年9月2日)
      • 版本 0.51.1 (2020年8月26日)
      • 版本 0.51.0 (2020年8月12日)
      • 版本 0.50.1 (2020年6月24日)
      • 版本 0.50.0 (2020年6月10日)
      • 版本 0.49.1 (2020年5月7日)
      • 版本 0.49.0 (2020年4月16日)
      • 版本 0.48.0 (2020年1月27日)
      • 版本 0.47.0 (2020年1月2日)
      • 版本 0.46.0
      • 版本 0.45.1
      • 版本 0.45.0
      • 版本 0.44.1
      • 版本 0.44.0
      • 版本 0.43.1
      • 版本 0.43.0
      • 版本 0.42.1
      • 版本 0.42.0
      • 版本 0.41.0
      • 版本 0.40.1
      • 版本 0.40.0
      • 版本 0.39.0
      • 版本 0.38.1
      • 版本 0.38.0
      • 版本 0.37.0
      • 版本 0.36.2
      • 版本 0.36.1
      • 版本 0.35.0
      • 版本 0.34.0
      • 版本 0.33.0
      • 版本 0.32.0
      • 版本 0.31.0
      • 版本 0.30.1
      • 版本 0.30.0
      • 版本 0.29.0
      • 版本 0.28.1
      • 版本 0.28.0
      • 版本 0.27.0
      • 版本 0.26.0
      • 版本 0.25.0
      • 版本 0.24.0
      • 版本 0.23.1
      • 版本 0.23.0
      • 版本 0.22.1
      • 版本 0.22.0
      • 版本 0.21.0
      • 版本 0.20.0
      • 版本 0.19.2
      • 版本 0.19.1
      • 版本 0.19.0
      • 版本 0.18.2
      • 版本 0.18.1
      • 版本 0.17.0
      • 版本 0.16.0
      • 版本 0.15.1
      • 版本 0.15
      • 版本 0.14
      • 版本 0.13.4
      • 版本 0.13.3
      • 版本 0.13.2
      • 版本 0.13.1
      • 版本 0.13
      • 版本 0.12.2
      • 版本 0.12.1
      • 版本 0.12
      • 版本 0.11
      • 版本 0.10
      • 版本 0.9
      • 版本 0.8
      • 版本 0.7.2
      • 版本 0.7.1
      • 版本 0.7
      • 版本 0.6.1
      • 版本 0.6
      • 版本 0.5
      • 版本 0.4
      • 版本 0.3.2
      • 版本 0.3
      • 版本 0.2
Numba
  • 搜索


© 版权所有 2012-2020, Anaconda, Inc. and others。

利用 Sphinx 构建,使用的 主题 由 Read the Docs 开发.