CN102201036A - Gpu加速剂量计算中微分卷积积分算法的实现 - Google Patents

Gpu加速剂量计算中微分卷积积分算法的实现 Download PDF

Info

Publication number
CN102201036A
CN102201036A CN2011101244457A CN201110124445A CN102201036A CN 102201036 A CN102201036 A CN 102201036A CN 2011101244457 A CN2011101244457 A CN 2011101244457A CN 201110124445 A CN201110124445 A CN 201110124445A CN 102201036 A CN102201036 A CN 102201036A
Authority
CN
China
Prior art keywords
gpu
algorithm
calculation
dose calculation
convolution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011101244457A
Other languages
English (en)
Inventor
王先良
侯氢
吴章文
勾成俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sichuan University
Original Assignee
Sichuan University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sichuan University filed Critical Sichuan University
Priority to CN2011101244457A priority Critical patent/CN102201036A/zh
Publication of CN102201036A publication Critical patent/CN102201036A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Radiation-Therapy Devices (AREA)

Abstract

GPU加速剂量计算中微分卷积积分算法的实现涉及肿瘤放射治疗中的剂量计算。微分卷积积分算法是光子线剂量计算常用算法,考虑了三维非均匀修正,对不均匀组织及复杂结构的计算有较高的精度,但较长的计算时间影响了它在制定治疗计划过程中的应用。本发明运用GPU实现了微分卷积积分剂量计算,通过采用CPU+GPU的处理模式,缩短了运算时间,提高了计算效率,让微分卷积积分算法成为日常的剂量计算算法。

Description

GPU加速剂量计算中微分卷积积分算法的实现
技术领域
本发明涉及肿瘤放射治疗中的剂量计算,具体来说是针对放射治疗中的规则野、非规则野和调强野采用GPU加速的微分卷积积分算法进行剂量计算。
背景技术
剂量计算是放疗治疗计划系统的核心内容之一,快速准确地提供感兴趣区内所受照射剂量的数据,对放疗计划的制定至关重要,如何在保证剂量计算精度的前提下减少剂量计算时间是制定放射治疗计划的主要瓶颈。
提高剂量计算速度的方法主要有两种,一是采用不同的剂量计算方法,二是借助于计算能力更强的硬件。目前放射治疗中研究和使用的剂量计算算法基本分为三种,按照计算精度从高到低计算时间从多到少依次是蒙特卡洛算法,微分卷积积分算法和笔形束算法。蒙特卡洛算法通常作为剂量计算的标准,模拟了粒子与物质相互作用的全过程,能计算各种复杂条件下的剂量分布,但计算复杂,耗时长,临床应用较少。笔形束算法只考虑了一维的非均匀修正,不能准确模拟次级射线在非均匀介质中的分布,所以在计算非均匀介质中剂量分布时具有很大的误差。微分卷积积分算法考虑了三维非均匀修正,对不均匀组织及复杂结构的计算有较高的精度,但较长的计算时间影响了微分卷积积分算法在制定治疗计划过程中的应用。
为了让微分卷积积分算法能成为日常的剂量计算算法,本专利采用图像处理器(graphic processing unit,GPU)对其进行加速,GPU最初是用于计算机图像显示和渲染的元件。现在的GPU不仅是功能强大的图像处理引擎,还是可用于科学计算的高度并行化的可编程处理器,GPU凭借多处理器及较高的存储器读写带宽,具备很高的运算性能。与传统的并行运算方式(如集群计算)相比,基于GPU的并行运算能够在个人电脑上实现,最重要的是在低成本情况下可以获得很好的计算效率。近几年,GPU在可编程和硬件架构等方面的快速发展在各领域引发了大量对GPU应用的研究,在科学计算方面扮演了越来越重要的角色。
实现基于GPU的并行运算,首先了解支持GPU运算的编程工具。CUDA(Compute Unified Device Architecture)是NVIDIA公司为GPU编程提出的一个全新的软硬件架构,它以C语言为基础,写出在GPU上执行的程序。关于CUDA详细的说明可以参看CUDA编程指南以及CUDA参考手册。本发明正是利用GPU编程中的CUDA技术对微分卷积积分算法进行加速的。
发明内容
本发明针对采用微分卷积积分算法计算光子剂量过程中存在数据量大、数据相关性低、数据有相同的执行程序,并行度和算术计算密集性高等特点,运用GPU实现了微分卷积积分剂量计算。它与常规方法不同之处在于:将善于处理复杂逻辑,串行计算的CPU,与适合大数据量,逻辑分支简单,并行计算的GPU相结合,具体来说,创建虚拟体模过程中,一个GPU线程计算虚拟体模中一个体元的电子密度;计算光子线的初级能量沉积时,一个GPU线程计算一条射线在所穿过的体元中的初级能量沉积;计算卷积时,一个GPU线程计算一个体元的剂量,其它部分仍在CPU上执行。通过CPU+GPU的处理模式,剂量计算时间大大减少。
附图说明
附图是本专利所用卷积积分算法原理图。图中虚线包围的部分是一个锥形束,M是假设的电子密度大于水的介质。
具体实施方式
采用微分卷积积分算法计算剂量可以分成两部分,一是计算初级射线与物质相互作用在单位质量内沉积的能量TERMA (total energy released per unit mass)。二是将TERMA和能量沉积核EDK(energy deposition kernel)进行卷积积分计算各体元吸收的能量。下面介绍这两个过程的原理。
计算TERMA在射束坐标系下进行,而由CT图像得到的初始体模是在人体坐标系中,计算TERMA之前通过对初始体模旋转插值,创建一个表面与射束方向垂直的虚拟体模有利于TERMA计算。已知虚拟体模体元坐标                                                
Figure 111828DEST_PATH_IMAGE001
,初始体模中与其对应的坐标
Figure 215919DEST_PATH_IMAGE002
可以表示为:
Figure 933339DEST_PATH_IMAGE003
                                                                          (1)
