CN111008070B - Parallel task division method and system for full reactor core sub-channels of fast neutron reactor - Google Patents

Parallel task division method and system for full reactor core sub-channels of fast neutron reactor Download PDF

Info

Publication number
CN111008070B
CN111008070B CN201911262033.2A CN201911262033A CN111008070B CN 111008070 B CN111008070 B CN 111008070B CN 201911262033 A CN201911262033 A CN 201911262033A CN 111008070 B CN111008070 B CN 111008070B
Authority
CN
China
Prior art keywords
sub
channel
channels
domain
current
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.)
Active
Application number
CN201911262033.2A
Other languages
Chinese (zh)
Other versions
CN111008070A (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.)
University of Science and Technology Beijing USTB
Original Assignee
University of Science and Technology Beijing USTB
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 University of Science and Technology Beijing USTB filed Critical University of Science and Technology Beijing USTB
Priority to CN201911262033.2A priority Critical patent/CN111008070B/en
Publication of CN111008070A publication Critical patent/CN111008070A/en
Application granted granted Critical
Publication of CN111008070B publication Critical patent/CN111008070B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E30/00Energy generation of nuclear origin
    • Y02E30/30Nuclear fission reactors

Abstract

The invention provides a method and a system for dividing parallel tasks of a full reactor core subchannel of a fast neutron reactor, wherein the method comprises the following steps: storing the sub-channels of the full reactor core of the fast neutron reactor to be divided according to a preset data structure; traversing all sub-channels in the current assembly based on a preset data structure, dividing the sub-channels in the current assembly into a preset number of solving domains, and completing parallel task division of the current assembly; and applying the parallel task division result of the current assembly to all assemblies in the full reactor core of the fast neutron reactor to complete the parallel task division of the full reactor core sub-channels of the fast neutron reactor. The method realizes parallel task division of the full reactor core of the fast reactor based on a specific data structure and a division algorithm, so that the thermal fluid sub-channel simulation software can solve the fast reactor problem in large-scale parallel, and has important significance for improving the simulation efficiency of the sub-channel of the full reactor core of the fast reactor.

Description

