中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

安装KML

本文提供RPM包和DEB包两种安装KML方法,请参照本节内容对KML进行安装和安装后验证。使用RPM包安装时,若操作过程中使用了RPM包管理工具支持但本文档中未说明的参数,可能会引入未定义行为,请谨慎操作。

安装步骤

RPM包安装

  1. 按照获取软件包获取到KML软件包,解压后得到二进制RPM包。
  2. 安装KML。
    • 安装到默认目录。
      rpm -ivh boostkit-kml-xxxx.aarch64.rpm
    • 安装到指定目录。
      rpm -ivh --prefix=/path boostkit-kml-xxxx.aarch64.rpm

    安装结束后,系统在环境变量LD_LIBRARY_PATH中自动添加lib文件夹所在目录即“/usr/local/kml/lib”

    上述命令中涉及的xxxx代表版本号。

DEB包安装

  1. 按照获取软件包获取到KML软件包,解压后得到二进制DEB包。
  2. 安装KML。
    dpkg -i boostkit-kml-xxxx.aarch64.deb

    安装结束后,系统在环境变量LD_LIBRARY_PATH中自动添加lib文件夹所在目录即“/usr/local/kml/lib”

    上述命令中涉及的xxxx代表版本号。

安装后验证

  1. 执行source命令或重新登录终端让环境变量生效。
    source /etc/profile
  2. 查看环境变量LD_LIBRARY_PATH是否包含KML的安装路径“/usr/local/kml/lib”
    env | grep LD_LIBRARY_PATH

    如果变量包含安装路径,说明安装成功。

    安装成功后在安装路径(默认路径是“/usr/local/kml”)下生成相应文件,其中,include文件夹包含子库的头文件,lib文件夹包含了数学库的动态库文件。

  3. 使用时,请在GCC编译选项中添加动态库所在路径,链接需要使用的动态库文件,添加编译选项后用ldd命令检查程序依赖库是否准确链接。
    • 若需要使用KML_BLAS请添加:
      • 单线程不加锁版本:-L /usr/local/kml/lib/kblas/nolocking -lkblas
      • 单线程加锁版本:-L /usr/local/kml/lib/kblas/locking -lkblas
      • pthread实现多线程版本:-L /usr/local/kml/lib/kblas/pthread -lkblas
      • OpenMP实现多线程版本:-L /usr/local/kml/lib/kblas/omp -lkblas
    • 若需要使用KML_VML请添加:
      • 单线程版本:-L /usr/local/kml/lib/kvml/single -lkvml -lkm
      • 多线程版本:-L /usr/local/kml/lib/kvml/multi -lkvm -lkm
    • 若需要使用KML_SPBLAS请添加:
      • 单线程版本:-L /usr/local/kml/lib/kspblas/single -lkspblas
      • 多线程版本:-L /usr/local/kml/lib/kspblas/multi -lkspblas
    • 若需要使用KML_FFT请添加:
      • 单精度版本:-L /usr/local/kml/lib -lkfftf
      • 双精度版本:-L /usr/local/kml/lib -lkfft
    • 若需要使用KML_MATH请添加:
      • 高性能版本:-L /usr/local/kml/lib -lkm -lm
      • 高精度版本:-L /usr/local/kml/lib -lkm_l9 -lm
    • 若需要使用KML_SVML请添加:-L /usr/local/kml/lib -lksvml -lm
    • 若需要使用KML_VSL请添加:-L /usr/local/kml/lib -lkvsl
    • 若需要使用KML_LAPACK:

      请先根据生成完整的LAPACK生成完整的LAPACK,然后添加-L /usr/local/kml/lib -L/usr/local/kml/lib/kblas/omp -lklapack -lkblas

    • 若需要使用KML_SOLVER请添加:

      单机版:

      毕昇:-L /usr/local/kml/lib -lksolver -lklapack_full -lkservice -lkblas -lc++

      GCC:-L /usr/local/kml/lib -lksolver -lklapack_full -lkservice -lkblas -lstdc++

      集群版:

      毕昇:-L /usr/local/kml/lib -lkscasolver -lklapack_full -lkservice -lkblas -lc++

      GCC:-L /usr/local/kml/lib -lkscasolver -lklapack_full -lkservice -lkblas -lstdc++

    • 若需要使用KML_SCALAPACK:

      请先根据生成完整的SCALAPACK生成完整的SCALAPACK,然后添加-L /usr/local/kml/lib -lkscalapack -lklapack -lkservice -lkblas

    • 若需要使用KML_EIGENSOLVER请添加:

      毕昇:-L /usr/local/kml/lib -lkes -lklapack_full -lkscalapack_full -lkservice -lkblas -lc++

      GCC: -L /usr/local/kml/lib -lkes -lklapack_full -lkscalapack_full -lkservice -lkblas -lstdc++

      若使用自定义目录安装方式,请正确追加环境变量LD_LIBRARY_PATH,例如:使用/path/kml/lib下的动态库,需要在当前终端执行"export LD_LIBRARY_PATH=/path/kml/lib:$LD_LIBRARY_PATH"。