其中
Figure 328549DEST_PATH_IMAGE005
为机头的转角,
Figure 329872DEST_PATH_IMAGE007
为治疗床的转角,
Figure 152334DEST_PATH_IMAGE009
为准直器的转角,
Figure 357050DEST_PATH_IMAGE010
为射束坐标系与人体坐标系间的转换矩阵,通过对
Figure 742901DEST_PATH_IMAGE002
周围体元电子密度
Figure 411780DEST_PATH_IMAGE011
线性插值可以得到虚拟体模
Figure 342827DEST_PATH_IMAGE001
处电子密度
Figure 97156DEST_PATH_IMAGE012
对于单能光子束,采用公式(2)计算TERMA,其中
Figure 21119DEST_PATH_IMAGE013
是射线源到入射点的距离,
Figure 544504DEST_PATH_IMAGE014
是射线源到计算点的距离,
Figure 912032DEST_PATH_IMAGE015
是质量衰减系数,
Figure 340608DEST_PATH_IMAGE011
是体元电子密度,可由体元的CT值转化得到,
Figure 553414DEST_PATH_IMAGE016
是在入射点处射线的能量强度分布,
Figure 196885DEST_PATH_IMAGE013
Figure 719002DEST_PATH_IMAGE017
的距离用射线追踪的方式计算。
Figure 447924DEST_PATH_IMAGE018
                          (2)
多能光子束可看成是多束单能光子束的叠加。
卷积计算有两种方式,一种是以各TERMA不为零的体元为中心,计算对其对周围体元的贡献;另一种是以体元为中心,计算在积分核范围内对其有影响的TERMA贡献的剂量和,本发明采用第二种方式。
Figure 464422DEST_PATH_IMAGE019
处的能量沉积由公式(3)求得,
Figure 149350DEST_PATH_IMAGE020
                                                                   (3)