Parallel task division method and system for full reactor core sub-channels of fast neutron reactor
Technical Field
The invention relates to the technical field of high-performance calculation, in particular to a method and a system for dividing parallel tasks of a full reactor core subchannel of a fast neutron reactor.
Background
The development of fluid simulation of a full core sub-channel of a nuclear reactor based on the full core to each sub-channel requires great computational capability support, and along with the development of high-performance computing technology and supercomputers, the simulation calculation of the thermal fluid of the full core of the nuclear reactor to each sub-channel is realized by utilizing the high-performance computing technology at present.
The time consumption is huge when using the traditional serial program to perform the full core sub-channel simulation of the fast reactor, one effective way to solve the problem is to perform the sub-channel simulation of the full core of the fast reactor in a short time by using the parallel technology, while an important step of performing the thermodynamic fluid simulation of the full core of the fast reactor by using the parallel technology is to perform parallel task division, generally dividing the sub-channels of the full core into different solving domains according to the principle of space adjacency, and dividing the calculation tasks of the different solving domains into different calculation units. However, the current task division method is not suitable for parallel task division of the full core sub-channels of the fast neutron reactor.
Disclosure of Invention
The invention aims to provide a method and a system for dividing parallel tasks of a full reactor core subchannel of a fast neutron reactor, so as to solve the problem that the conventional task dividing method is not suitable for dividing parallel tasks of the full reactor core subchannel of the fast neutron reactor.
In order to solve the technical problems, the invention provides the following technical scheme:
a fast neutron reactor full core subchannel parallel tasking method, the fast neutron reactor full core subchannel parallel tasking method comprising:
storing the sub-channels of the full reactor core of the fast neutron reactor to be divided according to a preset data structure;
traversing all sub-channels in the current assembly based on the preset data structure, dividing the sub-channels in the current assembly into a preset number of solving domains, and completing parallel task division of the current assembly;
and applying the parallel task division result of the current assembly to all assemblies in the full reactor core of the fast neutron reactor to complete the parallel task division of the full reactor core sub-channels of the fast neutron reactor.
Wherein, the member variables of the preset data structure include: the number of the current sub-channel in the component, the number of the layer number of the current sub-channel in the component, the meta-structure type of the current sub-channel, the number of the solution domain to which the current sub-channel is divided, and the number of the adjacent sub-channel of the current sub-channel in the component.
The meta structure type comprises an upper sub-channel, a lower sub-channel, an angle channel and an edge channel;
the upper type sub-channel comprises three adjacent sub-channels which are respectively positioned above, at the lower left corner and at the lower right corner; the lower-type sub-channel comprises three adjacent sub-channels which are respectively positioned at the left upper corner, the right upper corner and the lower part of the lower-type sub-channel; the corner channel comprises two adjacent sub-channels; the side channel includes three adjacent sub-channels.
Setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in the component as i as sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the traversing is performed on all the sub-channels in the current component, and the sub-channels in the current component are divided into a preset number of solving domains, specifically:
traversing each adjacent sub-channel of sub-channel i in turn according to a preset sequence, if solving domain D j If the number of the sub-channels is smaller than n, dividing the currently traversed sub-channels into a solving domain D j In (a) and (b); if solve domain D j Dividing the currently traversed sub-channels into the next solving domain if the number of the sub-channels is equal to n;
if all adjacent sub-channels of the sub-channel i are divided into a solving domain D j After middle, solve domain D j If the number of the sub-channels in the sub-channel is still smaller than n, continuously traversing all adjacent sub-channels corresponding to the adjacent sub-channel traversed by the first sub-channel i according to the preset sequence, and dividing the currently traversed sub-channel into a solving domain D j And so on until domain D is solved j The number of the sub-channels in the module is equal to n, and the parallel tasks of the module are divided after all the sub-channels in the module are traversed.
Setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in the component as i as sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the traversing is performed on all the sub-channels in the current component, and the sub-channels in the current component are divided into a preset number of solving domains, specifically:
traversing the next sub-channel in the same layer as sub-channel i, i.e. sub-channel i+1, if sub-channel i+n-1 is in the same layer as sub-channel i, then sub-channel i to sub-channel i+n-1 division into solution domain D j In (a) and (b);
if the sub-channel i+n-1 is not in the same layer as the sub-channel i, if the sub-channel i+m is traversed, all the sub-channels in the layer where the sub-channel i is located are traversed, wherein m is<n-1; the next layer of sub-channels adjacent to the seek sub-channel i+m continues to traverse in the clockwise direction until the domain D is solved j Stopping when the number of the sub-channels is n, and completing the division of parallel tasks of one component after traversing all the sub-channels in the one component.
Correspondingly, in order to solve the technical problems, the invention also provides the following technical scheme:
a fast neutron reactor full core subchannel parallel tasking system, the fast neutron reactor full core subchannel parallel tasking system comprising:
the sub-channel storage module is used for storing the sub-channels of the full reactor core of the fast neutron reactor to be divided according to a preset data structure;
the task division module is used for traversing all the sub-channels in the current assembly based on the preset data structure, dividing the sub-channels in the current assembly into a preset number of solving domains and completing parallel task division of the current assembly; and applying the parallel task division result of the current assembly to all assemblies in the full reactor core of the fast neutron reactor to complete the parallel task division of the full reactor core sub-channels of the fast neutron reactor.
The member variables of the preset data structure adopted by the subchannel storage module comprise: the number of the current sub-channel in the component, the number of the layer number of the current sub-channel in the component, the meta-structure type of the current sub-channel, the number of the solution domain to which the current sub-channel is divided, and the number of the adjacent sub-channel of the current sub-channel in the component.
The meta structure type comprises an upper sub-channel, a lower sub-channel, an angle channel and an edge channel;
the upper type sub-channel comprises three adjacent sub-channels which are respectively positioned above, at the lower left corner and at the lower right corner; the lower-type sub-channel comprises three adjacent sub-channels which are respectively positioned at the left upper corner, the right upper corner and the lower part of the lower-type sub-channel; the corner channel comprises two adjacent sub-channels; the side channel includes three adjacent sub-channels.
Setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in the component as i as sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the task dividing module performs parallel task dividing on the current component, specifically:
traversing each adjacent sub-channel of sub-channel i in turn according to a preset sequence, if solving domain D j If the number of the sub-channels is smaller than n, dividing the currently traversed sub-channels into a solving domain D j In (a) and (b); if solve domain D j Dividing the currently traversed sub-channels into the next solving domain if the number of the sub-channels is equal to n;
if all adjacent sub-channels of the sub-channel i are divided into a solving domain D j After middle, solve domain D j If the number of the sub-channels in the sub-channel is still smaller than n, continuously traversing all adjacent sub-channels corresponding to the adjacent sub-channel traversed by the first sub-channel i according to the preset sequence, and dividing the currently traversed sub-channel into a solving domain D j And so on until domain D is solved j The number of the sub-channels in the module is equal to n, and the parallel tasks of the module are divided after all the sub-channels in the module are traversed.
Setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in the component as i as sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the task dividing module performs parallel task dividing on the current component, specifically:
traversing the next sub-channel in the same layer as sub-channel i, namely sub-channel i+1, if sub-channel i+n-1 is in the same layer as sub-channel i, dividing sub-channel i to sub-channel i+n-1 into solving domain D j In (a) and (b);
if the sub-channel i+n-1 is not at the same layer as the sub-channel i, it is assumed that the sub-channel i is traversed to the sub-channel i+mAll sub-channels at the layer are traversed, where m<n-1; the next layer of sub-channels adjacent to the seek sub-channel i+m continues to traverse in the clockwise direction until the domain D is solved j Stopping when the number of the sub-channels is n, and completing the division of parallel tasks of one component after traversing all the sub-channels in the one component.
The technical scheme of the invention has the following beneficial effects:
the parallel task division method for the full reactor core sub-channels of the fast reactor is suitable for the reactor core structure of the fast reactor, can solve the problem that the distribution of the reactor core sub-channels of the fast reactor is not a traditional matrix structure, and is difficult to realize the parallel task division through the traditional array division method.
Drawings
FIG. 1 is a flow chart of a method for partitioning parallel tasks of a full core subchannel of a fast neutron reactor according to the present invention;
FIG. 2 is a schematic cross-sectional view of a fast reactor core assembly;
FIG. 3 is a meta-structure diagram of the neutron channels of the fast reactor core assembly;
FIG. 4 is a schematic diagram of a partitioning result using a breadth-first partitioning algorithm;
fig. 5 is a schematic diagram of a division result using a hierarchical division algorithm.
Detailed Description
In order to make the technical problems, technical solutions and advantages to be solved more apparent, the following detailed description will be given with reference to the accompanying drawings and specific embodiments.
First embodiment
Referring to fig. 1 to 5, the present embodiment provides a method for parallel task division of full core sub-channels of a fast neutron reactor, which is shown in fig. 1, and includes:
s101, storing the sub-channels of the full reactor core of the fast neutron reactor to be divided according to a preset data structure;
it should be noted that, unlike a pressurized water reactor assembly, the cross section is a rectangle, the distribution of the sub-channels is a matrix distribution, and the sub-channels can be stored in a two-dimensional array, and parallel task division can be easily realized by dividing the two-dimensional array. The cross section of the fast reactor core assembly is regular hexagon, the shape of the corresponding sub-channel is similar to a regular triangle, as shown in fig. 2, in the figure, the sub-channels 1-6 are first-layer sub-channels, the sub-channels 7-24 are second-layer sub-channels, and the sub-channels 25-42 are third-layer sub-channels; the distribution of visible sub-channels cannot be stored simply in a two-dimensional array.
In this regard, the present embodiment designs a data structure for storing sub-channels using a fast reactor core structure, based on which fast reactor full reactor core sub-channel parallel task division for large-scale clustering/super calculation can be completed.
Wherein, the member variables of the preset data structure include: the number index of the current sub-channel in the component, the layer number layer of the current sub-channel in the component, the meta-structure type of the current sub-channel, the number domain of the solution domain to which the current sub-channel is divided, and the number Surd_chan [0-3] of the adjacent sub-channel of the current sub-channel in the component.
The sub-channels can be divided into four sub-channels of an upper sub-channel, a lower sub-channel, an angle channel and an edge channel according to different positions of the sub-channels in the component, as shown in fig. 3. Because there is no exchange of fluid between sub-channels across the component, the sub-channels across the component are not considered to be divided into the same solving domain during the division, and each sub-channel is adjacent to three sub-channels at most in the same component, and the positions of the adjacent sub-channels in the four-element structure are numbered by 0,1 and 2.
Specifically, as shown in fig. 3 (a), the "upper" center channel includes three adjacent sub-channels respectively located at the lower left corner (position No. 0), the lower right corner (position No. 1) and the upper side (position No. 2); the lower sub-channel is shown in fig. 3 (b), and comprises three adjacent sub-channels respectively positioned at the upper left corner (position No. 0), the upper right corner (position No. 1) and the lower side (position No. 2); the angular channel is shown in fig. 3 (c) as comprising two adjacent sub-channels, (c) positions No. 2 and No. 3 from adjacent assemblies; the side channel is shown in fig. 3 (d) as comprising three adjacent sub-channels, with position number 3 in the figure coming from adjacent modules.
Based on the above, type may be-1, 0,1,2, and 3, respectively representing an initialization value, "upper" type center channel, "lower" type center channel, side channel, and corner channel; the initialization value of domain is-1, surd_chan [0-3] records the number in the assembly of the sub-channel around the current sub-channel, the subscripts 0-3 of the number correspond to the sub-channel positions 0-3 in the sub-channel element structure diagram respectively, and if Surd_chan [ xxx ] is 0, the position is indicated that no sub-channel exists or no corresponding sub-channel is found yet. If the Surd_chan [ xxx ] value is less than 0, it indicates that the sub-channel at this location is located in another component, and its absolute value indicates the global number of the sub-channel in the corresponding component.
S102, traversing all sub-channels in the current assembly based on a preset data structure, dividing the sub-channels in the current assembly into a preset number of solving domains, and completing parallel task division of the current assembly;
when the method of the present embodiment divides the whole core, the method uses the components as units, and if the whole core has N components, each component is finally divided into N solution domains, and the final whole core sub-channel is divided into n×n solution domains.
Parallel task partitioning here provides two ways, one is breadth-first traversal of three azimuthally adjacent sub-channels that take precedence over the current sub-channel; another way is to traverse the layer where the sub-channels are located.
The two modes are described as follows:
breadth-first partitioning algorithm:
setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in a component as i as a sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
traversing all the sub-channels in the current assembly, and dividing the sub-channels in the current assembly into a preset number of solving domains, wherein the method specifically comprises the following steps:
traversing each adjacent sub-channel of sub-channel i in turn according to a preset sequence, if solving domain D j If the number of the sub-channels is smaller than n, dividing the currently traversed sub-channels into a solving domain D j In (a) and (b); if solve domain D j Dividing the currently traversed sub-channels into the next solving domain if the number of the sub-channels is equal to n;
if all adjacent sub-channels of the sub-channel i are divided into a solving domain D j After middle, solve domain D j If the number of the sub-channels in the sub-channel is still smaller than n, continuously traversing all adjacent sub-channels corresponding to the adjacent sub-channel traversed by the first sub-channel i according to the preset sequence, and dividing the currently traversed sub-channel into a solving domain D j And so on until domain D is solved j The number of the sub-channels in the module is equal to n, and the parallel tasks of the module are divided after all the sub-channels in the module are traversed.
Specifically, here, the present embodiment is to divide sub-channel i into solving domain D j After that, if solve the domain D j If the number of the sub-channels is smaller than n, dividing the sub-channel at the 0 number position of the sub-channel i into a solving domain D j In the step (C), then, whether the sub-channels of the position 1 and the position 2 of the sub-channel i are divided into a solving domain D is continuously judged j Is a kind of medium. If the sub-channel of three positions of the sub-channel i is divided into a solving domain D j After middle, solve domain D j If the number of the sub-channels in the solution domain is still smaller than n, traversing the 0 number position of the sub-channel in the 0 number position of the sub-channel i, and dividing the sub-channel into the solution domain D j And so on until domain D is solved j The number of neutron channels is equal to n.
The 4 sub-channels are divided into a solving domain, the division result of the breadth-first division algorithm is shown in fig. 4, and the number of the sub-channel position in the figure represents the solving domain to which the sub-channel belongs.
Hierarchical division algorithm:
setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in a component as i as a sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
traversing all the sub-channels in the current assembly, and dividing the sub-channels in the current assembly into a preset number of solving domains, wherein the method specifically comprises the following steps:
traversing the next sub-channel in the same layer as sub-channel i, namely sub-channel i+1, if sub-channel i+n-1 is in the same layer as sub-channel i, dividing sub-channel i to sub-channel i+n-1 into solving domain D j In (a) and (b);
if the sub-channel i+n-1 is not in the same layer as the sub-channel i, if the sub-channel i+m is traversed, all the sub-channels in the layer where the sub-channel i is located are traversed, wherein m is<n-1; the next layer of sub-channels adjacent to the seek sub-channel i+m continues to traverse in the clockwise direction until the domain D is solved j Stopping when the number of the sub-channels is n, and completing the division of parallel tasks of one component after traversing all the sub-channels in the one component.
The 4 sub-channels are divided into a solving domain, the division result of the hierarchical division algorithm is shown in fig. 5, and the number of the sub-channel position in the diagram represents the solving domain to which the sub-channel belongs.
S103, the parallel task division result of the current assembly is applied to all assemblies in the full reactor core of the fast neutron reactor, so that the parallel task division of the full reactor core sub-channels of the fast neutron reactor is completed.
Here, the principle is that the components in the reactor core have the same structure, and the division result of the previous component is applied to all the components in the reactor core, so that the division result of the all-reactor-core sub-channel tasks of the fast reactor can be obtained.
The parallel task division method for the full reactor core sub-channels of the fast neutron reactor is suitable for a reactor core structure of the fast reactor, and can solve the problem that the distribution of the reactor core sub-channels of the fast reactor is not a traditional matrix structure, and the parallel task division is difficult to realize through a traditional array division method; based on a specific data structure and a division algorithm, the division of parallel tasks of the whole reactor core of the fast reactor is realized, so that the thermodynamic fluid subchannel simulation software can solve the fast reactor problem in a large-scale parallel manner, and the method has important significance for improving the simulation efficiency of the subchannel of the whole reactor core of the fast reactor.
Second embodiment
The embodiment provides a fast neutron reactor full core subchannel parallel task partitioning system, which comprises:
the sub-channel storage module is used for storing the sub-channels of the full reactor core of the fast neutron reactor to be divided according to a preset data structure;
the task division module is used for traversing all the sub-channels in the current assembly based on a preset data structure, dividing the sub-channels in the current assembly into a preset number of solving domains and completing parallel task division of the current assembly; and applying the parallel task division result of the current assembly to all assemblies in the full reactor core of the fast neutron reactor to complete the parallel task division of the full reactor core sub-channels of the fast neutron reactor.
The fast neutron reactor full core subchannel parallel task partitioning system of the embodiment corresponds to the fast neutron reactor full core subchannel parallel task partitioning method of the first embodiment; the functions implemented by the functional modules in the fast neutron reactor full core subchannel parallel task partitioning system in this embodiment are in one-to-one correspondence with the flow steps in the fast neutron reactor full core subchannel parallel task partitioning method in the first embodiment, so that the description thereof will not be repeated here.
Furthermore, it should be appreciated by those skilled in the art that embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the invention may take the form of a computer program product on one or more computer-usable storage media having computer-usable program code embodied therein.
Embodiments of the present invention are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks. These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It is further noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions.
The terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising … …" does not exclude the presence of other like elements in a process, method, article or terminal device comprising the element.
Finally, it should be noted that the above describes only a preferred embodiment of the present invention, and it should be pointed out that, although a preferred embodiment of the present invention has been described, it will be apparent to those skilled in the art that numerous modifications and adaptations can be made without departing from the principle of the present invention, and such modifications and adaptations should and are intended to be comprehended by the scope of the present invention. It is therefore intended that the following claims be interpreted as including the preferred embodiment and all such alterations and modifications as fall within the scope of the embodiments of the invention.

