本文记录Linux下编译ARPACK的流程。

零、环境

操作系统Ubuntu 22.04.4 LTS
VS Code1.92.1
Git2.34.1
GCC11.4.0
CMake3.22.1
oneAPI2024.2.1

一、依赖

1.1 安装oneAPI

参见:Get the Intel® oneAPI Base Toolkit , Get the Intel® oneAPI HPC Toolkit 

二、编译ARPACK

2.1 下载

git clone https://github.com/opencollab/arpack-ng.git
cd ./arpack-ng/
git checkout -b arpack-3.9.0 3.9.0

2.2 构建

按照下表配置CMake,或者使用附录中的CMakeUserPresets.json文件,

CMake VaraibleValue

CMAKE_C_COMPILER

/opt/intel/oneapi/compiler/latest/bin/icx

CMAKE_CXX_COMPILER

/opt/intel/oneapi/compiler/latest/bin/icpx

CMAKE_BUILD_TYPE

Debug
CMAKE_INSTALL_PREFIX/data/3rdparty/intel-dbg-zmo
INTERFACE64false
ICBtrue
MPItrue

2.3 编译

使用linux_intel presets,进行编译。

三、使用ARPACK

附录Ⅰ:   CMakeUserPresets.json

新建CMakeUserPresets.json文件,并添加以下内容,

{"version": 9,"cmakeMinimumRequired": {"major": 3,"minor": 20,"patch": 0},"configurePresets": [{"name": "default","hidden": true,"displayName": "Default Config","description": "Default build configuration","binaryDir": "${sourceDir}/out/build/${presetName}","cacheVariables": {"CMAKE_INSTALL_PREFIX": "${sourceDir}/out/install/${presetName}","CMAKE_BUILD_TYPE": "Debug"}},{"name": "vs2022","hidden": false,"inherits": "default","displayName": "Visual Studio 17 2022","description": "This build is using Visual Studio 17 2022 generator","generator": "Visual Studio 17 2022","toolset": "host=x64","architecture": "x64","cacheVariables": {},"environment": {},"condition": {"type": "equals","lhs": "${hostSystemName}","rhs": "Windows"}},{"name": "mingw64","hidden": false,"inherits": "default","displayName": "MinGW-w64","description": "This build is using MinGW generator","generator": "MinGW Makefiles","cacheVariables": {},"environment": {}},{"name": "cygwin64","hidden": false,"inherits": "default","displayName": "Cygwin64","description": "This build is using Unix Makefiles generator","generator": "Unix Makefiles","cacheVariables": {},"environment": {}},{"name": "linux_gcc","hidden": false,"inherits": "default","displayName": "Linux GCC","description": "Default build using Unix Makefiles generator","generator": "Unix Makefiles","cacheVariables": {"CMAKE_C_COMPILER": "/usr/bin/gcc","CMAKE_CXX_COMPILER": "/usr/bin/g++","CMAKE_INSTALL_PREFIX": "${sourceParentDir}/../gcc-dbg-zmo","CMAKE_BUILD_TYPE": "Debug","INTERFACE64": false,"ICB": true,"MPI": true            },"environment": {}},{"name": "linux_intel","hidden": false,"inherits": "default","displayName": "Linux Intel","description": "Intel(R) oneAPI DPC++/C++ Compiler","generator": "Unix Makefiles","cacheVariables": {"CMAKE_C_COMPILER": "/opt/intel/oneapi/compiler/latest/bin/icx","CMAKE_CXX_COMPILER": "/opt/intel/oneapi/compiler/latest/bin/icpx","CMAKE_INSTALL_PREFIX": "${sourceParentDir}/../intel-dbg-zmo","CMAKE_BUILD_TYPE": "Debug","INTERFACE64": false,"ICB": true,"MPI": true},"environment": {}}],"buildPresets": [{"name": "default","configurePreset": "default"},{"name": "vs2022","hidden": false,"inherits": "default","displayName": "Visual Studio 17 2022","configurePreset": "vs2022"},{"name": "mingw64","hidden": false,"inherits": "default","displayName": "MinGW-w64","configurePreset": "mingw64"},{"name": "cygwin64","hidden": false,"inherits": "default","displayName": "Cygwinw64","configurePreset": "cygwin64"},{"name": "linux_gcc","hidden": false,"inherits": "default","displayName": "Linux GCC","configurePreset": "linux_gcc"},{"name": "linux_intel","hidden": false,"inherits": "default","displayName": "Linux Intel","configurePreset": "linux_intel"}],"testPresets": [{"name": "default","configurePreset": "default","output": {"outputOnFailure": true},"execution": {"noTestsAction": "error","stopOnFailure": true}},{"name": "vs2022","hidden": false,"inherits": "default","displayName": "Visual Studio 17 2022","configurePreset": "vs2022"},{"name": "mingw64","hidden": false,"inherits": "default","displayName": "MinGW-w64","configurePreset": "mingw64"},{"name": "cygwin64","hidden": false,"inherits": "default","displayName": "Cygwin64","configurePreset": "cygwin64"},{"name": "linux_gcc","displayName": "Linux GCC","configurePreset": "linux_gcc"},{"name": "linux_intel","displayName": "Linux Intel","configurePreset": "linux_intel"}],"packagePresets": [{"name": "default","configurePreset": "default","generators": ["TGZ"]},{"name": "vs2022","hidden": false,"inherits": "default","displayName": "Visual Studio 17 2022","configurePreset": "vs2022","generators": ["TGZ"]},{"name": "mingw64","hidden": false,"inherits": "default","displayName": "MinGW-w64","configurePreset": "mingw64","generators": ["TGZ"]},{"name": "linux_gcc","hidden": false,"inherits": "default","displayName": "Linux GCC","configurePreset": "linux_gcc","generators": ["RPM"]},{"name": "linux_intel","hidden": false,"inherits": "default","displayName": "Linux Intel","configurePreset": "linux_intel","generators": ["RPM"]}],"workflowPresets": [{"name": "default","steps": [{"type": "configure","name": "default"},{"type": "build","name": "default"},{"type": "test","name": "default"},{"type": "package","name": "default"}]},{"name": "vs2022","displayName": "Visual Studio 17 2022","steps": [{"type": "configure","name": "vs2022"},{"type": "build","name": "vs2022"},{"type": "test","name": "vs2022"},{"type": "package","name": "vs2022"}]},{"name": "mingw64","displayName": "MinGW-w64","steps": [{"type": "configure","name": "mingw64"},{"type": "build","name": "mingw64"},{"type": "test","name": "mingw64"},{"type": "package","name": "mingw64"}]},{"name": "linux_gcc","displayName": "Linux GCC","steps": [{"type": "configure","name": "linux_gcc"},{"type": "build","name": "linux_gcc"},{"type": "test","name": "linux_gcc"},{"type": "package","name": "linux_gcc"}]},{"name": "linux_intel","displayName": "Linux Intel","steps": [{"type": "configure","name": "linux_intel"},{"type": "build","name": "linux_intel"},{"type": "test","name": "linux_intel"},{"type": "package","name": "linux_intel"}]}]
}