其中
Figure 920997DEST_PATH_IMAGE021
Figure 809318DEST_PATH_IMAGE022
处的TERMA值,
Figure 691823DEST_PATH_IMAGE023
是用Monte Carlo模拟的在水中的能量沉积核。
当体元
Figure 231258DEST_PATH_IMAGE022
Figure 111489DEST_PATH_IMAGE019
之间有非均匀介质时,用等效长度的方法对EDK进行非均匀修正。体元
Figure 156992DEST_PATH_IMAGE019
处剂量的贡献等效于水中
Figure 629561DEST_PATH_IMAGE024
处体元对处的剂量贡献,即
Figure 605925DEST_PATH_IMAGE025
=
Figure 2011101244457100002DEST_PATH_IMAGE026
是非均匀介质中的积分核,
Figure 2011101244457100002DEST_PATH_IMAGE027
是均匀介质中的积分核。球形积分等效长度的计算采用射线追踪:以
Figure 226752DEST_PATH_IMAGE019
为起点,沿
Figure 2011101244457100002DEST_PATH_IMAGE028
方向进行射线追踪,射线穿过体元的等效长度是射线在
Figure 448785DEST_PATH_IMAGE028
方向穿过体元的几何长度此体元的电子密度
Figure 861312DEST_PATH_IMAGE011
的乘积,将这条射线穿过的每个体元的等效长度累加就得到
Figure 76262DEST_PATH_IMAGE019
Figure 257844DEST_PATH_IMAGE022
的等效长度,进而获得沿方向与等效长度对应的积分核,采用公式(3)计算该体元沉积的剂量。
本发明将创建虚拟体模,TERMA计算和卷积计算部分用GPU完成,下面依次介绍这三个步骤在GPU上的实施方法。
创建虚拟体模过程中一个GPU线程计算虚拟体模中的一个体元,由虚拟体模体元坐标得到对应初始体模中体元坐标
Figure 38085DEST_PATH_IMAGE002
,对初始体模体元周围电子密度
Figure 638010DEST_PATH_IMAGE011
线性插值获得虚拟体模中
Figure 212080DEST_PATH_IMAGE001
处电子密度。
计算TERMA时一个GPU线程计算一条射束的信息,射线从点源出发沿固定方向依次穿过多个体元,追踪过程中将各射线看成连续的在入射表面等面积的锥形束,这样保留了射束发散的物理性质,计算结果更精确。
计算卷积时一个GPU线程计算一个体元的剂量,每个线程以要计算的体元
Figure 581881DEST_PATH_IMAGE019
为起点,沿方向进行射线追踪,得到对应等效长度的积分核,由公式(3)计算
Figure 207215DEST_PATH_IMAGE019
处的能量沉积。
为了测试加速结果,本发明选取了一个30cm×30cm×30cm的水模做实验,体元的大小为0.25cm×0.25cm×0.25cm,改变照射野(field size)和积分核半径(radcut)大小,计算6MeV单能光子在水模的能量沉积。测试平台如下:CPU为AMD Athlon四核630(主频2.8GHz,内存4G),显卡是Tesla C1060(240个CUDA核处理器,核心频率1296MHz,显存4G,显存位宽512bit,显存带宽102 GB/S),操作系统Win7,编程环境为Visual Studio 2008,CUDA版本是2.3。为了便于描述加速结果,用TCPU表示程序在CPU上的执行时间,TGPU表示程序在GPU上的执行时间(核函数的执行时间与数据拷贝时间的和),用TCPU/TGPU的值表示加速倍数。
表1 计算时间与加速倍数
fieldsize(cm) radcut(cm) TCPU(s) TGPU(s) TCPU/TGPU
2×2 5 403.198 15.035 26.82
2×2 10 1133.143 55.050 20.58
2×2 15 1992.701 97.441 20.45
5×5 5 1339.532 21.543 62.18
5×5 10 3396.363 68.809 49.36
5×5 15 5344.035 103.371 51.70
10×10 5 3788.326 33.527 112.99
10×10 10 8727.962 81.449 107.16
10×10 15 13164.570 113.059 116.44
如上表所示测试结果,通过GPU并行加速,在Tesla C1060显卡上实现了20X-100X的加速,本发明使采用卷积积分算法进行剂量计算所需的时间大大减少,让卷积积分算法能成为日常的剂量计算算法。

Claims (5)

