jpekkila
|
0208d55e4e
|
Moved STENCIL_ORDER and NGHOST out of user-defined parameter as these are actually internal defines used to configure the built-in functions. Additionally, renamed all explicitly declared uniforms from dsx -> AC_dsx in the DSL in preparation for having clear connection between DSL uniforms and the library parameter handles created by the user (AcRealParam etc)
|
2019-08-19 16:40:47 +03:00 |
|
jpekkila
|
787363226b
|
Added functions for loading int, int3, scalar and vector constants to the device layer (acDeviceLoad...Constant)
|
2019-08-19 15:28:16 +03:00 |
|
jpekkila
|
41805dcb68
|
Added some error checking for the case where user supplies an incomplete meshinfo to acDeviceLoadMeshInfo
|
2019-08-19 15:17:51 +03:00 |
|
jpekkila
|
598799d7c3
|
Added a new function to the device interface: acDeviceLoadMeshInfo
|
2019-08-19 15:14:00 +03:00 |
|
jpekkila
|
e89897985e
|
Battled with math.h and cmath. We probably should move from C standard libraries to C++ ones internally (in places which are not visible via the interface)
|
2019-08-19 14:02:30 +03:00 |
|
jpekkila
|
6d4d53342e
|
Removed old comments
|
2019-08-15 11:14:52 +03:00 |
|
jpekkila
|
aa45ce04de
|
Made the linear algebra functions used in forcing.cc static to avoid collisions with the functions defined in math_utils.h
|
2019-08-15 11:09:40 +03:00 |
|
jpekkila
|
36fea70560
|
Moved basic built-in functions for vector operations to math_utils.h from integration.cuh so that they are shared with the CPU and GPU
|
2019-08-15 11:04:22 +03:00 |
|
jpekkila
|
d5b2e5bb42
|
Added placeholders for new built-in variables in the DSL. Also overloads to DCONST_INT etc. Naming still pending and old DCONST_REAL etc calls still work.
|
2019-08-12 14:05:35 +03:00 |
|
jpekkila
|
b8c4d07de2
|
Removed unnecessary comments
|
2019-08-12 13:31:24 +03:00 |
|
jpekkila
|
e027f7e548
|
Removed grid_n in astaroth.cu and replaced it with the new acNodeQueryDeviceConfiguration call
|
2019-08-12 13:25:47 +03:00 |
|
jpekkila
|
bba9ec7c3b
|
Implemented acNodeQueryDeviceConfiguration
|
2019-08-12 11:40:38 +03:00 |
|
jpekkila
|
b5daf22c26
|
Added interface function acSynchronizeMesh
|
2019-08-12 10:25:05 +03:00 |
|
jpekkila
|
8bbb2cd5df
|
Now prints device info before trying to run the dummy kernel
|
2019-08-12 09:46:37 +03:00 |
|
jpekkila
|
b53cabbc44
|
Made the DSL syntax less confusing: Input and output arrays are now ScalarField and VectorFields instead of scalars and vectors. C++ initializers are now also possible, removing the need to declare Fields as int or int3 which was very confusing, like "what, you assing an int value to a real, what the &^%@?"
|
2019-08-08 21:07:36 +03:00 |
|
jpekkila
|
5397495496
|
Added acLoadWithOffset
|
2019-08-08 20:43:01 +03:00 |
|
jpekkila
|
e79e1207f2
|
Added a function for checking whether CUDA-capable devices are available
|
2019-08-08 20:35:02 +03:00 |
|
jpekkila
|
8a9099d75e
|
Added missing functions to fix backwards compatibility with the version interfaced with Pencil Code
|
2019-08-08 19:49:57 +03:00 |
|
jpekkila
|
168cdc9109
|
Fixed a float/long double conversion that some complainers... um compilers complain about
|
2019-08-08 18:12:24 +03:00 |
|
jpekkila
|
322cdce52c
|
Added some new comments + some helpful old comments from a time before the interface revision
|
2019-08-07 20:05:54 +03:00 |
|
jpekkila
|
2b3f9d75af
|
Ensured that acBoundcondStep is called everywhere in the program before acStore
|
2019-08-07 19:20:40 +03:00 |
|
jpekkila
|
d8eb2723b4
|
Added an acBoundconds() call before acStore in autotest.cc
|
2019-08-07 19:10:04 +03:00 |
|
jpekkila
|
1525e0603f
|
Added some preliminary pragma omps and verified that acIntegrate works as it should.
|
2019-08-07 19:08:52 +03:00 |
|
jpekkila
|
c2bd5ae3e6
|
Simplified the optimized multi-GPU integration function
|
2019-08-07 18:17:03 +03:00 |
|
jpekkila
|
10200e4dd5
|
Merge branch 'master' into node_device_interface_revision_07-23
|
2019-08-07 16:25:33 +03:00 |
|
jpekkila
|
e2f5cced1e
|
Renamed dox -> dot
|
2019-08-07 16:08:03 +03:00 |
|
jpekkila
|
b61617ee0f
|
Enabled upwinding by default and updated the model helical forcing with the hotfixed changes from earlier commits. Autotests kinda pass (we get 1 failure but this is likely due to inaccuracies of the trigonometric functions used in helical forcing. The error is very close to the acceptable error bound).
|
2019-08-07 15:53:38 +03:00 |
|
Miikka Vaisala
|
0bb568642f
|
Still one bug
|
2019-08-07 19:10:39 +08:00 |
|
Miikka Vaisala
|
738b2abaf3
|
Supposedly working autotest for upwinding.
|
2019-08-07 18:57:53 +08:00 |
|
Miikka Vaisala
|
065f20819f
|
Merge branch 'master' into bugfix/upwind_autotest_20190807
|
2019-08-07 18:23:03 +08:00 |
|
Miikka Vaisala
|
7cc524b78b
|
Adapting for autotest but i, j, k indexing is confusing.
|
2019-08-07 14:57:51 +08:00 |
|
jpekkila
|
a930864f42
|
Merge branch 'master' into node_device_interface_revision_07-23
|
2019-08-07 07:43:28 +03:00 |
|
jpekkila
|
cf6b75f82a
|
Merged in cmakelist_rewrite_and_C_API_conformity_07-26 (pull request #1)
|
2019-08-07 06:53:17 +03:00 |
|
Miikka Vaisala
|
9af5ba2156
|
Copied elements in the DSL form.
Needs to be adapted at the next stage.
|
2019-08-07 11:11:27 +08:00 |
|
jpekkila
|
6b53eb31ef
|
Errors with forcing now down from 3 to 1 after switching from fast & inaccurate trig functions to more accurate ones
|
2019-08-06 19:29:40 +03:00 |
|
jpekkila
|
d7e26e8f21
|
Added forcing from stencil_process.sps to autotests. 3 Tests fail.
|
2019-08-06 19:15:28 +03:00 |
|
jpekkila
|
0e0ace3970
|
Pure hydro now works with autotests
|
2019-08-06 18:07:29 +03:00 |
|
jpekkila
|
daee456660
|
Merge branch 'cmakelist_rewrite_and_C_API_conformity_07-26' into node_device_interface_revision_07-23
|
2019-08-06 17:57:30 +03:00 |
|
jpekkila
|
abf4815174
|
Merge branch 'master' into cmakelist_rewrite_and_C_API_conformity_07-26
|
2019-08-06 17:53:53 +03:00 |
|
jpekkila
|
5870081645
|
Split kernels.cuh into bounconds.cuh, integration.cuh and reductions.cuh
|
2019-08-06 17:50:41 +03:00 |
|
jpekkila
|
405fa4d6d6
|
Moved old kernels to kernels/deprecated
|
2019-08-06 17:46:52 +03:00 |
|
jpekkila
|
e4d9898f35
|
Added improvements to autotest.cc
|
2019-08-06 17:40:27 +03:00 |
|
jpekkila
|
3726847683
|
Made globalGridN and d_multigpu_offsets built-in parameters. Note the renaming from globalGrid.n to globalGridN.
|
2019-08-06 16:39:15 +03:00 |
|
jpekkila
|
812b5e170e
|
Added some error checking to rendering
|
2019-08-06 16:32:36 +03:00 |
|
jpekkila
|
1dd9975528
|
Formatting
|
2019-08-06 15:44:51 +03:00 |
|
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 |
|
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 |
|