Skip to content

Commit

Permalink
update build bbox
Browse files Browse the repository at this point in the history
  • Loading branch information
AvvAL committed Dec 10, 2023
1 parent 474a3c2 commit 0936bc5
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 8 deletions.
2 changes: 2 additions & 0 deletions src/cl/lbvh.cl
Original file line number Diff line number Diff line change
Expand Up @@ -477,6 +477,8 @@ __kernel void calculateForces(
int t)
{
int i = get_global_id(0);
if (i >= N)
return;
float x0 = pxs[i];
float y0 = pys[i];
float m0 = mxs[i];
Expand Down
11 changes: 3 additions & 8 deletions src/main_lbvh.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@
// TODO на сервер лучше коммитить самую простую конфигурацию. Замеры по времени получатся нерелевантные, но зато быстрее отработает CI
// TODO локально интересны замеры на самой сложной версии, которую получится дождаться
// #define NBODY_INITIAL_STATE_COMPLEXITY 0
// #define NBODY_INITIAL_STATE_COMPLEXITY 1
#define NBODY_INITIAL_STATE_COMPLEXITY 2
#define NBODY_INITIAL_STATE_COMPLEXITY 1
// #define NBODY_INITIAL_STATE_COMPLEXITY 2

// использовать lbvh для построения начального состояния. Нужно на очень больших N (>1000000)
#define ENABLE_LBVH_STATE_INITIALIZATION 1
Expand Down Expand Up @@ -1260,13 +1260,8 @@ void buildBBoxes(std::vector<Node> &nodes, std::vector<int> &flags, int N, bool
if (flags[i_node] != level)
continue;
auto &node = nodes[i_node];
auto &left_node = nodes[node.child_left], &right_node = nodes[node.child_right];
node.bbox.clear();
node.bbox.grow(left_node.bbox);
node.bbox.grow(right_node.bbox);
node.mass = left_node.mass + right_node.mass;
node.cmsx = (left_node.cmsx * left_node.mass + right_node.cmsx * right_node.mass) / node.mass;
node.cmsy = (left_node.cmsy * left_node.mass + right_node.cmsy * right_node.mass) / node.mass;
growNode(node, nodes);
++n_updated;
}

Expand Down

0 comments on commit 0936bc5

Please sign in to comment.