小众知识

OpenSEES_GPU用户手册
2014-12-10 09:28:44   来源:   评论:0 点击:

OpenSEES_GPU是基于原版OpenSEES程序开发,引入NVIDIA GPU加速计算模块的有限元计算模块。它基于CULA Sparse方程迭代求解库,开发和引入了CULASparseSolver求解器,提升OpenSEES线性方程组求解能力

清华大学土木工程系 防灾减灾研究所

韩博 解琳琳 陆新征

下载地址:http://www.collapse-prevention.net/download/OpenSEES_GPU.zip

1. 简介

OpenSEES_GPU是基于原版OpenSEES程序开发,引入NVIDIA GPU加速计算模块的有限元计算模块。它基于CULA Sparse方程迭代求解库,开发和引入了CULASparseSolver求解器,提升OpenSEES线性方程组求解能力,性能提升可达10倍以上。

1.1 CULA Sparse

CULA Sparse是由EM Photonics公司推出的GPU加速大型稀疏线性方程组迭代求解库,基于NVIDIA CUDA并行优化,支持多种算法、预处理器以及数据存储格式。采用CULA Sparse求解库,配合NVIDIA公司推出的GPU,可以获得非常高的稀疏矩阵求解效率。

详细信息及下载请查看:http://www.culatools.com/sparse/

1.2 CULASparseSolver

CULASparseSolver是基于CULA Sparse库,求解OpenSEES中稀疏矩阵线性方程组的求解器,支持调用CULA Sparse提供的各种线性方程迭代求解器和预处理器。CULASparseSolver调用简单、直观,有操作OpenSEES Tcl经验的人能够快速而直接地掌握其使用方法。

2. 使用说明

2.1 系统及软件环境需求

n 硬件需求:

安装有支持CUDA架构的英伟达(NVIDIA)GPU显卡

*支持CUDA的GPU列表:https://developer.nvidia.com/cuda-gpus

n 软件需求:

32位或64位Windows XP以上系统;

CUDA 5.0 Production Release

CULA Sparse S5

2.2 安装及配置

1. 在英伟达(NVIDIA)官网下载CUDA 5.0安装包(请选择对应系统的32位或64位安装包),并安装。

clip_image002

地址:https://developer.nvidia.com/cuda-toolkit-50-archive

2. 在CULA Tools官网上下载CULA Sparse S5版本,并安装。

注:CULA Sparse属于商业软件,但提供Personal Academic许可(仅针对个人科研使用),请在CULA Sparse官网上使用教育网邮箱进行注册,并下载Windows系统下的CULA Sparse S5版本

clip_image004

地址:http://www.culatools.com/downloads/sparse/

3. 进入电脑的“环境变量”配置界面:

在“系统变量”中,找到Path这一项,双击打开,在最后加入:

%CULASPARSE_BIN_PATH_32%(系统为32位)

%CULASPARSE_BIN_PATH_64%(系统为64位)

按“确定”保存。

clip_image006

*“环境变量”配置界面进入方法

Win7:“计算机”上右键→“属性”→“高级系统设置”→“环境变量”

XP:“我的电脑”上右键→“属性”→“高级”→“环境变量”

4. 双击OpenSEES_GPU.exe,即可正常启动程序。

2.3 CULASparseSolver调用说明

与其他线性方程求解器类似,CULASparseSolver采用System语句进行调用,基础调用语句格式如下:

System CulaSparse -rTol [RTOL] -mInt [MINT] -pre [PRE] -solver [SOLVER] -single -host

调用参数说明如下(不区分大小写):

参数

说明

示例

-rTol [RTOL]

设置相对收敛容差为[RTOL]

System CulaSparse -rTol 1e-6

-mInt [MINT]

设置矩阵求解最大迭代次数为[MINT]

System CulaSparse -mInt 10000

-pre [PRE]

选择预处理器为[PRE],[PRE]取值包括:none,jacobi,blockjacobi,ilu0,ainv,fainv

System CulaSparse -pre jacobi

-solver [SOLVER]

选择求解器为[SOLVER],[SOLVER]取值包括:cg,bicg,bicgstab,bicgstabl,gmres,minres

System CulaSparse -solver cg

-single

单精度求解(默认为双精度)

*注:许多求解器采用单精度无法收敛

System CulaSparse -single

-host

采用CPU迭代求解(默认为GPU求解)

System CulaSparse -host

*注:各个预处理器和求解器取值代表意义请参考:

http://www.culatools.com/cula_sparse_programmers_guide/

相关热词搜索:OpenSEES GPU 手册

上一篇:ANSYS数据导出:节点、单元、振型
下一篇:Compilation Guideline of OpenSeeMP on Linux Machines

分享到: 收藏
评论排行
最新发布