CN111598991A - Computer-based method for drawing multi-thread parallel unstructured grid volume - Google Patents

Computer-based method for drawing multi-thread parallel unstructured grid volume Download PDF

Info

Publication number
CN111598991A
CN111598991A CN202010351565.XA CN202010351565A CN111598991A CN 111598991 A CN111598991 A CN 111598991A CN 202010351565 A CN202010351565 A CN 202010351565A CN 111598991 A CN111598991 A CN 111598991A
Authority
CN
China
Prior art keywords
tetrahedral
data
algorithm
array
vertex
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010351565.XA
Other languages
Chinese (zh)
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.)
Computational Aerodynamics Institute of China Aerodynamics Research and Development Center
Original Assignee
Computational Aerodynamics Institute of China Aerodynamics Research and Development Center
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 Computational Aerodynamics Institute of China Aerodynamics Research and Development Center filed Critical Computational Aerodynamics Institute of China Aerodynamics Research and Development Center
Priority to CN202010351565.XA priority Critical patent/CN111598991A/en
Publication of CN111598991A publication Critical patent/CN111598991A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/08Volume rendering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

The invention discloses a method for drawing an unstructured grid volume based on multithreading parallelism by a computer, which comprises the following steps: calculating the depth information of the tetrahedral mesh unit; performing depth-based parallel visibility ordering on the tetrahedral data to generate ordered tetrahedral data; carrying out normalized splitting processing on the ordered tetrahedral data to generate structural data; generating a vertex array by adopting a method for calculating offset for the construction data; loading the vertex array into a video memory and rasterizing the vertex to generate a final volume rendering image; the existing projection tetrahedral algorithm is accelerated by a multithreading parallel method, four threads are adopted for concurrent execution of a four-core CPU, the occupation of CPU resources can reach more than 90%, the CPU computing resources can be fully utilized, and meanwhile, the algorithm can meet the real-time interaction requirement.

Description