Claims (4)

1. The fast neutron reactor full-core sub-channel parallel task partitioning method is characterized by comprising the following steps of:
storing the sub-channels of the full reactor core of the fast neutron reactor to be divided according to a preset data structure;
traversing all sub-channels in the current assembly based on the preset data structure, dividing the sub-channels in the current assembly into a preset number of solving domains, and completing parallel task division of the current assembly;
applying the parallel task division result of the current assembly to all assemblies in the full reactor core of the fast neutron reactor to complete the parallel task division of the full reactor core sub-channels of the fast neutron reactor;
the member variables of the preset data structure include: the number of the current sub-channel in the component, the number of the layer number of the current sub-channel in the component, the meta-structure type of the current sub-channel, the number of the solution domain to which the current sub-channel is divided, and the number of the adjacent sub-channel of the current sub-channel in the component;
the meta structure type comprises an upper sub-channel, a lower sub-channel, an angle channel and an edge channel;
the upper type sub-channel comprises three adjacent sub-channels which are respectively positioned above, at the lower left corner and at the lower right corner; the lower-type sub-channel comprises three adjacent sub-channels which are respectively positioned at the left upper corner, the right upper corner and the lower part of the lower-type sub-channel; the corner channel comprises two adjacent sub-channels; the side channel comprises three adjacent sub-channels;
setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in a component as i as a sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the traversing is performed on all the sub-channels in the current component, and the sub-channels in the current component are divided into a preset number of solving domains, specifically:
traversing each adjacent sub-channel of sub-channel i in turn according to a preset sequence, if solving domain D j If the number of the sub-channels is smaller than n, dividing the currently traversed sub-channels into a solving domain D j In (a) and (b); if solve domain D j Dividing the currently traversed sub-channels into the next solving domain if the number of the sub-channels is equal to n;
if all adjacent sub-channels of the sub-channel i are divided into a solving domain D j After middle, solve domain D j If the number of the sub-channels in the sub-channel is still smaller than n, continuously traversing all adjacent sub-channels corresponding to the adjacent sub-channel traversed by the first sub-channel i according to the preset sequence, and dividing the currently traversed sub-channel into a solving domain D j And so on until domain D is solved j The number of the sub-channels in the module is equal to n, and the parallel tasks of the module are divided after all the sub-channels in the module are traversed.
2. The method for dividing parallel tasks of all core sub-channels of fast neutron reactor according to claim 1, wherein the upper limit value of the number of sub-channels in each solution domain is set as n, the number of the current sub-channel being traversed in the assembly is i, and the number is marked as sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the traversing is performed on all the sub-channels in the current component, and the sub-channels in the current component are divided into a preset number of solving domains, specifically:
traversing the next subchannel in the same layer as subchannel i, namely subchannel i+1, ifSub-channel i+n-1 is at the same layer as sub-channel i, then sub-channel i through sub-channel i+n-1 are divided into solving domain D j In (a) and (b);
if the sub-channel i+n-1 is not in the same layer as the sub-channel i, if the sub-channel i+m is traversed, all the sub-channels in the layer where the sub-channel i is located are traversed, wherein m is<n-1; the next layer of sub-channels adjacent to the seek sub-channel i+m continues to traverse in the clockwise direction until the domain D is solved j Stopping when the number of the sub-channels is n, and completing the division of parallel tasks of one component after traversing all the sub-channels in the one component.
3. A fast neutron reactor full core subchannel parallel tasking system, the fast neutron reactor full core subchannel parallel tasking system comprising:
the sub-channel storage module is used for storing the sub-channels of the full reactor core of the fast neutron reactor to be divided according to a preset data structure;
the task division module is used for traversing all the sub-channels in the current assembly based on the preset data structure, dividing the sub-channels in the current assembly into a preset number of solving domains and completing parallel task division of the current assembly; applying the parallel task division result of the current assembly to all assemblies in the full reactor core of the fast neutron reactor to complete the parallel task division of the full reactor core sub-channels of the fast neutron reactor;
the member variables of the preset data structure adopted by the subchannel storage module comprise: the number of the current sub-channel in the component, the number of the layer number of the current sub-channel in the component, the meta-structure type of the current sub-channel, the number of the solution domain to which the current sub-channel is divided, and the number of the adjacent sub-channel of the current sub-channel in the component;
the meta structure type comprises an upper sub-channel, a lower sub-channel, an angle channel and an edge channel;
the upper type sub-channel comprises three adjacent sub-channels which are respectively positioned above, at the lower left corner and at the lower right corner; the lower-type sub-channel comprises three adjacent sub-channels which are respectively positioned at the left upper corner, the right upper corner and the lower part of the lower-type sub-channel; the corner channel comprises two adjacent sub-channels; the side channel comprises three adjacent sub-channels;
setting the upper limit value of the number of the sub-channels in each solving domain as n, and marking the number of the current sub-channel being traversed in a component as i as a sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the task dividing module performs parallel task dividing on the current component, specifically:
traversing each adjacent sub-channel of sub-channel i in turn according to a preset sequence, if solving domain D j If the number of the sub-channels is smaller than n, dividing the currently traversed sub-channels into a solving domain D j In (a) and (b); if solve domain D j Dividing the currently traversed sub-channels into the next solving domain if the number of the sub-channels is equal to n;
if all adjacent sub-channels of the sub-channel i are divided into a solving domain D j After middle, solve domain D j If the number of the sub-channels in the sub-channel is still smaller than n, continuously traversing all adjacent sub-channels corresponding to the adjacent sub-channel traversed by the first sub-channel i according to the preset sequence, and dividing the currently traversed sub-channel into a solving domain D j And so on until domain D is solved j The number of the sub-channels in the module is equal to n, and the parallel tasks of the module are divided after all the sub-channels in the module are traversed.
4. The parallel task partitioning system for the full core sub-channels of the fast neutron reactor according to claim 3, wherein the upper limit value of the number of sub-channels in each solution domain is set as n, and the number of the current sub-channel being traversed in the assembly is i and is marked as sub-channel i; sub-channel i is divided into solution domain D j In (a) and (b);
the task dividing module performs parallel task dividing on the current component, specifically:
traversing the next sub-channel in the same layer as sub-channel i, namely sub-channel i+1, if sub-channel i+n-1 is in the same layer as sub-channel i, dividing sub-channel i to sub-channel i+n-1 into solving domain D j In (a) and (b);
if the sub-channel i+n-1 is not in the same layer as the sub-channel i, if the sub-channel i+m is traversed, all the sub-channels in the layer where the sub-channel i is located are traversed, wherein m is<n-1; the next layer of sub-channels adjacent to the seek sub-channel i+m continues to traverse in the clockwise direction until the domain D is solved j Stopping when the number of the sub-channels is n, and completing the division of parallel tasks of one component after traversing all the sub-channels in the one component.
CN201911262033.2A 2019-12-10 2019-12-10 Parallel task division method and system for full reactor core sub-channels of fast neutron reactor Active CN111008070B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911262033.2A CN111008070B (en) 2019-12-10 2019-12-10 Parallel task division method and system for full reactor core sub-channels of fast neutron reactor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911262033.2A CN111008070B (en) 2019-12-10 2019-12-10 Parallel task division method and system for full reactor core sub-channels of fast neutron reactor

