Radiation dose determination method and device and storage medium
Through multiple processing modules, the problem of excessive calculation time of a single GPU or CPU is solved, and the efficiency and consistency of radiation dose calculation is achieved.
Patent Information
- Application Number
- CN202311846356.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-28
- Publication Date
- 2025-07-01
AI Technical Summary
In the prior art, when calculating the radiation dose based on a single GPU or CPU, the calculation time is too long, which affects the efficiency and accuracy of the radiation delivery plan.
Multiple processing modules are used to calculate the radiation dose in parallel, by obtaining shared data corresponding to the object, determining the first radiation dose using each processing module, and determining the target radiation dose based on the radiation dose of the multiple processing modules. The shared data includes an initial random number the same as the number of simulated particles.
The efficiency of radiation dose calculation is improved, the consistency of calculation results is ensured, and the calculation time is reduced.
Smart Images

Figure CN120236773A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of radiation delivery, and particularly to a method, device, and storage medium for determining radiation dose. Background Art
[0002] Radiation delivery technologies such as radiotherapy technology, radiation flaw detection technology, and radiation processing technology are increasingly used in clinical applications or industrial applications. The calculation of the radiation dose of simulated particles is a key link in the radiation delivery plan. If the radiation dose is small, the treatment effect cannot be achieved, and if the radiation dose is large, it will damage normal tissues. Therefore, how to quickly and accurately calculate the radiation doses received by the target organ and the organs at risk is crucial for the formulation of the radiation delivery plan.
[0003] Currently, the radiation dose is mainly calculated based on the Monte Carlo algorithm by a single Graphics Processing Unit (GPU) or Central Processing Unit (CPU), which has the problem of a long calculation time for the radiation dose. Summary of the Invention
[0004] Based on this, it is necessary to provide a method, device, and storage medium for determining radiation dose that can reduce the calculation time for the above technical problems.
[0005] In a first aspect, the present application provides a method for determining radiation dose, the method comprising:
[0006] Obtaining shared data corresponding to an object, the shared data including initial random numbers having the same number as the number of simulated particles;
[0007] Using each of a plurality of processing modules, based on the shared data, to determine a first radiation dose corresponding to each processing module; and
[0008] Determining a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to the plurality of processing modules.
[0009] In one embodiment, the using each of a plurality of processing modules, based on the shared data, to determine a first radiation dose corresponding to each processing module includes:
[0010] Determining a calculation task corresponding to each processing module according to the current state of each processing module in the plurality of processing modules;
[0011] Determining the first radiation dose by each processing module executing the corresponding calculation task.
[0012] In one embodiment, using each of the plurality of processing modules to determine a first radiation dose corresponding to each processing module based on the shared data includes:
[0013] Receiving a calculation task corresponding to a processing module sent by a calculation device; the calculation task is determined by the calculation device according to the current state of each processing module in the plurality of processing modules;
[0014] Determining the first radiation dose by executing the corresponding calculation task through each processing module.
[0015] In one embodiment, when calculating the radiation doses of a plurality of beams using the plurality of processing modules, determining a target radiation dose corresponding to the object according to the plurality of first radiation doses corresponding to the plurality of processing modules includes:
[0016] Obtaining a plurality of first radiation doses corresponding to each beam calculated by the plurality of processing modules; and
[0017] Combining the plurality of first radiation doses to determine a target radiation dose corresponding to the object.
[0018] In one embodiment, when calculating the radiation dose of one beam using a plurality of the processing modules, determining a target radiation dose corresponding to the object according to the plurality of first radiation doses corresponding to the plurality of processing modules includes:
[0019] Obtaining the first radiation dose corresponding to some simulated particles in one beam calculated by each of the plurality of processing modules;
[0020] Combining the first radiation doses to determine a second radiation dose of the one beam; and
[0021] Combining the second radiation dose of the one beam with the radiation doses of other beams to determine a target radiation dose corresponding to the object.
[0022] In one embodiment, the method further includes:
[0023] Allocating the shared data to different memories in the processing modules according to the type of the shared data.
[0024] In a second aspect, the present application further provides a method for determining a radiation dose, the method including:
[0025] Sending shared data corresponding to an object to a plurality of processing modules; the shared data includes initial random numbers having the same number as the number of simulated particles;
[0026] The shared data is determined by each of the multiple processing modules to obtain a first radiation dose corresponding to each processing module; and a target radiation dose corresponding to the object is determined according to the multiple first radiation doses corresponding to the respective processing modules.
[0027] In a third aspect, the present application further provides a radiation dose determination device, which is applied to a processing module, and there are multiple processing modules; the device includes:
[0028] An acquisition unit, configured to acquire shared data corresponding to an object, where the shared data includes initial random numbers having the same number as the number of simulated particles;
[0029] A first determination unit, configured to use each of the multiple processing modules to determine, based on the shared data, a first radiation dose corresponding to each processing module; and
[0030] A second determination unit, configured to determine a target radiation dose corresponding to the object according to the multiple first radiation doses corresponding to the multiple processing modules.
[0031] In a fourth aspect, the present application further provides a radiation dose determination device, which is applied to a computing device, and the device includes:
[0032] A sending unit, configured to send shared data corresponding to an object to multiple processing modules; the shared data includes initial random numbers having the same number as the number of simulated particles;
[0033] The shared data is determined by each of the multiple processing modules to obtain a first radiation dose corresponding to each processing module; and a target radiation dose corresponding to the object is determined according to the multiple first radiation doses corresponding to the respective processing modules.
[0034] In a fifth aspect, the present application further provides a computer device, including a memory and a processor, where the memory stores a computer program, and when the processor executes the computer program, the method steps of the first aspect and the second aspect are implemented.
[0035] In a sixth aspect, the present application further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the method steps of the first aspect and the second aspect are implemented.
[0036] In a seventh aspect, the present application further provides a computer program product, including a computer program, and when the computer program is executed by a processor, the method steps of the first aspect and the second aspect are implemented.
[0037] The above-mentioned radiation dose determination method, device, and storage medium obtain shared data corresponding to an object, and use each processing module in a plurality of processing modules to determine a first radiation dose corresponding to each processing module based on the shared data; and determine a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to the plurality of processing modules. The shared data includes initial random numbers that are the same as the number of simulated particles. In the embodiments of the present application, parallel computing of the first radiation dose is used by a plurality of processing modules, so as to determine the target radiation dose based on the first radiation dose, which can improve the calculation efficiency of the target radiation dose. Moreover, the initial random numbers are the same as the number of simulated particles, and each initial random number corresponds to a simulated particle. When calculating the radiation dose using any number of processing modules, the consistency of the calculation results can be ensured. Description of the Drawings
[0038] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following will briefly introduce the drawings required for use in the description of the embodiments or related technologies. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0039] Figure 1 It is an application environment diagram of the radiation dose determination method in an embodiment;
[0040] Figure 2 It is a flowchart of the radiation dose determination method in an embodiment;
[0041] Figure 3 It is a flowchart of the first radiation dose determination method in an embodiment;
[0042] Figure 4 It is a flowchart of the first radiation dose determination method in another embodiment;
[0043] Figure 5 It is a flowchart of the target radiation dose determination method in an embodiment;
[0044] Figure 6 It is a flowchart of the target radiation dose determination method in another embodiment;
[0045] Figure 7 It is a flowchart of the target radiation dose determination method in another embodiment;
[0046] Figure 8 It is a structural block diagram of the radiation dose determination device in an embodiment;
[0047] Figure 9 It is an internal structure diagram of a computer device in an embodiment. Specific embodiments
[0048] In order to make the objectives, technical solutions and advantages of the present application more clear and understandable, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0049] The Monte Carlo dose calculation algorithm is the recognized "gold standard" for dose calculation and can accurately calculate the dose in inhomogeneous materials. Therefore, the Monte Carlo algorithm can accurately simulate the motion trajectories of simulated particles. However, to ensure the calculation uncertainty of the Monte Carlo algorithm, a large number of simulated particle transports need to be simulated, resulting in an overly long calculation time.
[0050] With the continuous development of technology, radiation dose calculations based on CPUs and GPUs have emerged continuously. However, when calculating radiation doses using a single GPU or CPU based on the Monte Carlo algorithm, there is a problem of a relatively long calculation time for radiation doses. Therefore, the present application proposes a radiation dose determination method, device, and storage medium that can solve the above technical problems.
[0051] The radiation dose determination method provided by the embodiments of the present application can be applied to an application environment as Figure 1 shown. This application environment includes multiple processing devices, namely processing device 1, processing device 2... processing device n. The processing devices obtain shared data corresponding to the object, and thus use each processing module in the multiple processing modules to determine a first radiation dose corresponding to each processing module based on the shared data; and determine a target radiation dose corresponding to the object according to the multiple first radiation doses corresponding to the multiple processing modules.
[0052] In an exemplary embodiment, as Figure 2 shown, a radiation dose determination method is provided. Taking the method applied to each processing device in Figure 1 as an example for description, it includes the following S201 to S203. Among them:
[0053] S201, obtain shared data corresponding to the object, where the shared data includes initial random numbers with the same quantity as the simulated particles.
[0054] Optionally, the simulated particles can be the simulated particles corresponding to photon beams and electron beams under a magnetic field, or can also be simulated particles such as protons, heavy ions, and internal irradiation, to improve the applicability of determining the target radiation dose.
[0055] In this embodiment, it can also be that the computing device sends the shared data to each processing module, and each processing module receives the shared data sent by the computing device.
[0056] In an exemplary embodiment, the shared data can also be stored in a storage medium, and the processing module can obtain the shared data from the storage medium.
[0057] Among them, the shared data includes the same number of initial random numbers as the number of simulated particles. Optionally, if the number of simulated particles is 10,000, the computing device generates 10,000 initial random numbers, and the 10,000 initial random numbers correspond one-to-one with the 10,000 simulated particles.
[0058] Optionally, the shared data can also include the model parameters of the treatment machine. The computing device obtains the model parameters corresponding to the treatment machine from the local file or from the cloud according to the treatment machine determined in the treatment plan.
[0059] Optionally, the shared data also includes a cross-section database, radiotherapy data of the object, etc. Optionally, the radiotherapy data includes medical images of the object, the delineation of the target area and normal tissues affected by the radiation rays on the medical images, and the treatment plan formulated according to the medical images.
[0060] S202. Use each processing module among the multiple processing modules to determine the first radiation dose corresponding to each processing module based on the shared data.
[0061] Among them, the processing module can be a graphics processing unit or a server, and the number of multiple processing modules can be set arbitrarily. For example, multiple graphics processing units, that is, multiple processing modules are set on a computer device; or, each processing module can also correspond to a server, with strong scalability.
[0062] Optionally, the processing module can also be a central processing unit. Similarly, the number of central processing units can be set arbitrarily, and multiple central processing units are set on a computer device.
[0063] In this embodiment, the computing device can send corresponding computing tasks to each processing module, and each processing module processes the shared data using the Monte Carlo algorithm according to the corresponding computing task to determine the first radiation dose corresponding to each processing module. For example, if there are 5 processing modules and the number of simulated particles is 10,000, each processing module calculates the first radiation dose for 2,000 simulated particles.
[0064] Optionally, each processing module processes the shared data according to the corresponding computing task to determine the first radiation dose corresponding to each processing module. Other algorithms such as the anisotropic analysis algorithm, the cylinder string method, the superposition algorithm, and the linear Boltzmann transport equation (LBTE) algorithm can also be used.
[0065] In a possible implementation, the computing tasks of each processing module can be preset on each processing module, and each processing module determines the first radiation dose corresponding to each processing module according to the corresponding computing task and shared data.
[0066] S203. Determine a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to a plurality of processing modules.
[0067] In this embodiment, determining the target radiation dose of the object according to the first radiation dose corresponding to each processing module includes the following two cases:
[0068] The first case: In the case of calculating the radiation doses of multiple beams by using multiple processing modules, obtain the first radiation dose of each beam calculated by each processing module, and determine the target radiation dose corresponding to the object from the multiple first radiation doses. That is, the first radiation dose corresponding to each processing module is the radioactive dose corresponding to each beam among the multiple beams. Then, any one processing module obtains the first radiation doses of the beams corresponding to other processing modules, and adds up the first radiation doses to obtain the target radiation dose of the object.
[0069] The second case: In the case of calculating the radiation dose of one beam by using multiple processing modules, obtain the first radiation dose corresponding to some simulated particles in one beam calculated by each of the multiple processing modules, combine the first radiation doses to determine the second radiation dose of one beam; and combine the second radiation dose of one beam with the radiation doses of other beams to determine the target radiation dose corresponding to the object. That is, the first radiation dose corresponding to each processing module is the radioactive dose corresponding to some simulated particles in one beam. Then, any one processing module obtains the first radiation doses of this beam calculated by other processing modules, adds up the multiple first radiation doses to obtain the second radiation dose corresponding to this beam, and combines the second radiation dose of this beam with the radiation doses of other beams to obtain the target radiation dose of the object.
[0070] In the above radiation dose determination method, by obtaining the shared data corresponding to the object, each processing module in the multiple processing modules is used to determine the first radiation dose corresponding to each processing module based on the shared data; and according to the multiple first radiation doses corresponding to the multiple processing modules, the target radiation dose corresponding to the object is determined. The shared data includes initial random numbers with the same number as the simulated particles. In the embodiment of the present application, multiple processing modules are used to calculate the first radiation dose in parallel, and then the target radiation dose is determined based on the first radiation dose, which can improve the calculation efficiency of the target radiation dose. Moreover, the initial random numbers are the same as the number of simulated particles, and each initial random number corresponds to a simulated particle. When using any number of processing modules to calculate the radiation dose, the consistency of the calculation results can be ensured.
[0071] Figure 3 is a schematic flowchart of the first radiation dose determination method in an embodiment. As Figure 3 shown, an exemplary implementation of the present application for determining the first radiation dose corresponding to each processing module based on shared data using each processing module among multiple processing modules includes the following steps:
[0072] S301. Determine the calculation task corresponding to each processing module according to the current state of each processing module among the multiple processing modules.
[0073] In this embodiment, it may be that the computing device determines the calculation tasks corresponding to the processing modules according to the current states of the processing modules, or any one of the processing modules determines the calculation tasks corresponding to the processing modules according to the current states of the processing modules. Optionally, the current state may be the video memory state of the processing module. For example, the video memory sizes of processing module 1 and processing module 2 are equal and less than that of processing module 4, and the video memory of processing module 4 is less than that of processing module 3 and processing module 5. Then, when the number of simulated particles is 10,000, the generated calculation tasks may be that processing module 1 calculates the first radiation dose of 100 simulated particles, processing module 2 calculates the first radiation dose of 100 simulated particles, processing module 3 calculates the first radiation dose of 300 simulated particles, processing module 4 calculates the first radiation dose of 200 simulated particles, and processing module 5 calculates the first radiation dose of 300 simulated particles.
[0074] S302. Determine the first radiation dose by each processing module executing the corresponding calculation task.
[0075] In this embodiment, the processing module processes the shared data according to the calculation tasks corresponding to the processing modules to determine the first radiation dose corresponding to each processing module. Calculating the first radiation dose includes medical image processing, fluence map calculation, source sampling, particle transport, etc.
[0076] In the embodiment of the present application, the computing device determines the calculation task corresponding to each processing module according to the current state of each processing module among the multiple processing modules, and the computing device sends the calculation tasks to each processing module; and determines the first radiation dose by each processing module executing the corresponding calculation task. In the embodiment of the present application, according to the computing device determining the calculation tasks of the processing modules according to the current states of the processing modules, a certain number of simulated particles are dynamically allocated to each processing module, reducing the waiting time between the processing modules.
[0077] Figure 4 is a schematic flowchart of the first radiation dose determination method in another embodiment. As Figure 4As shown in the figure, a possible implementation of using each of multiple processing modules to determine a first radiation dose corresponding to each processing module based on shared data in an embodiment of the present application includes the following steps:
[0078] S401, receive a calculation task corresponding to a processing module sent by a computing device; the calculation task is determined by the computing device according to the current state of each of the multiple processing modules;
[0079] S402, determine the first radiation dose by executing the corresponding calculation task through each processing module.
[0080] In this embodiment, if the computing device is a central processing unit and the processing module is a graphics processing unit, the computing device regularly obtains the current state of each processing module through the system bus, determines the calculation task corresponding to each processing module according to the current state of each of the multiple processing modules, sends each calculation task to the corresponding processing module, and each processing module processes the shared data according to the corresponding calculation task to obtain the corresponding first radiation dose.
[0081] Since the central processing unit needs to have strong versatility to process various different data types, and at the same time, logical judgments will introduce a large number of branch jumps and interrupt processing, all of which make the internal structure of the central processing unit extremely complex. While the graphics processing unit faces a large-scale data environment with highly unified types, independent of each other, and a pure computing environment that does not need to be interrupted. Therefore, each computing device determines the calculation task according to the current state of each of the multiple processing modules, and the processing module executes the corresponding calculation task to determine the first radiation dose, which can make the determination of the first radiation dose more efficient.
[0082] In an embodiment of the present application, receive the calculation task corresponding to the processing module sent by the computing device, and determine the first radiation dose by executing the corresponding calculation task through each processing module. In an embodiment of the present application, the computing device determines the calculation task corresponding to each processing module, so that the processing determines the corresponding first radiation dose according to the calculation task, improving the determination efficiency of the first radiation dose.
[0083] Figure 5 It is a schematic flowchart of a target radiation dose determination method in an embodiment, as Figure 5 As shown in the figure, a possible implementation of determining a target radiation dose corresponding to an object according to multiple first radiation doses corresponding to multiple processing modules in the case of calculating the radiation doses of multiple beams using multiple processing modules in an embodiment of the present application includes the following steps:
[0084] S501, obtain multiple first radiation doses corresponding to each beam calculated by multiple processing modules.
[0085] In this embodiment, each processing module stores the calculated first radiation dose in the global memory, and one processing module accesses the global memory of other processing modules through point-to-point communication to obtain the first radiation dose corresponding to each beam from the global memory. For example, processing module 1 calculates the simulated particles of a partial number of beam 1 to obtain the first radiation dose 11, the simulated particles of a partial number of beam 2 to obtain the first radiation dose 12, and the simulated particles of a partial number of beam 3 to obtain the first radiation dose 13; processing module 2 calculates the simulated particles of a partial number of beam 1 to obtain the first radiation dose 21, and the simulated particles of a partial number of beam 3 to obtain the first radiation dose 23; processing module 3 calculates the simulated particles of a partial number of beam 1 to obtain the first radiation dose 31, and the simulated particles of a partial number of beam 2 to obtain the first radiation dose 32. Each processing module stores the first radiation dose in the global memory, and processing module 1 obtains the first radiation dose 21, the first radiation dose 23, the first radiation dose 31, and the first radiation dose 32 in the global memories of processing module 2 and processing module 3 through point-to-point communication.
[0086] S502. Combine multiple first radiation doses to determine the target radiation dose corresponding to the object.
[0087] In this embodiment, the target radiation dose of the object can be obtained by directly summing up each first radiation dose; alternatively, the target radiation dose of the object can be obtained by performing weighted summation on multiple first radiation doses.
[0088] In the embodiments of the present application, by obtaining multiple first radiation doses corresponding to each beam calculated by multiple processing modules, combining the multiple first radiation doses, and determining the target radiation dose corresponding to the object. In the embodiments of the present application, in the case of using multiple processing modules to calculate the radiation doses of multiple beams, by obtaining the first radiation dose corresponding to each beam in each processing module, and the processing modules directly access the global memory, the calculation of the target radiation dose is accelerated.
[0089] Figure 6 It is a schematic flowchart of the method for determining the target radiation dose in another embodiment. As Figure 6 shown, in the case of using multiple processing modules to calculate the radiation dose of one beam in the embodiments of the present application, a possible implementation manner for determining the target radiation dose corresponding to the object according to multiple first radiation doses corresponding to multiple processing modules includes the following steps:
[0090] S601. Obtain the first radiation dose corresponding to the partial simulated particles in one beam calculated by each of the multiple processing modules.
[0091] In this embodiment, when multiple processing modules are used to calculate the radiation dose of a beam, each processing module stores the calculated first radiation dose of a beam in the global memory. One processing module accesses the global memories of other processing modules through point-to-point communication and obtains the first radiation dose corresponding to some simulated particles in a beam from the global memory. For example, processing module 1 calculates some number of simulated particles of beam 1 to obtain the first radiation dose 11, processing module 2 calculates some number of simulated particles of beam 1 to obtain the first radiation dose 21, and processing module 3 calculates some number of simulated particles of beam 1 to obtain the first radiation dose 31. The first radiation dose 11, the first radiation dose 21, and the first radiation dose 31 are respectively stored in the corresponding global memories. Processing module 1 accesses the global memories of processing module 2 and processing module 3 through point-to-point communication to obtain the first radiation dose 21 and the first radiation dose 31. It is also possible to use one processing module other than the above three processing modules to obtain the first radiation dose 11, the first radiation dose 21, and the first radiation dose 31.
[0092] S602, Combine the first radiation doses to determine the second radiation dose of a beam.
[0093] In this embodiment, sum up each first radiation dose to obtain the second radiation dose of a beam.
[0094] S603, Combine the second radiation dose of a beam with the radiation doses of other beams to determine the target radiation dose corresponding to the object.
[0095] Optionally, the radiation doses of other beams may be stored in the global memory corresponding to the same processing module as the second radiation dose, or may not be stored in the global memory corresponding to the same processing module. If the radiation doses of other beams and the second radiation dose are not stored in the global memory corresponding to the same processing module, then any processing module needs to obtain the corresponding second radiation dose and the radiation doses of other beams from the global memories corresponding to each processing module through point-to-point communication.
[0096] In this embodiment, the second radiation dose of a beam is combined with the radiation doses of other beams to determine the target radiation dose corresponding to the object. For example, the second radiation dose 1 of beam 1, and the radiation doses of other beams are radiation dose 2 and radiation dose 3. If the second radiation dose 1, radiation dose 2, and radiation dose 3 are all stored in the global memory of processing module 1, then the target radiation dose of the object is directly determined according to the sum of the second radiation dose 1, radiation dose 2, and radiation dose 3. If the second radiation dose 1 of beam 1 is stored in the global memory of processing module 1, and radiation dose 2 and radiation dose 3 are stored in the global memory of processing module 2, then processing module 1 can obtain radiation dose 2 and radiation dose 3 in other processing modules through point-to-point communication, and use the sum of the second radiation dose 1, radiation dose 2, and radiation dose 3 as the target radiation dose of the object.
[0097] In the embodiments of the present application, by obtaining the first radiation dose corresponding to some simulated particles in a beam calculated by each of multiple processing modules, combining the first radiation doses, determining the second radiation dose of a beam, and combining the second radiation dose of a beam with the radiation doses of other beams, the target radiation dose corresponding to the object is determined. In the embodiments of the present application, in the case of using multiple processing modules to calculate the radiation dose of a beam, by combining the first radiation doses corresponding to a beam in each processing module, the second radiation dose is obtained, so that the second radiation dose is combined with other radiation doses, and the parallel operation of multiple processing modules speeds up the calculation of the target radiation dose.
[0098] In one embodiment, the method further includes: allocating the shared data to different memories in the processing module according to the type of the shared data.
[0099] In this embodiment, it may be that the processing module allocates the shared data to different memories in the processing module according to at least one of the data size, usage frequency, and usage mode of the shared data. For example, if the shared data is a large memory data such as a medical image, the shared data can be allocated to the global memory in the processing module; if the shared data is a data with a high usage frequency, the shared data is allocated to the constant memory in the processing module; if the shared data involves some processing such as interpolation operations, the shared data can be allocated to the texture memory in the processing module.
[0100] In a possible implementation, it may also be that the computing device allocates the shared data to different memories in the processing module according to at least one of the data size, usage frequency, and usage mode of the shared data.
[0101] In the embodiments of the present application, according to the type of shared data, the shared data is allocated to different memories in the processing module, which improves the access efficiency of the shared data, thereby accelerating the calculation of the target radiation dose.
[0102] Figure 7 FIG. 4 is a schematic flowchart of a method for determining a target radiation dose in another embodiment. The method is applied to a computing device and includes: sending shared data corresponding to an object to a plurality of processing modules; the shared data includes initial random numbers equal in number to the number of simulated particles; each of the plurality of processing modules determines a first radiation dose corresponding to each processing module from the shared data; and determining a target radiation dose corresponding to the object according to the plurality of first radiation doses corresponding to each processing module.
[0103] Among them, taking the computing device as a central processing unit and each processing module as a graphics processing unit as an example, the central processing unit obtains radiotherapy data input by a user or obtains radiotherapy data from a storage medium of the computing device, generates target data according to the radiotherapy data, and sends the radiotherapy data and the target data as shared data to each graphics processing unit. Each graphics processing unit calculates a first radiation dose according to the corresponding calculation task, and thus determines a target radiation dose corresponding to the object according to the first radiation doses corresponding to each graphics processing unit.
[0104] The central processing unit includes a register, an arithmetic unit, and a controller. The graphics processing unit includes a computing unit and a memory. The memory includes texture memory, global memory, constant memory, etc. The register, the arithmetic unit, the controller, the computing unit, and the memory are connected through a system bus.
[0105] The radiotherapy data input by the user can be stored in the register. The controller receives an externally input control quality and obtains the radiotherapy data from the register. The arithmetic unit processes the obtained radiotherapy data to obtain target data, and takes the radiotherapy data and the target data as shared data, and sends the shared data to each graphics processing unit through the system bus.
[0106] The central processing unit sends the shared data to the graphics processing unit. The graphics processing unit allocates the shared data to different memories for storage according to the type of the shared data. When the computing unit executes the corresponding calculation task, it obtains the corresponding shared data from each memory, determines the first radiation dose corresponding to each graphics processing unit, and stores the first radiation dose in the global memory.
[0107] It should be understood that although the steps in the flowcharts involved in the above embodiments are shown in sequence according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless there is a clear indication in this article, the execution of these steps has no strict order limit, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above embodiments may include multiple steps or multiple stages. These steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be executed alternately or in turn with at least a part of other steps or steps or stages in other steps.
[0108] Based on the same inventive concept, an embodiment of the present application also provides a radiation dose determination device for implementing the radiation dose determination method described above. The solution provided by this device to solve the problem is similar to the solution described in the above method. Therefore, the specific limitations in one or more embodiments of the radiation dose determination device provided below can refer to the limitations on the radiation dose determination method in the above text, and will not be repeated here.
[0109] In an exemplary embodiment, as Figure 8 shown, a radiation dose determination device is provided, including: an acquisition unit 11, a first determination unit 12, and a second determination unit 13, where:
[0110] The acquisition unit 11 is configured to acquire shared data corresponding to an object, and the shared data includes initial random numbers that are the same as the number of simulated particles;
[0111] The first determination unit 12 is configured to use each of the multiple processing modules to determine a first radiation dose corresponding to each processing module based on the shared data; and
[0112] The second determination unit 13 is configured to determine a target radiation dose corresponding to the object according to the multiple first radiation doses corresponding to the multiple processing modules.
[0113] In one embodiment, the first determination unit includes:
[0114] The first determination unit is configured to determine a calculation task corresponding to each of the multiple processing modules according to the current state of each of the multiple processing modules by a computing device;
[0115] The sending unit is configured to send the calculation task to each processing module by a computing device; and
[0116] The second determination unit is configured to determine the first radiation dose by each processing module executing the corresponding calculation task.
[0117] In one embodiment, the first determination unit further includes:
[0118] A receiving unit, configured to receive a computing task corresponding to a processing module sent by a computing device; the computing task is determined by the computing device according to the current state of each processing module in a plurality of processing modules;
[0119] A third determination unit, configured to determine a first radiation dose by executing the corresponding computing task through each processing module.
[0120] In one embodiment, the second determination unit includes:
[0121] A first acquisition unit, configured to acquire a plurality of first radiation doses corresponding to each beam calculated by a plurality of processing modules; and
[0122] A fourth determination unit, configured to combine the plurality of first radiation doses to determine a target radiation dose corresponding to an object.
[0123] In one embodiment, the second determination unit further includes:
[0124] A second acquisition unit, configured to acquire a first radiation dose corresponding to partial simulation particles in a beam calculated by each of a plurality of processing modules;
[0125] A fifth determination unit, configured to combine the first radiation doses to determine a second radiation dose of a beam; and
[0126] A sixth determination unit, configured to combine the second radiation dose of a beam with the radiation doses of other beams to determine a target radiation dose corresponding to an object.
[0127] In one embodiment, the apparatus further includes a distribution module, configured to distribute shared data to different memories in the processing modules according to the type of the shared data.
[0128] In one embodiment, a radiation dose determination apparatus is provided, including:
[0129] A sending unit, configured to send shared data corresponding to an object to a plurality of processing modules; the shared data includes initial random numbers having the same number as the number of simulation particles;
[0130] The shared data is used by each of the plurality of processing modules to determine a first radiation dose corresponding to each processing module; and to determine a target radiation dose corresponding to the object according to the plurality of first radiation doses corresponding to each processing module.
[0131] Each module in the above-mentioned radiation dose determination device can be implemented in whole or in part by software, hardware, or a combination thereof. Each of the above modules can be embedded in the processor of the computer device in hardware form or be independent of it, or can be stored in the memory of the computer device in software form, so that the processor can call and execute the operations corresponding to each of the above modules.
[0132] In an exemplary embodiment, a computer device is provided. The computer device can be a computer device, and the computer device can be a server. Its internal structure diagram can be as Figure 9 shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, abbreviated as I / O), and a communication interface. Among them, the processor, the memory, and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store radiation dose determination-related data. The input / output interface of the computer device is used to exchange information between the processor and external devices. The communication interface of the computer device is used to communicate with external terminals through a network connection. When the computer program is executed by the processor, it implements a radiation dose determination method.
[0133] Those skilled in the art can understand that Figure 9 the structure shown in
[0134] is only a block diagram of some structures related to the solution of this application, and does not constitute a limitation on the computer device to which the solution of this application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine some components, or have a different component layout.
[0135] Obtain shared data corresponding to the object, where the shared data includes initial random numbers with the same number as the simulated particle number;
[0136] Use each processing module in the multiple processing modules to determine the first radiation dose corresponding to each processing module based on the shared data; and
[0137] Determine the target radiation dose corresponding to the object according to the multiple first radiation doses corresponding to the multiple processing modules.
[0138] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0139] Determine the computing task corresponding to each processing module according to the current state of each processing module in a plurality of processing modules;
[0140] Determine a first radiation dose by executing the corresponding computing task through each processing module.
[0141] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0142] Receive the computing task corresponding to the processing module sent by the computing device; the computing task is determined by the computing device according to the current state of each processing module in a plurality of processing modules;
[0143] Determine a first radiation dose by executing the corresponding computing task through each processing module.
[0144] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0145] Obtain a plurality of first radiation doses corresponding to each beam calculated by a plurality of processing modules; and
[0146] Combine the plurality of first radiation doses to determine the target radiation dose corresponding to the object.
[0147] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0148] Obtain the first radiation dose corresponding to some simulated particles in a beam calculated by each processing module in a plurality of processing modules;
[0149] Combine the first radiation doses to determine the second radiation dose of a beam; and
[0150] Combine the second radiation dose of a beam with the radiation doses of other beams to determine the target radiation dose corresponding to the object.
[0151] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0152] Allocate the shared data to different memories in the processing modules according to the type of the shared data.
[0153] In one embodiment, when the processor executes the computer program, the following steps are further implemented:
[0154] Send the shared data corresponding to the object to a plurality of processing modules; the shared data includes initial random numbers having the same number as the simulated particles;
[0155] The shared data is used by each of multiple processing modules to determine a first radiation dose corresponding to each processing module; and a target radiation dose corresponding to the object is determined based on the multiple first radiation doses corresponding to the respective processing modules.
[0156] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the following steps are implemented:
[0157] Obtain shared data corresponding to the object, where the shared data includes initial random numbers that are the same as the number of simulated particles;
[0158] Use each of the multiple processing modules to determine a first radiation dose corresponding to each processing module based on the shared data; and
[0159] Determine a target radiation dose corresponding to the object based on the multiple first radiation doses corresponding to the multiple processing modules.
[0160] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0161] Determine a computing task corresponding to each processing module according to the current state of each processing module among the multiple processing modules;
[0162] Determine the first radiation dose by each processing module executing the corresponding computing task.
[0163] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0164] Receive the computing task corresponding to the processing module sent by the computing device; the computing task is determined by the computing device according to the current state of each processing module among the multiple processing modules;
[0165] Determine the first radiation dose by each processing module executing the corresponding computing task.
[0166] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0167] Obtain multiple first radiation doses corresponding to respective beams calculated by the multiple processing modules; and
[0168] Combine the multiple first radiation doses to determine the target radiation dose corresponding to the object.
[0169] In one embodiment, when the computer program is executed by the processor, the following steps are further implemented:
[0170] Obtain the first radiation dose corresponding to a part of the simulated particles in a beam calculated by each of the multiple processing modules;
[0171] Combine a first radiation dose and determine a second radiation dose for one beam; and
[0172] Combine the second radiation dose of one beam with the radiation doses of other beams to determine a target radiation dose corresponding to the object.
[0173] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0174] Allocate shared data to different memories in the processing modules according to the type of the shared data.
[0175] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0176] Send the shared data corresponding to the object to multiple processing modules; the shared data includes initial random numbers equal in number to the number of simulated particles;
[0177] The shared data is used by each of the multiple processing modules to determine a first radiation dose corresponding to each processing module; and a target radiation dose corresponding to the object is determined according to the multiple first radiation doses corresponding to the respective processing modules.
[0178] In one embodiment, there is provided a computer program product including a computer program which, when executed by a processor, implements the following steps:
[0179] Obtain shared data corresponding to the object, the shared data including initial random numbers equal in number to the number of simulated particles;
[0180] Use each of the multiple processing modules to determine, based on the shared data, a first radiation dose corresponding to each processing module; and
[0181] Determine a target radiation dose corresponding to the object according to the multiple first radiation doses corresponding to the multiple processing modules.
[0182] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0183] Determine a computing task corresponding to each processing module according to the current state of each of the multiple processing modules;
[0184] Determine the first radiation dose by each processing module executing the corresponding computing task.
[0185] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0186] Receive the computing tasks corresponding to the processing modules sent by the computing device; the computing tasks are determined by the computing device according to the current states of each of the multiple processing modules;
[0187] Determine the first radiation dose by executing the corresponding computing tasks through each processing module.
[0188] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0189] Obtain multiple first radiation doses corresponding to each beam calculated by multiple processing modules; and
[0190] Combine the multiple first radiation doses to determine the target radiation dose corresponding to the object. In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0191] Obtain the first radiation dose corresponding to some simulated particles in a beam calculated by each of the multiple processing modules;
[0192] Combine the first radiation doses to determine the second radiation dose of a beam; and
[0193] Combine the second radiation dose of a beam with the radiation doses of other beams to determine the target radiation dose corresponding to the object.
[0194] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0195] Allocate the shared data to different memories in the processing modules according to the type of the shared data.
[0196] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented:
[0197] Send the shared data corresponding to the object to multiple processing modules; the shared data includes initial random numbers with the same quantity as the simulated particles;
[0198] The shared data is used by each of the multiple processing modules to determine the first radiation dose corresponding to each processing module; and determine the target radiation dose corresponding to the object according to the multiple first radiation doses corresponding to each processing module.
[0199] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use, and processing of the relevant data need to comply with the relevant regulations.
[0200] Those of ordinary skill in the art can understand that all or part of the processes in the above-described embodiment methods can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above various methods. Among them, any reference to a memory, database, or other medium used in the various embodiments provided in the present application can include at least one of non-volatile and volatile memories. Non-volatile memories can include read-only memory (ROM), magnetic tapes, floppy disks, flash memories, optical memories, high-density embedded non-volatile memories, resistive random access memories (ReRAM), magnetoresistive random access memories (MRAM), ferroelectric random access memories (FRAM), phase change memories (PCM), graphene memories, etc. Volatile memories can include random access memory (RAM) or external cache memories, etc. By way of illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM), etc. The databases involved in the various embodiments provided in the present application can include at least one of relational databases and non-relational databases. Non-relational databases can include distributed databases based on blockchain, etc., without limitation. The processors involved in the various embodiments provided in the present application can be general-purpose processors, computing devices, processing modules, digital signal processors, programmable logics, data processing logics based on quantum computing, etc., without limitation.
[0201] The technical features of the above embodiments can be combined arbitrarily. For the sake of brevity of description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.
[0202] The above-described embodiments merely represent several implementation manners of the present application. The description thereof is relatively specific and detailed, but it should not be construed as a limitation on the patent scope of the present application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the appended claims.
Claims
1. A method for determining radiation dose, characterized in that, The method includes: Obtaining shared data corresponding to an object, where the shared data includes initial random numbers equal in number to the number of simulated particles; Using each of a plurality of processing modules to determine a first radiation dose corresponding to each processing module based on the shared data; and Determining a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to the plurality of processing modules.
2. The determination method according to claim 1, wherein The using each of a plurality of processing modules to determine a first radiation dose corresponding to each processing module based on the shared data includes: Determining a calculation task corresponding to each processing module according to the current state of each processing module in the plurality of processing modules; Determining the first radiation dose by each processing module executing the corresponding calculation task.
3. The determination method according to claim 1, wherein The using each of a plurality of processing modules to determine a first radiation dose corresponding to each processing module based on the shared data includes: Receiving a calculation task corresponding to a processing module sent by a computing device; the calculation task is determined by the computing device according to the current state of each processing module in the plurality of processing modules; Determining the first radiation dose by each processing module executing the corresponding calculation task.
4. The determination method according to claim 1, characterized in that, In the case of calculating the radiation doses of a plurality of beams using the plurality of processing modules, the determining a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to the plurality of processing modules includes: Obtaining a plurality of first radiation doses corresponding to each beam calculated by the plurality of processing modules; and Combining the plurality of first radiation doses to determine a target radiation dose corresponding to the object.
5. The determination method according to claim 1, wherein In the case of calculating the radiation dose of one beam using a plurality of the processing modules, the determining a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to the plurality of processing modules includes: Obtaining first radiation doses corresponding to partial simulated particles in one beam calculated by each of the plurality of processing modules; Combining the first radiation doses to determine a second radiation dose of the one beam; and Combining the second radiation dose of the one beam with the radiation doses of other beams to determine a target radiation dose corresponding to the object.
6. The determination method according to claim 1, characterized in that, The method further includes: Allocating the shared data to different memories in the processing modules according to the type of the shared data.
7. A method for determining radiation dose, characterized in that, The method includes: Sending shared data corresponding to an object to a plurality of processing modules; the shared data includes initial random numbers equal in number to the number of simulated particles; The shared data is used by each of the plurality of processing modules to determine a first radiation dose corresponding to each processing module; and a target radiation dose corresponding to the object is determined according to a plurality of first radiation doses corresponding to each of the processing modules.
8. A radiation dose determination device, characterized in that, The apparatus is applied to processing modules, and there are a plurality of the processing modules; the apparatus includes: An obtaining unit, configured to obtain shared data corresponding to an object, where the shared data includes initial random numbers equal in number to the number of simulated particles; A first determination unit, configured to use each of a plurality of processing modules to determine a first radiation dose corresponding to each of the processing modules based on the shared data; and A second determination unit, configured to determine a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to the plurality of processing modules.
9. A radiation dose determination device, characterized in that, The apparatus is applied to a computing device, and the apparatus includes: A sending unit, configured to send shared data corresponding to an object to a plurality of processing modules; the shared data includes initial random numbers having the same number as the number of simulated particles; The shared data is used by each of the plurality of processing modules to determine a first radiation dose corresponding to each of the processing modules; and to determine a target radiation dose corresponding to the object according to a plurality of first radiation doses corresponding to the respective processing modules.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.