Computer-based method for drawing multi-thread parallel unstructured grid volume
Technical Field
The invention relates to a method for visualizing three-dimensional scalar field unstructured grid data by a computer, in particular to a method for rendering an unstructured grid volume by multithreading in parallel based on the computer.
Background
At present, no patent is available for a thread-level parallel volume rendering algorithm of an unstructured grid. Computational Fluid Dynamics (CFD) experiments have produced a large amount of simulation data, including a large amount of unstructured grid data. Volume rendering is an important visualization form of three-dimensional scalar field data, directly maps volume data into a two-dimensional screen image, and has strong spatial expression capability. At present, the patents in the field of unstructured mesh volume rendering are relatively few compared to structured meshes, because due to the complexity of the unstructured mesh geometry and topology, the adjacency relationship between the meshes is irregular, and the connection relationship is generally expressed by explicitly storing the adjacency matrix. If a grid cell is to be searched for adjacent cells, local search or even global search may be required, which is also an important reason why the efficiency of current non-structural body rendering algorithms is generally low. Voxel projection is a classical unstructured grid data volume rendering algorithm based on object space, which presupposes correct visibility order. The projection tetrahedron algorithm is the most widely applied voxel projection method, and the method decomposes the projection of a tetrahedron into a series of triangles along the sight line direction, loads the vertex data of the triangles into a GPU video memory, rasterizes the vertex of the triangle by using the GPU, and approximately represents a volume rendering result by using a semitransparent triangle patch. However, this method has the following disadvantages:
(1) sorting grid cells for visibility along the direction of the line of sight is a time consuming process;
(2) classifying and splitting the projection of tetrahedral units requires a large number of floating point operations.
The above disadvantages result in a low efficiency of the projection tetrahedral algorithm, especially for large-scale grids (millions of grids), which cannot meet the requirement of real-time interaction. Therefore, the invention designs a multi-thread parallel visibility ordering algorithm and a multi-thread parallel tetrahedral projection classification and splitting algorithm based on the problem of insufficient performance of the current serial projection tetrahedral algorithm, fully utilizes the computing resources of the current multi-core CPU, improves the efficiency of the projection tetrahedral algorithm, and can meet the real-time interaction requirement of large-scale unstructured grid volume rendering.
The volume rendering directly generates an interactive two-dimensional screen image from the volume data, so the volume rendering is also called as direct volume rendering, is the most important visualization technology for exploring, browsing and displaying the volume data, supports a user to intuitively and conveniently understand the interested area information in the volume data, and has strong spatial expression capability. Volumetric data characterizes three-dimensional scalar field data in terms of a geometric topological mesh (i.e., a spatial mesh), so it has both geometry and topology. The grid form division can be divided into a structural grid and an unstructured grid. The geometric structure and the topological structure of the structural grid are regular in space, other grid units adjacent to a certain grid unit can be calculated through a simple algorithm, at present, a plurality of volume rendering algorithms supporting the type of grid exist, and the ray projection algorithm is widely used due to high efficiency and accurate rendering result. According to the characteristic that the ray projection algorithm is easy to be parallel and the rapid development of various image display card technologies, the ray projection algorithm based on the GPU acceleration provides a volume rendering result with higher efficiency and better effect. However, for the unstructured grid, due to the irregularity of the geometric structure and the topological structure of the unstructured grid, the surface adjacent relationship between the units needs to be explicitly stored, and when an adjacent unit of a certain unit is calculated, local search or even global search may be needed, which also causes that the volume rendering algorithm applied to the unstructured grid has low efficiency and cannot meet the requirement of real-time interaction.
At present, the volume rendering algorithms of the unstructured mesh mainly have two types, one is a volume rendering algorithm based on visibility ordering, and the other is a ray casting algorithm.
(1) Visibility ordering based algorithm: as the name implies, a correct visibility order is required. Visibility order refers to the full-order relationship that, given a line of sight, cell a occludes cell B, placing a in front of B. The most representative of the volume rendering algorithms is a voxel projection algorithm, wherein a projection tetrahedron algorithm is a classical voxel projection algorithm, a tetrahedron is the simplest unit in a three-dimensional basic unit, and other polyhedral meshes can be converted into tetrahedral meshes through a tetrahedron process. Before the projection tetrahedral algorithm is executed, a correct visibility sequence is required, after visibility sequencing, tetrahedral projection is classified and split (as shown in fig. 1 and fig. 2) into a series of semi-transparent triangular patches, and the color value and the transparency value of the newly generated vertex in the graph are calculated by a linear interpolation method. And the vertex data obtained after projection processing needs to be loaded into a video memory, and a graphics display card is called through OpenGL to perform triangular patch rendering, so that an approximate result of volume rendering is finally obtained.
(2) Ray casting based algorithm: such methods do not require a prior visibility ordering, and are based on the principle shown in fig. 3, where from a viewpoint, light is emitted along pixel points on the screen, equidistant sampling is performed along the light direction, optical integration is performed in the order from front to back or from back to front, the integration result is used as a final pixel value, and the same operation is performed for each pixel on the screen to generate a final volume rendering image. In the sampling process, the position of the next sampling point needs to be calculated according to the current sampling point and the sampling distance. For the structured grid, the position of the next sampling point can be easily calculated, but for the unstructured grid, the relationship between the unit surfaces is explicitly stored, and when the position of the next sampling point is calculated, local search and even global search are often required, so that the efficiency is low. The unstructured grid volume rendering algorithm based on ray casting generally limits sampling points to volume unit surfaces and integrates the sampling points, and the adjacency relation between the unit surfaces needs to be stored, so that the occupation of a memory is high.
Disclosure of Invention
The invention mainly aims to perform fast volume rendering on the tetrahedral mesh through a computer to achieve the purpose of real-time interaction. In order to achieve the purpose, the invention provides a computer-based rapid tetrahedral projection volume rendering algorithm for thread parallel.
The invention is implemented by adopting the following technical scheme:
1. a method for carrying out multithreading parallel unstructured grid volume rendering based on a computer comprises the following steps:
-a memory in which a calculation program is stored,
-a processor and a display executing the program, wherein execution of the program by the processor implements the steps of:
computing depth information for tetrahedral mesh cells
Performing depth-based parallel visibility ordering on the tetrahedral data to generate ordered tetrahedral data;
carrying out splitting normalization processing on the ordered tetrahedral data to generate structural data;
generating a vertex array by adopting a method for calculating offset for the construction data;
the vertex array is loaded into video memory and rasterized to generate a final volume rendering image.
The parallel visibility ordering performs coarse ordering and then fine ordering on tetrahedral data, wherein:
the coarse sorting is to divide the tetrahedral data into a sub-array of several value intervals without intersection,
and the fine sorting is to sort the sub-arrays in a thread parallel mode to generate ordered tetrahedral data.
The data construction comprises classification and splitting of tetrahedral projection, the process is divided into two layers of circulation, the outer layer of circulation traverses the subarray set, and the inner layer of circulation processes each tetrahedral unit according to the ID in the subarray.
Advantageous effects
The invention is improved based on the existing projection tetrahedron algorithm, and the efficiency of the algorithm is greatly improved. The hardware technology is developed rapidly, for a four-core CPU, if a single-thread projection tetrahedral algorithm is executed, the CPU occupies about 25%, and meanwhile, when the number of tetrahedral meshes reaches the million level, the single-thread algorithm cannot meet the requirement of real-time interaction. In contrast, the multi-thread version of the algorithm can fully utilize the computing resources of a single CPU, and the algorithm efficiency can be greatly improved. The method accelerates the existing projection tetrahedral algorithm by a multithreading parallel method, adopts four threads to execute the four-core CPU simultaneously, occupies more than 90 percent of CPU resources, can fully utilize the CPU computing resources, greatly improves the algorithm efficiency, and can meet the real-time interaction requirement. Compared with the existing single-thread projection tetrahedral algorithm, the multithreading algorithm provided by the invention has the following advantages in design:
(1) visibility ordering algorithm: when the direction of the line of sight changes, the tetrahedral cell visibility order also changes. Therefore, visibility sorting is continuously performed during interaction, a high-efficiency sorting algorithm is needed to meet the requirement, most of the current sorting algorithms are serial versions, and the high-efficiency sorting algorithm is a quick sorting algorithm. According to the invention, the array to be sorted is firstly divided into a plurality of sub-arrays, the numerical value intervals of the sub-arrays are required to have no intersection, the processed data among the sub-arrays are independent, the multi-thread sub-arrays are used for sorting, the final sorting result is not influenced, and meanwhile, the sorting efficiency can be improved.
(2) Tetrahedral projection classification and splitting: the method comprises the steps of sorting all tetrahedrons, classifying and splitting the projections of all the tetrahedrons after sorting, loading the split vertex data into a video memory in a correct sequence, and classifying all the tetrahedrons into one class in order to ensure the correct sequence of storing the vertex data under multithreading execution, namely generating 4 triangles after splitting any tetrahedron projection. When the tetrahedral unit is circularly processed, the generated vertex data can be stored to the correct position in the vertex array through calculating the offset according to the current loop iteration variable, the correct sequence of the vertex data can be ensured even under the condition that the multithreading execution sequence is unknown, the circulation processed through the multithreading parallel processing not only fully utilizes CPU calculation resources, but also greatly improves the efficiency of tetrahedral projection classification and splitting.
Drawings
The fig. 1PT algorithm projects the polygon shape classification.
Fig. 2 shows four methods for splitting the projected polygon.
Fig. 3 ray casting process.
Figure 4 algorithm flow chart.
Fig. 5 tetrahedral projection.
Detailed Description
The data processing, feature extraction and network training designed by the invention are described in detail below with reference to the accompanying drawings.
The invention mainly aims to perform fast volume rendering on the tetrahedral mesh and achieve the purpose of real-time interaction. In order to achieve the above purpose, the present invention provides a fast projection tetrahedral volume rendering algorithm based on thread parallel, the main flow of the algorithm is shown in fig. 4, and each step in the algorithm will be described in detail below.
(1) Parallel visibility ordering
The projection tetrahedral algorithm needs correct visibility order, and the invention provides a visibility ordering scheme based on thread parallelism. For a given line of sight, the depth of all the grid cells is ordered along the line of sight direction, the tetrahedral grid cell depth being defined as the cross product of the line of sight direction vector and the tetrahedral grid centroid coordinates. The depth of the tetrahedral units varies with the viewing direction, and at the same time, the visibility order of the tetrahedral units is consistent with the depth order, so the result of the depth ordering can be used as the visibility order of the mesh.
At present, most of common sequencing algorithms are serial algorithms, and the efficiency requirement of large-scale grid volume rendering real-time interaction cannot be met. The invention provides a method for sequencing thread parallelism, which comprises the steps of firstly calculating the depth of a tetrahedral mesh unit and storing the depth into a depth array, and then sequencing the tetrahedral mesh unit in two stages:
after the first stage (coarse sorting), the depth array is divided into a plurality of sub-arrays, and the numerical value intervals among the sub-arrays do not have intersection, so that the sub-arrays are still unordered;
and in the second stage (fine sorting), all the sub-arrays are sorted, all the sorted sub-arrays are ordered, and the sub-arrays are sequentially connected with one another in the first order to obtain the final sorting result.
The following is pseudo code for parallel visibility ordering.
Figure BDA0002471997540000041
Figure BDA0002471997540000051
Coarse sorting pseudo code
The pseudo code description comprises the steps of firstly obtaining id of each tetrahedral unit from tetrahedral data and storing the id to a cell array, calculating the depth value of each tetrahedral unit and storing the depth value to a depth array, wherein the id of each tetrahedral unit in the cell array corresponds to the depth value in the depth array one by one. Then, the cells array is split into a plurality of sub-arrays with no intersection in the numerical value intervals according to the depth, split information is stored in an array vector, and the length of the sub-arrays is set to be not larger than MAX for array load balancing. The SWAP function is used for splitting an array into two sub-arrays, splitting an array a into two sub-arrays by taking v as a pivot point, and returning to the split position.
Figure BDA0002471997540000052
Fine ordering pseudo code
The pseudo code states that a fast depth-based ordering is performed for each sub-array in the vector. After coarse sorting, the data among the sub-arrays are independent, so that the sorting of the sub-arrays is circularly carried out in a multithread, and the correctness of the sorting result can be ensured.
(2) Parallel tetrahedral projection classification and splitting
And (4) classification: classifying the projection of tetrahedron according to the visibility sorting result, as shown in FIG. 1, the tetrahedron is projected on the screen according to the sight line directionThere are 4 projection shapes generated above, and for (c) and (d), if further abstracted, they can be considered as special cases of (a) and (b), which have two sides coinciding under the projection of the current gaze direction. Thus, the classification of the projections is essentially a classification of (a) and (b). Through careful observation, the two differences are that the projection of (a) is a triangle, and the projection of (b) is a quadrilateral, and the diagonals have an intersection point. Since the coordinates of each vertex of the tetrahedron are known, the problem translates to determining whether the two vectors have an intersection. A simple method for determining whether two vectors intersect is described below: as shown in FIG. 5, assume vectors
Figure BDA0002471997540000053
And
Figure BDA0002471997540000054
has a point of intersection of P*
From vector operations, where α and β are both real numbers
Figure BDA0002471997540000055
Figure BDA0002471997540000061
Therefore, the temperature of the molten metal is controlled,
Figure BDA0002471997540000062
a vector is constructed which is,
Figure BDA0002471997540000063
Figure BDA0002471997540000064
Figure BDA0002471997540000065
constructing a system of equations from equations, wherein AxAnd AyThe x-and y-components of the vector, respectively, the B and C vectors are similarly,
Figure BDA0002471997540000066
the simultaneous system of equations solves for alpha and beta,
Figure BDA0002471997540000067
Figure BDA0002471997540000068
for the α value obtained by the above calculation process, if the range is [0,1 ]]Represents the intersection point P between*Therefore, whether the projected polygon belongs to (a) or (b) in fig. 5 can be judged from the range of α.
Splitting after the shape of the projected polygon is determined, the next step is to split the projected polygon into projected triangles, as shown in FIG. 2, since (c) and (d) have been normalized, only the split in both cases (a) and (b) need to be considered, when the tetrahedron is projected as a triangle, the α value is not [0,1 ]]In the meantime, as shown in fig. 2(a), the common vertex of the projection triangle is the internal vertex of the triangle in fig. 1(a), the vertex belongs to one of the tetrahedron vertices, and the coordinate, color and transparency are all from the input of the volume data, whereas if the tetrahedron is projected as a quadrangle, the α value ranges from 0,1]In addition, as shown in FIG. 2(b), the common vertices of the projected triangles are the intersections of the internal diagonals in FIG. 1(b) according to the above algorithm, in the case of obtaining α and β values, P is easily obtained using the formula (1) or (2)*The coordinates of (a); similarly, the attribute data of the interpolation point (i.e. the common point for splitting the quadrangle) can be obtained by projecting the coordinates, the color and the transparency of the four vertexes of the quadrangle by the same method.
Parallelization: according to the above description, tetrahedral projection classification and splitting is a complex operation process, involving multi-step floating point operations, and is inefficient in a single thread, and therefore, parallelization processing is required to improve efficiency. The vertex data of the projection triangle (including the attribute data and index data of the vertex, which are respectively stored in the vertex cache object array VBO and the vertex index object array IBO) obtained after splitting are required to be loaded into the video memory, and because the vertex indexes in the IBO and the vertex attribute data in the VBO are in one-to-one correspondence, the index data and the attribute data of all the vertices are required to be stored in the IBO and the VBO according to a correct sequence after the projection polygon is split into the triangles, otherwise, a large number of disordered triangle patches will appear in the final drawing result. Under the condition of single-thread serial circulation, the operation of the complaint process is very simple, because the generated vertex index and attribute data are stored into corresponding arrays after processing one tetrahedral unit, the storage sequence of the vertex data corresponds to the processing sequence of the tetrahedral unit one by one, and disorder cannot occur. However, if the loop is put into a multi-thread computing environment for execution, and the execution sequence between threads is unknown, the processing sequence of the tetrahedral unit is also unknown, and finally, the vertex data in the VBO and the IBO cannot be corresponded, which results in disorder of the sequence.
In order to ensure that vertex indexes and attribute data can be stored in IBO and VBO in a correct sequence in a multithreading computing environment, the invention adopts a method of splitting normalization by tetrahedral projection and calculating array offset, and the following processing needs to be carried out on the tetrahedral projection classification and splitting process of single-thread serial:
a. as shown in fig. 1(a) and (b), the three and four projection triangles can be split, and the method in the present invention regards both cases as generating 4 projection triangles, so for fig. 1(a), three vertex data need to be additionally constructed, but the constructed data cannot affect the drawing result, for example, we select one of the tetrahedral vertices as the construction data, and thus the fourth projection triangle in fig. 1(a) is actually a vertex and does not affect the final drawing result;
b. when the volume rendering result is zoomed, some tetrahedrons may be located outside the screen, and the single-thread algorithm is based on an efficiency angle, and the tetrahedron units are clipped, which means that the tetrahedron units outside the screen are not classified and split. However, if these tetrahedral units are not processed under multiple threads, the vertex data of the corresponding positions in the IBO and VBO are unknown, and the final drawing result is necessarily disarrayed. In order to take account of the algorithm efficiency, we still do not classify and split these tetrahedral units, but we will construct vertex data to fill the corresponding positions in the IBO and VBO, and can directly use these tetrahedral unit vertex data because their vertices are all out of the screen and will not affect the final rendering result. The purpose of processing is to enable vertex data in IBO and VBO to correspond one to one under multithreading;
c. in order to solve the problem that the execution sequence between threads is unknown, the method for calculating the array offset is adopted to ensure that the final vertex data can be correctly stored. According to the parallel sorting method proposed in (1), the final sorting result is a series of ordered sub-arrays (storing IDs of tetrahedral units), therefore, two layers of cycles are required for the tetrahedral classification and splitting process, the outer layer of cycles traverses the sub-array set, and the inner layer of cycles processes each tetrahedral unit according to the ID in the sub-array. Through the normalization process described in a and b, we can parallelize both loops. A tetrahedral unit can be split into 4 projection triangles, which requires 12 vertex indices, while one vertex has 6 attribute data (X, Y, Z, RGB, ALPHA, DEPTH), and one projection polygon (after a normalization process, all becomes fig. 1b) has 5 vertices. Therefore, a tetrahedron requires 12 consecutive elements in the IBO to store vertex indices and 30 consecutive elements in the VBO to store vertex attributes, and the relationship of the offsets is successfully established. The following is pseudo code for parallel tetrahedral projection classification and splitting.
Figure BDA0002471997540000071
Tetrahedral projection classification and splitting pseudo code
Description of the pseudo code: and (3) traversing the sub-arrays generated by sequencing in the step (1), processing each tetrahedral unit in the sub-arrays by using a memory loop, generating a fixed point array and storing the fixed point array into the vertex arrays IBO and VBO, wherein each layer of loop needs to calculate the offset of the IBO and the VBO in the iteration again.