Publications (2)

Publication Number Publication Date
CN111008070A CN111008070A (en) 2020-04-14
CN111008070B true CN111008070B (en) 2023-05-12

Family

ID=70115797

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911262033.2A Active CN111008070B (en) 2019-12-10 2019-12-10 Parallel task division method and system for full reactor core sub-channels of fast neutron reactor

Country Status (1)

Country Link
CN (1) CN111008070B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112130998B (en) * 2020-09-23 2022-02-01 中国核动力研究设计院 Optimization method of nuclear reactor system analysis program suitable for multi-loop pressurized water reactor

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1083576A1 (en) * 1999-09-10 2001-03-14 General Electric Company Nuclear reactor core performance data visualization system
KR101797078B1 (en) * 2016-07-15 2017-11-13 두산중공업 주식회사 Apparatus and System for Simulating Core Protection system maintenance

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532093B (en) * 2019-08-23 2022-05-13 中国原子能科学研究院 Parallel task division method for multi-geometric-shape full core sub-channels of numerical nuclear reactor
CN110556169B (en) * 2019-08-23 2022-04-08 中国原子能科学研究院 Solving domain division method for full reactor core subchannel thermal hydraulic simulation
CN110543711B (en) * 2019-08-26 2021-07-20 中国原子能科学研究院 Parallel implementation and optimization method for numerical reactor thermal hydraulic sub-channel simulation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1083576A1 (en) * 1999-09-10 2001-03-14 General Electric Company Nuclear reactor core performance data visualization system
KR101797078B1 (en) * 2016-07-15 2017-11-13 두산중공업 주식회사 Apparatus and System for Simulating Core Protection system maintenance

