兼容性与限制
查看安装版本、构建信息、兼容范围与功能限制。
本页目录
查看版本信息
在已安装 ArcTN 的 Python 环境中查看包版本:
python -c 'import arctn; print(arctn.__version__)'
使用 Rust 源码时,在仓库根目录编译并查看命令行程序的构建信息:
cargo run --release --bin tnpath -- --build-info
构建信息包含源码版本及 mt、mpi 等可选功能是否启用。这里查看的是当前源码编译出的程序,可能与 Python 环境中已安装的包不是同一版本。
功能限制
slicing_mode支持fixed和dynamic两种模式。- ArcTN 的原生执行后端使用 CPU。GPU 计算通过外部数组后端完成,调用时需显式指定后端。
- Light / Heavy 使用启发式搜索,不保证全局最优。Rust 的
optimal_dp提供子集动态规划;需要处理的张量子集随规模迅速增加,因此适合较小的网络,见动态规划。它是独立算法,不属于 Python 的 Light / Heavy 接口。 max_time在算法检查点生效,不会强制中断进程。严格的总时间上限需由外部超时控制或作业调度器实现。- 构建时加入
--features mpi可启用tnmpi,让多个进程分担已保存收缩序中的切片,再合并结果。--dtype支持f32、f64、complex64和complex128,默认f64;用法见 MPI 切片执行。 - ArcTN 不通过低秩截断近似完成收缩,也不提供自动微分系统或近似结果的全局误差界。使用外部数组后端时,能否求导取决于该后端及实际调用的运算。