Claims (3)

1. A method for carrying out multithreading parallel unstructured grid volume rendering based on a computer is characterized by comprising the following steps:
-a memory in which a calculation program is stored,
-a processor and a display executing the program, wherein execution of the program by the processor implements the steps of:
calculating the depth information of the tetrahedral mesh unit;
performing depth-based parallel visibility ordering on the tetrahedral data to generate ordered tetrahedral data;
carrying out normalized splitting processing on the ordered tetrahedral data to generate structural data;
generating a vertex array by adopting a method for calculating offset for the construction data;
the vertex array is loaded into video memory and rasterized to generate a final volume rendering image.
2. The computer-based method of multi-threaded parallel unstructured grid volume rendering according to claim 1, wherein the parallel visibility ordering is a coarse ordering of tetrahedral data followed by a fine ordering, wherein:
the coarse sorting is to divide the tetrahedral data into a sub-array of several value intervals without intersection,
and the fine sorting is to sort the sub-arrays in a thread parallel mode to generate ordered tetrahedral data.
3. The method of claim 1, wherein the construction data is tetrahedral projection classification and splitting, the process is divided into two layers of cycles, the outer layer of the cycle traverses the sub-array set, and the inner layer of the cycle processes each tetrahedral unit according to the ID in the sub-array.
CN202010351565.XA 2020-04-28 2020-04-28 Computer-based method for drawing multi-thread parallel unstructured grid volume Pending CN111598991A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010351565.XA CN111598991A (en) 2020-04-28 2020-04-28 Computer-based method for drawing multi-thread parallel unstructured grid volume

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010351565.XA CN111598991A (en) 2020-04-28 2020-04-28 Computer-based method for drawing multi-thread parallel unstructured grid volume

Publications (1)

Publication Number Publication Date
CN111598991A true CN111598991A (en) 2020-08-28

Family

ID=72182400

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010351565.XA Pending CN111598991A (en) 2020-04-28 2020-04-28 Computer-based method for drawing multi-thread parallel unstructured grid volume

Country Status (1)

Country Link
CN (1) CN111598991A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115222870A (en) * 2022-09-15 2022-10-21 中国空气动力研究与发展中心计算空气动力研究所 Unstructured grid implicit LUSGS (Lusgs) balanced coloring method, equipment and medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
尚萌萌;郑耀;陈建军;朱朝艳;: "一类多线程并行四面体网格优化算法" *
李昕;吴福理;陈伟锋;华炜;陈为;: "基于快速自适应多路排序的四面体可视化" *
李昕;陈伟锋;吴向阳;吴福理;左伍衡;陈为;: "并行精确排序的快速投影四面体体绘制" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115222870A (en) * 2022-09-15 2022-10-21 中国空气动力研究与发展中心计算空气动力研究所 Unstructured grid implicit LUSGS (Lusgs) balanced coloring method, equipment and medium
CN115222870B (en) * 2022-09-15 2023-01-10 中国空气动力研究与发展中心计算空气动力研究所 Unstructured grid implicit LUSGS (Lusgs) balanced coloring method, equipment and medium

Similar Documents

Publication Publication Date Title
US9058678B1 (en) System and method for reducing the complexity of performing broad-phase collision detection on GPUs
US7786991B2 (en) Applications of interval arithmetic for reduction of number of computations in ray tracing problems
Kipfer et al. Uberflow: a gpu-based particle engine
US8203555B2 (en) Systems and methods for concurrent ray tracing
US8471845B1 (en) System and method for constructing a bounding volume hierarchical structure
CN104036537A (en) Multiresolution Consistent Rasterization
Chang et al. GPU-friendly multi-view stereo reconstruction using surfel representation and graph cuts
WO2009078561A1 (en) Method and system of rendering parallel global illumination
CN106875492A (en) It is a kind of towards GPU bounding box collision checking methods
Evangelou et al. Fast radius search exploiting ray-tracing frameworks
CN106971369B (en) Data scheduling and distributing method based on GPU (graphics processing Unit) for terrain visual field analysis
Greß et al. Object-space interference detection on programmable graphics hardware
CN111598991A (en) Computer-based method for drawing multi-thread parallel unstructured grid volume
US11397615B2 (en) Methods and apparatuses for coalescing function calls for ray-tracing
US7724254B1 (en) ISO-surface tesselation of a volumetric description
CN104050719A (en) Generating anti-aliased voxel data
Avril et al. A broad phase collision detection algorithm adapted to multi-cores architectures
CN111274335B (en) Rapid implementation method for space superposition analysis
Doraiswamy et al. Spade: Gpu-powered spatial database engine for commodity hardware
WO2007081303A1 (en) Applications of interval arithmetic for reduction of number of computations in ray tracing problems
US7050053B2 (en) Geometric folding for cone-tree data compression
Van Kooten et al. Point-based visualization of metaballs on a gpu
Zhou et al. Data decomposition method for parallel polygon rasterization considering load balancing
Leite et al. Massively parallel nearest neighbor queries for dynamic point clouds on the GPU
Avril et al. Collision detection: Broad phase adaptation from multi-core to multi-GPU architecture

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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200828