1.一种用于加快放射治疗中光子剂量计算速度的方法,其特征在于:将善于处理复杂逻辑串行计算的CPU,与适合大数据量、逻辑分支简单、并行计算的GPU相结合进行剂量计算。
2.根据权利要求1所述的加快放射治疗中光子剂量计算速度的方法,其特征在于:对放射治疗中的规则野、非规则野和调强野模式下的剂量计算采用微分卷积积分算法,该计算在GPU上完成。
3.根据权利要求2所述的GPU加速的微分卷积积分算法,其特征在于:对于一些具有并行条件的处理过程使用GPU并行加速处理,而复杂逻辑和事务处理等串行计算仍然采用CPU。
4.根据权利要求2所述的剂量计算方法和权利要求3所述的GPU并行加速处理,其特征在于:创建虚拟体模过程中,一个GPU线程计算虚拟体模中一个体元的电子密度,计算TERMA时一个GPU线程计算一个射束的TERMA,计算卷积时一个GPU线程计算一个体元的剂量。
5.根据权利要求4所述的计算卷积时一个GPU线程计算一个体元的剂量,其特征在于:采用等效长度法对积分核进行非均匀修正,等效长度计算采用射线追踪法。
CN2011101244457A 2011-05-16 2011-05-16 Gpu加速剂量计算中微分卷积积分算法的实现 Pending CN102201036A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011101244457A CN102201036A (zh) 2011-05-16 2011-05-16 Gpu加速剂量计算中微分卷积积分算法的实现

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011101244457A CN102201036A (zh) 2011-05-16 2011-05-16 Gpu加速剂量计算中微分卷积积分算法的实现

Publications (1)

Publication Number Publication Date
CN102201036A true CN102201036A (zh) 2011-09-28

Family

ID=44661705

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011101244457A Pending CN102201036A (zh) 2011-05-16 2011-05-16 Gpu加速剂量计算中微分卷积积分算法的实现

Country Status (1)

Country Link
CN (1) CN102201036A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841881A (zh) * 2012-08-21 2012-12-26 浪潮电子信息产业股份有限公司 一种基于众核处理器的多重积分计算方法
CN104298871A (zh) * 2014-10-09 2015-01-21 中国科学院合肥物质科学研究院 一种辐射防护中基于gpu加速的体素人体模型剂量评估加速方法
CN104375971A (zh) * 2014-11-24 2015-02-25 浪潮电子信息产业股份有限公司 一种便携的可移动积分计算器设备实现方法
CN104750992A (zh) * 2015-04-01 2015-07-01 上海联影医疗科技有限公司 模拟粒子输运和计算放疗中人体剂量的方法、装置及系统
CN107229830A (zh) * 2017-06-01 2017-10-03 上海联影医疗科技有限公司 放疗计划系统及其任务执行方法
CN111494815A (zh) * 2020-05-14 2020-08-07 安徽慧软科技有限公司 基于混合变尺度模型的三维剂量计算方法、装置及介质
CN112017166A (zh) * 2020-08-17 2020-12-01 苏州求索健康科技有限公司 一种基于cpu/gpu混合集群的计算放疗笔形束射线剂量分布的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101011617A (zh) * 2006-12-29 2007-08-08 成都川大奇林科技有限责任公司 在适形放疗中精确确定辐射野输出剂量的方法
WO2009137794A2 (en) * 2008-05-08 2009-11-12 The Johns Hopkins University Real-time dose computation for radiation therapy using graphics processing unit acceleration of the convolution/superposition dose computation method
CN101664583A (zh) * 2009-09-09 2010-03-10 深圳市海博科技有限公司 基于cuda的剂量计算优化方法和系统
CN101954148A (zh) * 2010-09-15 2011-01-26 四川大学 放射治疗中基于gpu的剂量计算加速方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101011617A (zh) * 2006-12-29 2007-08-08 成都川大奇林科技有限责任公司 在适形放疗中精确确定辐射野输出剂量的方法
WO2009137794A2 (en) * 2008-05-08 2009-11-12 The Johns Hopkins University Real-time dose computation for radiation therapy using graphics processing unit acceleration of the convolution/superposition dose computation method
CN101664583A (zh) * 2009-09-09 2010-03-10 深圳市海博科技有限公司 基于cuda的剂量计算优化方法和系统
CN101954148A (zh) * 2010-09-15 2011-01-26 四川大学 放射治疗中基于gpu的剂量计算加速方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841881A (zh) * 2012-08-21 2012-12-26 浪潮电子信息产业股份有限公司 一种基于众核处理器的多重积分计算方法
CN104298871A (zh) * 2014-10-09 2015-01-21 中国科学院合肥物质科学研究院 一种辐射防护中基于gpu加速的体素人体模型剂量评估加速方法
CN104375971A (zh) * 2014-11-24 2015-02-25 浪潮电子信息产业股份有限公司 一种便携的可移动积分计算器设备实现方法
CN104750992A (zh) * 2015-04-01 2015-07-01 上海联影医疗科技有限公司 模拟粒子输运和计算放疗中人体剂量的方法、装置及系统
CN104750992B (zh) * 2015-04-01 2017-11-28 上海联影医疗科技有限公司 模拟粒子输运和确定放疗中人体剂量的方法、装置及系统
US10737115B2 (en) 2015-04-01 2020-08-11 Shanghai United Imaging Healthcare Co., Ltd. Method, apparatus, and system for simulating a particle transport and determining human dose in a radiotherapy
US11648419B2 (en) 2015-04-01 2023-05-16 Shanghai United Imaging Healthcare Co., Ltd. Method, apparatus, and system for simulating a particle transport and determining human dose in a radiotherapy
CN107229830A (zh) * 2017-06-01 2017-10-03 上海联影医疗科技有限公司 放疗计划系统及其任务执行方法
CN111494815A (zh) * 2020-05-14 2020-08-07 安徽慧软科技有限公司 基于混合变尺度模型的三维剂量计算方法、装置及介质
CN111494815B (zh) * 2020-05-14 2022-04-29 安徽慧软科技有限公司 基于混合变尺度模型的三维剂量计算方法、装置及介质
CN112017166A (zh) * 2020-08-17 2020-12-01 苏州求索健康科技有限公司 一种基于cpu/gpu混合集群的计算放疗笔形束射线剂量分布的方法

