Commit Graph

329 Commits

Author SHA1 Message Date
jpekkila
b2632c87b4 Merge branch 'cmakelist_rewrite_and_C_API_conformity_07-26' into node_device_interface_revision_07-23 2019-08-06 15:18:33 +03:00
jpekkila
280804a438 Merge branch 'master' into cmakelist_rewrite_and_C_API_conformity_07-26 2019-08-06 15:14:33 +03:00
jpekkila
e4b981fc62 Removed the O2 flag since cmake still defines the O3 flag in CMAKE_CXX_FLAGS_RELEASE and it's confusing which one gcc chooses if both O3 and O2 are passed during compilation. If the issue was the march=native flag then this should also work on Tiara 2019-08-06 14:59:41 +03:00
jpekkila
5f4246fb42 Standalone now uses O2 optimization level instead of O3. Also removed -march=native since this causes issues if the program is compiled on a different architecture than it is run on. Since we do not do heavy arithmetic on the host side and the host code is not performance-critical part of the code, -march-native is not very useful anyways 2019-08-06 14:46:13 +03:00
Miikka Vaisala
4a846d38f7 Merge branch 'master' into sink_20190723 2019-08-06 10:45:00 +08:00
jpekkila
b73c2675e8 Added the optimized implementation of acNodeIntegrate where boundconds are done before integration instead of after 2019-08-05 20:10:13 +03:00
jpekkila
8df49370c8 Cleanup 2019-08-05 19:08:05 +03:00
jpekkila
da76fca0dc Added a test for building an MPI project. Building for the MPI and C API tests is now also disabled by default. 2019-08-05 18:30:48 +03:00
jpekkila
66fa346118 Added a copyright text to ctest 2019-08-05 18:30:39 +03:00
jpekkila
b21d2040da Added a test for building an MPI project. Building for the MPI and C API tests is now also disabled by default. 2019-08-05 18:26:12 +03:00
jpekkila
b1176a0c06 Added a copyright text to ctest 2019-08-05 18:24:55 +03:00
jpekkila
fa6e1116cb The interface revision now actually works. The issue was incorrect order of src and dst indices when storing the mesh. 2019-08-05 17:26:05 +03:00
jpekkila
5232d987c1 Added acStoreWithOffset to the revised interface 2019-08-05 16:18:22 +03:00
jpekkila
f3de2fa03c Made globalVertexIdx available during preprocessing. NOTE: potentially dangerous. globalVertexIdx should never be used for reading data from the vertex buffers. 2019-08-05 15:03:02 +03:00
jpekkila
6dfd03664d Still does not work. I'm starting to think that instead of this one huge revision, we should modify the existing interface step-by-step. 2019-08-02 15:31:24 +03:00
jpekkila
5f2378e91b Now compiles (does not work though) 2019-08-02 15:15:18 +03:00
jpekkila
567ad61465 Multinode MPI implementation should be done later in its own branch. The focus of this branch is to revise the node and device layers. Commented out references to the Grid layer. 2019-08-02 13:54:54 +03:00
JackHsu
239e8b4d3e Can set the density for intitial condition from astaroth.conf. 2019-08-02 17:31:49 +08:00
Miikka Vaisala
3c87fe0b48 Added unit_mass 2019-08-02 13:48:09 +08:00
jpekkila
2b6bf10ae6 Dummy implementation of the Grid interface 2019-08-01 18:37:36 +03:00
jpekkila
328b809efe Added the revised node interface 2019-08-01 14:04:11 +03:00
Miikka Vaisala
99d80f7175 Renaming for bug correction. Use now AC_M_sink_Msun in astaroth.conf instead of AC_M_sink! 2019-08-01 18:06:57 +08:00
Miikka Vaisala
6927ddff5a Correct an obscure bug. 2019-08-01 17:57:21 +08:00
JackHsu
29d6a9b00a Fixed scaling for sink particle, and added softening factor. 2019-08-01 16:33:58 +08:00
jpekkila
92376588ba Merge branch 'master' into cmakelist_rewrite_and_C_API_conformity_07-26 2019-07-31 20:12:22 +03:00
jpekkila
fb0610c1ba Intermediate changes to the revised node interface 2019-07-31 20:04:39 +03:00
jpekkila
0a5d025172 Formatting 2019-07-31 19:08:16 +03:00
jpekkila
9b7f4277fc Fixed errors in device.cu 2019-07-31 19:07:26 +03:00
jpekkila
49026bd26b Revised device interface done 2019-07-31 18:46:41 +03:00
jpekkila
5be775dbff Various intermediate changes 2019-07-31 17:48:48 +03:00
jpekkila
15ad7182db Added sum reduction. NOTE: Scalar sum does not pass the automated test but vector sum does. I couldn't see anything wrong with the code itself and I strongly suspect that the failures are caused by loss of precision due to summing a huge amount of numbers of different magnitudes. However I'm not yet completely sure. Something like the Kahan summation algorithm might be useful if the errors are really caused by fp arithmetic. 2019-07-31 17:07:03 +08:00
jpekkila
f7bd84af46 Added macros for getting int3 and AcReal3 device constants from within kernels (and DSL). 2019-07-31 17:07:02 +08:00
jpekkila
efd9d54fef Stashing WIP changes (interface revision) s.t. I can continue work on a different machine 2019-07-30 14:34:44 +03:00
jpekkila
1ceb6739ae Merge branch 'master' into node_device_interface_revision_07-23 2019-07-30 14:31:33 +03:00
jpekkila
62100b1140 Merge branch 'master' of https://bitbucket.org/jpekkila/astaroth 2019-07-30 14:28:25 +03:00
jpekkila
69deef66fe Added sum reduction. NOTE: Scalar sum does not pass the automated test but vector sum does. I couldn't see anything wrong with the code itself and I strongly suspect that the failures are caused by loss of precision due to summing a huge amount of numbers of different magnitudes. However I'm not yet completely sure. Something like the Kahan summation algorithm might be useful if the errors are really caused by fp arithmetic. 2019-07-30 14:28:18 +03:00
jpekkila
fdc1e7333c Added macros for getting int3 and AcReal3 device constants from within kernels (and DSL). 2019-07-30 09:10:06 +00:00
jpekkila
a3359b0d04 CONFIG_PATH is now supplied by ac_mkbuilddir. While using would be a bit more idiomatic, ASTAROTH_CONF_PATH is probably safer since ac_mkbuilddir.sh does the copying and knows for sure what the correct path is. 2019-07-29 15:55:27 +03:00
JackHsu
d1ca196ccd Added declaration of constants for sink particle. Still in the process of understanding how values are passed, but I've realized how physical equations are defined in stencil_process.sps and in principle I can replicate that for sink particle(which will mostly be gravity). 2019-07-29 13:18:24 +08:00
jpekkila
c9fafe41e5 Tidied the CMakeLists, moved stuff to more logical places and added comments. Also tested that ALTER_CONF=ON still works 2019-07-26 15:12:55 +03:00
jpekkila
5044228967 The text editor I use to edit stuff remotely is a complete piece of &^$%$, does not synchronize the files correctly. This commit fixes the issues introduced in the last commit 2019-07-26 14:22:22 +03:00
jpekkila
b90d261e89 Removed an unnecessary include from the root CMakeLists.txt 2019-07-26 14:18:11 +03:00
jpekkila
818893a0ea Fixed stray comma in CUDA_ARCH_FLAGS 2019-07-26 14:10:17 +03:00
JackHsu
89e6f8673f Made corrections to some formatting issues. 2019-07-26 16:53:39 +08:00
JackHsu
9d625688ac Apparently my edit this time was unsuccessful, tons of error messeages showed up when I ran "make -j" command in working directory. However this commit is mainly for education purposes, it's so that Miikka (main) and others can see what I changed easily and can use as teaching reference. 2019-07-26 16:22:04 +08:00
JackHsu
67d9f19006 Merge branch 'master' into sink_20190723 2019-07-24 11:10:16 +08:00
JackHsu
58a3f48389 Second ever commits! 2019-07-24 11:01:26 +08:00
Tzu-Chun Hsu
cd7f6f7939 "Hello world!", my first commit. 2019-07-24 10:20:13 +08:00
jpekkila
26316a4d15 The standalone library is now compiled in parallel with the core library. Slightly faster. 2019-07-23 21:26:58 +03:00
jpekkila
be44354b33 Astaroth does not require any additional libraries to be included, which is good. Previously required CUDA and C/C++ math libraries. 2019-07-23 21:03:42 +03:00