网络

ARPACK

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/919465.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/919465.shtml
英文地址,请注明出处:http://en.pswp.cn/news/919465.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

芋道RBAC实现介绍

说明:之前写过一篇博客,介绍如何搭建一个基于角色的权限验证框架 搭建一个基于角色的权限验证框架 本文介绍在非常受欢迎的开源框架——芋道中是如何实现 RBAC 的,芋道的部署参考下面这篇文章: 芋道微服务代码部署 介绍 一般…

Docker部署Jellyfin,没有公网IP如何使用内网穿透远程访问?

Jellyfin是一款完全开源、免费的媒体服务器,可帮助你快速搭建属于自己的私人流媒体平台:电影、剧集、音乐、照片统统收纳,跨设备随点随播。本文将以最简洁的步骤,演示如何在Docker容器中部署Jellyfin,并通过贝锐花生壳…

Podman:Mysql(使用卷)

下载镜像hpphcomp:~$ podman pull docker.1ms.run/mysql:latest Trying to pull docker.1ms.run/mysql:latest... Getting image source signatures Copying blob c81e70a25040 done | Copying blob 31f7d8dc4024 done | Copying blob b9916866e45f done | Copying blob …

2025年渗透测试面试题总结-21(题目+回答)

安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 一、文件上传绕过方式(Top 5) 二、文件包含高危函数(PHP为例&#xff0…

像海绵一样吸收技术书籍的高效学习方法

像海绵一样吸收技术书籍的高效学习方法前言六步高效阅读法步骤1:快速浏览章节步骤2:先读章末测验步骤3:只读粗体字步骤4:只读每段的首句和末句步骤5:通读整章步骤6:复习与重复高效学习技术书籍的实用技巧1.…

Day60--图论--94. 城市间货物运输 I(卡码网),95. 城市间货物运输 II(卡码网),96. 城市间货物运输 III(卡码网)

Day60–图论–94. 城市间货物运输 I(卡码网),95. 城市间货物运输 II(卡码网),96. 城市间货物运输 III(卡码网) 今天是Bellman_ford专场。带你从普通的Bellman_ford,到队列…

Jenkins服务器SSH公钥配置步骤

步骤1. 在Jenkins服务器上生成SSH密钥在Jenkins服务器上执行以下命令:# 1. 生成SSH密钥对 ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa -N ""# 2. 设置正确的权限 chmod 700 ~/.ssh chmod 600 ~/.ssh/id_rsa chmod 644 ~/.ssh/id_rsa.pub# 3. 查看公钥内…

数据链路层-网络层-传输层

文章目录深入浅出理解网络核心:从交换机到TCP/UDP一、数据链路层:交换机的"地盘"1. 数据链路层的核心功能2. 以太网的发展历程3. 以太网中的MAC地址4. 以太网帧格式:数据的"快递包装"5. 交换机的工作原理:高效…

专题:2025跨境电商市场布局、供应链与产业带赋能报告 |附130+份报告PDF、原数据表汇总下载

原文链接:https://tecdat.cn/?p43616 2025年,跨境圈的老板们集体焦虑:美国关税飙到145%,亚马逊封号潮卷土重来,而东南亚却悄悄涨了246%!这不是危言耸听——66%的美国消费者说,海外货涨10%就换本…

LINUX 818 shell:random;for for

问题 [rootweb ~]# a$(echo $[$RANDOM%10]) 您在 /var/spool/mail/root 中有邮件 [rootweb ~]# echo $a 3 [rootweb ~]# echo 139$a$a$a$a$a$a$a$a 13933333333 您在 /var/spool/mail/root 中有邮件 [rootweb ~]# echo 139 $a 139 3 [rootweb ~]# echo $a 3 [rootweb ~]# echo …

JavaScript 原型机制详解:从概念到实战(附个人学习方法)

原型是 JavaScript 实现继承与代码复用的核心机制,也是面试高频考点。本文结合个人学习经验、核心概念解析与实战案例,帮你彻底搞懂原型、prototype、__proto__ 及相关知识点,同时分享高效的学习方法。 一、个人学习方法:高效掌握复杂知识点 复杂概念(如原型)的学习,关…

【人工智能】2025年AI代理失控危机:构建安全壁垒,守护智能未来

还在为高昂的AI开发成本发愁?这本书教你如何在个人电脑上引爆DeepSeek的澎湃算力! 在2025年,AI代理(AI Agents)已成为日常生活和企业运营的核心组成部分,它们能够自主决策、执行任务并与环境互动。然而,随着AI代理能力的指数级提升,其安全隐患也日益凸显,包括数据泄露…

从噪声到动作:Diffusion Policy 如何改变机器人学习?

从噪声到动作:Diffusion Policy 如何改变机器人学习? 引言 在机器人手臂操作方面一直存在诸多挑战。我们熟悉的工业场景中的组装机械臂,往往依赖于写死的程序指令进行控制,具有高度规范化与高精度的特点。而当机械臂需要在复杂、…

量子计算和超级计算机将彻底改变技术

我们生活在技术时代,但未来仍有无限可能。近年来,各大企业在量子计算领域持续迈出虽小却关键的步伐 —— 这一技术注定将彻底改变我们所熟知的世界。以下精选的潜在应用场景,将对从交通出行到医疗健康的多个领域产生深远影响。 在由 “1” 和…

Linux 中文显示空白框(Java)

问题展示:解决方案本系统采用宋体,若是其它字体,可以类似排查Font rewardFirstFont new Font("SimSun", Font.BOLD, 20);linux系统字体-检查查询linux系统所有字体fc-list检查是否有目标字体(SimSun)&#…

普通用户使用docker命令

参考大佬 https://blog.51cto.com/u_16175448/12082279 详细步骤及代码 步骤 1:安装 Docker 首先,你需要安装 Docker。 步骤 2:创建 Docker 用户组 Docker 默认以 root 用户运行,为了普通用户能够使用 Docker,我们需要…

【传奇开心果系列】Flet框架实现的家庭记账本示例自定义模板

Flet家庭记账本示例自定义模板一、效果展示截图二、Flet家庭记账本概况介绍三、应用特色1. 简洁直观的用户界面2. 全面的财务管理功能3. 实时数据监控4. 数据可视化分析5. 数据管理功能四、使用场景个人财务管理家庭账务管理小微企业记账学生理财教育五、主要功能模块&#xff…

Node.js 在 Windows Server 上的离线部署方案

Node.js 在 Windows Server 上的离线部署方案 离线部署的核心是提前准备所有依赖资源(避免在线下载),并通过本地配置完成服务搭建,整体分为「依赖准备」「环境配置」「项目部署」「服务注册」4个阶段。 一、提前准备离线资源&am…

SpringAI接入openAI配置出现的问题全解析

SpringAI接入openAI配置出现的四个问题全解析1、无法下载openAI或SpringAI依赖包1.1、思路就是从哪个源下载所需的依赖包1.2、解决思路:我们可以看阿里的中央仓库是否有集成SpringAI的依赖,从它这里下也是可以的。我们看看阿里云云效maven地址&#xff0…

自然语言处理——02 文本预处理(上)

1 认识文本预处理 概念: 文本语料在输送给模型前一般需要一系列的预处理工作,才能符合模型输入的要求;比如:将文本转化成模型需要的张量、规范张量的尺寸;比如: 关于数据X:数据有没有脏数据、数…