Similar Documents

Publication Publication Date Title
CN102201036A (zh) Gpu加速剂量计算中微分卷积积分算法的实现
Jia et al. GPU-based high-performance computing for radiation therapy
Jia et al. Development of a GPU-based Monte Carlo dose calculation code for coupled electron–photon transport
Jia et al. GPU-based fast Monte Carlo simulation for radiotherapy dose calculation
Yepes et al. A GPU implementation of a track-repeating algorithm for proton radiotherapy dose calculations
CN101954148A (zh) 放射治疗中基于gpu的剂量计算加速方法
Gu et al. GPU-based fast gamma index calculation
CN101664583B (zh) 基于cuda的剂量计算优化方法和系统
Persoon et al. A fast three‐dimensional gamma evaluation using a GPU utilizing texture memory for on‐the‐fly interpolations
De Greef et al. Accelerated ray tracing for radiotherapy dose calculations on a GPU
US20130158879A1 (en) Methods and apparatus for hardware based radiation dose calculation
Fujimoto et al. GPU-based fast pencil beam algorithm for proton therapy
WO2016155269A1 (zh) 模拟粒子输运和计算放疗中人体剂量的方法、装置及系统
US9495513B2 (en) GPU-based fast dose calculator for cancer therapy
CN107551411B (zh) 针对射程不确定性的质子重离子调强放疗鲁棒优化方法
CN109125952B (zh) 基于核模型的卷积叠加能量沉积计算方法
CN110310720A (zh) 一种蒙特卡罗剂量计算方法、设备和储存介质
Zhou et al. GPU‐accelerated Monte Carlo convolution/superposition implementation for dose calculation
Pastor-Serrano et al. Millisecond speed deep learning based proton dose calculation with Monte Carlo accuracy
Neph et al. Parallel beamlet dose calculation via beamlet contexts in a distributed multi‐GPU framework
Kim et al. History of the photon beam dose calculation algorithm in radiation treatment planning system
CN104298871B (zh) 一种辐射防护中基于gpu加速的体素人体模型剂量评估加速方法
DeMarco et al. A Monte Carlo tutorial and the application for radiotherapy treatment planning
CN111494815B (zh) 基于混合变尺度模型的三维剂量计算方法、装置及介质
CN103425875A (zh) 一种光子束在目标体内剂量分布的快速获取方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20110928