Also Published As

Publication number Publication date
CN111008070A (en) 2020-04-14

Similar Documents

Publication Publication Date Title
CN103761215B (en) Matrix transpose optimization method based on graphic process unit
TWI622940B (en) Method and apparatus for distributed and cooperative computation in artificial neural networks
CN108268278A (en) Processor, method and system with configurable space accelerator
CN106709503B (en) Large-scale spatial data clustering algorithm K-DBSCAN based on density
CN102521854B (en) Parallel flow line placing method applicable to two-dimensional flow field
CN102193830B (en) Many-core environment-oriented division mapping/reduction parallel programming model
CN103377032A (en) Fine granularity scientific computation parallel processing device on basis of heterogenous multi-core chip
CN110135569A (en) Heterogeneous platform neuron positioning three-level flow parallel method, system and medium
CN111008070B (en) Parallel task division method and system for full reactor core sub-channels of fast neutron reactor
CN105786619A (en) Virtual machine distribution method and device
CN107479950B (en) Virtual machine scheduling method, device and system
CN104459781A (en) Three-dimensional pre-stack seismic data random noise degeneration method
CN104346318B (en) Matrix Multiplication accelerated method towards general multi-core DSP
WO2020103883A1 (en) Method for executing matrix multiplication, circuit and soc
JPWO2016024508A1 (en) Multiprocessor device
CN109993309B (en) MPI multi-process based dual-quantum logic gate implementation method
CN109684664B (en) Fine grid division method and system for conducting wire flow field simulation
CN102917014A (en) Resource scheduling method and device
CN102629238B (en) Method and device for supporting vector condition memory access
CN105335135B (en) Data processing method and central node
CN106981084A (en) A kind of method and device of drawing isoline
CN106484532B (en) GPGPU parallel calculating method towards SPH fluid simulation
CN112395073A (en) High-performance fast rendering method for large vector data
CN110908800B (en) Scheduling optimization method based on scheduling entropy in edge cloud collaborative environment
CN107894992A (en) A kind of GIS dot buffer zones analysis method and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant