The name of the initial branch for new projects is now "main" instead of "master". Existing projects remain unchanged. More information: https://doku.lrz.de/display/PUBLIC/GitLab

Commit a4f642a5 authored by Benedikt Zoennchen's avatar Benedikt Zoennchen
Browse files

change local memory size in the creation of the linkedCells on the GPU.

parent a842f28a
Pipeline #65441 failed with stages
in 44 minutes and 29 seconds
...@@ -421,7 +421,7 @@ public class CLLinkedCell { ...@@ -421,7 +421,7 @@ public class CLLinkedCell {
CLInfo.checkCLError(clSetKernelArg1p(clFindCellBoundsAndReorder, 3, clHashes)); CLInfo.checkCLError(clSetKernelArg1p(clFindCellBoundsAndReorder, 3, clHashes));
CLInfo.checkCLError(clSetKernelArg1p(clFindCellBoundsAndReorder, 4, clIndices)); CLInfo.checkCLError(clSetKernelArg1p(clFindCellBoundsAndReorder, 4, clIndices));
CLInfo.checkCLError(clSetKernelArg1p(clFindCellBoundsAndReorder, 5, clPositions)); CLInfo.checkCLError(clSetKernelArg1p(clFindCellBoundsAndReorder, 5, clPositions));
CLInfo.checkCLError(clSetKernelArg(clFindCellBoundsAndReorder, 6, (max_work_group_size+1) * 4)); // local memory CLInfo.checkCLError(clSetKernelArg(clFindCellBoundsAndReorder, 6, (Math.min(numberOfElements, max_work_group_size)+1) * 4)); // local memory
CLInfo.checkCLError(clSetKernelArg1i(clFindCellBoundsAndReorder, 7, numberOfElements)); CLInfo.checkCLError(clSetKernelArg1i(clFindCellBoundsAndReorder, 7, numberOfElements));
clGlobalWorkSize.put(0, Math.min(max_work_group_size, numberOfElements)); clGlobalWorkSize.put(0, Math.min(max_work_group_size, numberOfElements));
......
...@@ -99,7 +99,7 @@ public class TestCLLinkedList { ...@@ -99,7 +99,7 @@ public class TestCLLinkedList {
CLLinkedCell clUniformHashedGrid = new CLLinkedCell(size, new VRectangle(0, 0, 10, 10), 1); CLLinkedCell clUniformHashedGrid = new CLLinkedCell(size, new VRectangle(0, 0, 10, 10), 1);
ArrayList<VPoint> positions = new ArrayList<>(); ArrayList<VPoint> positions = new ArrayList<>();
for(int i = 0; i < size; i++) { for(int i = 0; i < size; i++) {
positions.add(new VPoint(random.nextDouble() * 10,random.nextDouble() * 10)); positions.add(new VPoint(random.nextFloat() * 10,random.nextDouble() * 10));
} }
int[] hasehs = clUniformHashedGrid.calcSortedHashes(positions); int[] hasehs = clUniformHashedGrid.calcSortedHashes(positions);
...@@ -123,7 +123,7 @@ public class TestCLLinkedList { ...@@ -123,7 +123,7 @@ public class TestCLLinkedList {
CLLinkedCell clUniformHashedGrid = new CLLinkedCell(size, new VRectangle(0, 0, 10, 10), 1); CLLinkedCell clUniformHashedGrid = new CLLinkedCell(size, new VRectangle(0, 0, 10, 10), 1);
ArrayList<VPoint> positions = new ArrayList<>(); ArrayList<VPoint> positions = new ArrayList<>();
for(int i = 0; i < size; i++) { for(int i = 0; i < size; i++) {
positions.add(new VPoint(random.nextDouble() * 10,random.nextDouble() * 10)); positions.add(new VPoint(random.nextFloat() * 10,random.nextFloat() * 10));
} }
CLLinkedCell.LinkedCell gridCells = clUniformHashedGrid.calcLinkedCell(positions); CLLinkedCell.LinkedCell gridCells = clUniformHashedGrid.calcLinkedCell(positions);
int numberOfCells = clUniformHashedGrid.getGridSize()[0] * clUniformHashedGrid.getGridSize()[1]; int numberOfCells = clUniformHashedGrid.getGridSize()[0] * clUniformHashedGrid.getGridSize()[1];
...@@ -146,7 +146,7 @@ public class TestCLLinkedList { ...@@ -146,7 +146,7 @@ public class TestCLLinkedList {
CLLinkedCell clUniformHashedGrid = new CLLinkedCell(size, new VRectangle(0, 0, 10, 10), 1); CLLinkedCell clUniformHashedGrid = new CLLinkedCell(size, new VRectangle(0, 0, 10, 10), 1);
ArrayList<VPoint> positions = new ArrayList<>(); ArrayList<VPoint> positions = new ArrayList<>();
for(int i = 0; i < size; i++) { for(int i = 0; i < size; i++) {
positions.add(new VPoint(random.nextDouble() * 10,random.nextDouble() * 10)); positions.add(new VPoint(random.nextFloat() * 10,random.nextFloat() * 10));
} }
CLLinkedCell.LinkedCell gridCells = clUniformHashedGrid.calcLinkedCell(positions); CLLinkedCell.LinkedCell gridCells = clUniformHashedGrid.calcLinkedCell(positions);
int numberOfCells = clUniformHashedGrid.getGridSize()[0] * clUniformHashedGrid.getGridSize()[1]; int numberOfCells = clUniformHashedGrid.getGridSize()[0] * clUniformHashedGrid.getGridSize()[1];
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment